Revision 9354
Added by Jing Tao over 8 years ago
MNodeService.java | ||
---|---|---|
2355 | 2355 |
HazelcastService.getInstance().getSystemMetadataMap().lock(pid); |
2356 | 2356 |
logMetacat.debug("MNodeService.archive - lock the identifier "+pid.getValue()+" in the system metadata map."); |
2357 | 2357 |
SystemMetadata sysmeta = HazelcastService.getInstance().getSystemMetadataMap().get(pid); |
2358 |
super.archiveObject(session, pid, sysmeta); |
|
2358 |
boolean needModifyDate = true; |
|
2359 |
super.archiveObject(session, pid, sysmeta, needModifyDate); |
|
2359 | 2360 |
} finally { |
2360 | 2361 |
HazelcastService.getInstance().getSystemMetadataMap().unlock(pid); |
2361 | 2362 |
logMetacat.debug("MNodeService.archive - unlock the identifier "+pid.getValue()+" in the system metadata map."); |
... | ... | |
2428 | 2429 |
". Please check if you have got the newest version of the system metadata before the modification."); |
2429 | 2430 |
} |
2430 | 2431 |
boolean needUpdateModificationDate = true; |
2431 |
success = updateSystemMetadata(session, pid, sysmeta, needUpdateModificationDate, currentSysmeta); |
|
2432 |
boolean fromCN = false; |
|
2433 |
success = updateSystemMetadata(session, pid, sysmeta, needUpdateModificationDate, currentSysmeta, fromCN); |
|
2432 | 2434 |
} finally { |
2433 | 2435 |
HazelcastService.getInstance().getSystemMetadataMap().unlock(pid); |
2434 | 2436 |
} |
Also available in: Unified diff
Add the case the mn.updateSystemMetadata and cn.updateSystemMetadata will call the archive method internally.