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(); }
mcrID = MCRObjectID.getNextFreeId(mcrID.getBase());
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; }
derID = MCRObjectID.getNextFreeId(mcrObjIDObj.getProjectId() + "_derivate"); MCRDerivate mcrDerivate = new MCRDerivate(); mcrDerivate.setLabel(label);
private Response doCreateDerivate(@BeanParam DerivateMetadata der) { LOGGER.debug(der); String projectID = mcrId.getProjectId(); MCRObjectID derId = MCRObjectID.getNextFreeId(projectID + "_derivate"); MCRDerivate derivate = new MCRDerivate(); derivate.setId(derId);
private static MCRDerivate createDerivate(MCRObjectID documentID, File fileDir) throws MCRPersistenceException, IOException, MCRAccessException { MCRDerivate derivate = new MCRDerivate(); derivate.setId(MCRObjectID.getNextFreeId(documentID.getProjectId(), "derivate")); derivate.setLabel("data object from " + documentID); String schema = CONFIG.getString("MCR.Metadata.Config.derivate", "datamodel-derivate.xml").replaceAll(".xml", ".xsd"); derivate.setSchema(schema); MCRMetaLinkID linkId = new MCRMetaLinkID(); linkId.setSubTag("linkmeta"); linkId.setReference(documentID, null, null); derivate.getDerivate().setLinkMeta(linkId); MCRMetaIFS ifs = new MCRMetaIFS(); ifs.setSubTag("internal"); ifs.setSourcePath(fileDir.getAbsolutePath()); derivate.getDerivate().setInternals(ifs); LOGGER.debug("Creating new derivate with ID {}", derivate.getId()); MCRMetadataManager.create(derivate); setDefaultPermissions(derivate.getId()); return derivate; }
@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; }
public static MCRDerivate createDerivate(String documentID) throws MCRPersistenceException, IOException, MCRAccessException { final String projectId = MCRObjectID.getInstance(documentID).getProjectId(); MCRObjectID oid = MCRObjectID.getNextFreeId(projectId, "derivate"); final String derivateID = oid.toString();