Revision 7849
Added by ben leinfelder almost 11 years ago
SystemMetadataFactory.java | ||
---|---|---|
96 | 96 |
|
97 | 97 |
public class SystemMetadataFactory { |
98 | 98 |
|
99 |
private static final String resourceMapPrefix = "resourceMap_";
|
|
99 |
public static final String RESOURCE_MAP_PREFIX = "resourceMap_";
|
|
100 | 100 |
private static Logger logMetacat = Logger.getLogger(SystemMetadataFactory.class); |
101 | 101 |
/** |
102 | 102 |
* use this flag if you want to update any existing system metadata values with generated content |
... | ... | |
522 | 522 |
// generate the ORE map for this datapackage |
523 | 523 |
Identifier resourceMapId = new Identifier(); |
524 | 524 |
// use the local id, not the guid in case we have DOIs for them already |
525 |
resourceMapId.setValue(resourceMapPrefix + localId);
|
|
525 |
resourceMapId.setValue(RESOURCE_MAP_PREFIX + localId);
|
|
526 | 526 |
idMap.put(sysMeta.getIdentifier(), dataIds); |
527 | 527 |
ResourceMap rm = ResourceMapFactory.getInstance().createResourceMap(resourceMapId, idMap); |
528 | 528 |
String resourceMapXML = ResourceMapFactory.getInstance().serializeResourceMap(rm); |
... | ... | |
544 | 544 |
// use the localId in case we have a DOI |
545 | 545 |
String obsoletesLocalId = IdentifierManager.getInstance().getLocalId(sysMeta.getObsoletes().getValue()); |
546 | 546 |
Identifier resourceMapObsoletes = new Identifier(); |
547 |
resourceMapObsoletes.setValue(resourceMapPrefix + obsoletesLocalId );
|
|
547 |
resourceMapObsoletes.setValue(RESOURCE_MAP_PREFIX + obsoletesLocalId );
|
|
548 | 548 |
resourceMapSysMeta.setObsoletes(resourceMapObsoletes); |
549 | 549 |
SystemMetadata resourceMapObsoletesSystemMetadata = HazelcastService.getInstance().getSystemMetadataMap().get(resourceMapObsoletes); |
550 | 550 |
if (resourceMapObsoletesSystemMetadata != null) { |
... | ... | |
558 | 558 |
// use the localId in case we have a DOI |
559 | 559 |
String obsoletedByLocalId = IdentifierManager.getInstance().getLocalId(sysMeta.getObsoletedBy().getValue()); |
560 | 560 |
Identifier resourceMapObsoletedBy = new Identifier(); |
561 |
resourceMapObsoletedBy.setValue(resourceMapPrefix + obsoletedByLocalId);
|
|
561 |
resourceMapObsoletedBy.setValue(RESOURCE_MAP_PREFIX + obsoletedByLocalId);
|
|
562 | 562 |
resourceMapSysMeta.setObsoletedBy(resourceMapObsoletedBy); |
563 | 563 |
resourceMapSysMeta.setArchived(true); |
564 | 564 |
SystemMetadata resourceMapObsoletedBySystemMetadata = HazelcastService.getInstance().getSystemMetadataMap().get(resourceMapObsoletedBy); |
Also available in: Unified diff
add method for publishing existing object (usually assumed to be scimeta) with a DOI. https://projects.ecoinformatics.org/ecoinfo/issues/6014