public MCRObjectID setID(String projectID, int id) { MCRObjectID objID = MCRObjectID.getInstance(MCRObjectID.formatID(projectID, MODS_OBJECT_TYPE, id)); object.setId(objID); return objID; }
private MCRObject buildMCRObject(Element publicationXML, String projectID) { MCRObject obj = new MCRObject(new Document(publicationXML)); MCRMODSWrapper wrapper = new MCRMODSWrapper(obj); wrapper.setServiceFlag("status", STATUS_FLAG); MCRObjectID oid = MCRObjectID.getNextFreeId(projectID, "mods"); obj.setId(oid); return obj; }
private static MCRObjectID saveAsMyCoReObject(String projectID, Element modsRoot) throws MCRActiveLinkException, MCRPersistenceException, MCRAccessException { MCRObject mcrObject = MCRMODSWrapper.wrapMODSDocument(modsRoot, projectID); mcrObject.setId(MCRObjectID.getNextFreeId(mcrObject.getId().getBase())); MCRMetadataManager.create(mcrObject); return mcrObject.getId(); }
private MCRObjectID createRelatedObject(Element relatedItem, MCRObjectID childID) throws MCRPersistenceException, MCRAccessException { MCRMODSWrapper wrapper = new MCRMODSWrapper(); MCRObject object = wrapper.getMCRObject(); MCRObjectID oid = MCRObjectID.getNextFreeId(childID.getBase()); if (oid.equals(childID)) { oid = MCRObjectID.getNextFreeId(childID.getBase()); } object.setId(oid); if (isHost(relatedItem)) { object.getStructure().addChild(new MCRMetaLinkID("child", childID, childID.toString(), childID.toString())); } Element mods = cloneRelatedItem(relatedItem); wrapper.setMODS(mods); LOGGER.info("create object {}", oid); MCRMetadataManager.create(object); return oid; }
@Override public MCRObjectID ingestMetadata(Deposit entry) throws SwordError, SwordServerException { final MCRObjectID newObjectId = MCRObjectID .getNextFreeId(MCRConfiguration.instance().getString("MIR.projectid.default") + "_mods"); final Map<String, List<String>> dublinCoreMetadata = entry.getSwordEntry().getDublinCore(); Document dcDocument = buildDCDocument(dublinCoreMetadata); Document convertedDocument = convertDCToMods(dcDocument); final MCRObject mcrObject = MCRMODSWrapper.wrapMODSDocument(convertedDocument.detachRootElement(), newObjectId.getProjectId()); mcrObject.setId(newObjectId); try { MCRMetadataManager.create(mcrObject); } catch (MCRAccessException e) { throw new SwordError(UriRegistry.ERROR_BAD_REQUEST, HttpServletResponse.SC_UNAUTHORIZED, e.getMessage()); } return newObjectId; }