Revision 8901
Added by Jing Tao about 10 years ago
src/edu/ucsb/nceas/metacat/dataone/D1NodeService.java | ||
---|---|---|
988 | 988 |
|
989 | 989 |
// throw not found if it was not found |
990 | 990 |
if (systemMetadata == null) { |
991 |
throw new NotFound("1800", "No system metadata could be found for given PID: " + pidStr); |
|
991 |
String localId = null; |
|
992 |
String error = "No system metadata could be found for given PID: " + pidStr; |
|
993 |
try { |
|
994 |
localId = IdentifierManager.getInstance().getLocalId(pid.getValue()); |
|
995 |
|
|
996 |
} catch (Exception e) { |
|
997 |
logMetacat.warn("Couldn't find the local id for the pid "+pidStr); |
|
998 |
} |
|
999 |
|
|
1000 |
if(localId != null && EventLog.getInstance().isDeleted(localId)) { |
|
1001 |
error = error + ". The object with the PID has been deleted from the node."; |
|
1002 |
} |
|
1003 |
throw new NotFound("1800", error); |
|
992 | 1004 |
} |
993 | 1005 |
|
994 | 1006 |
// do we own it? |
Also available in: Unified diff
Added the code to check if a not-found object was deleted in the isAuthorized method.