return false; } else if (!mcrObjectId.equals(other.mcrObjectId)) { return false;
private static void validateDerivateRelation(MCRObjectID mcrId, MCRObjectID derId) { MCRObjectID objectId = MCRMetadataManager.getObjectId(derId, 1, TimeUnit.DAYS); if (objectId != null && !mcrId.equals(objectId)) { objectId = MCRMetadataManager.getObjectId(derId, 0, TimeUnit.SECONDS); } if (mcrId.equals(objectId)) { return; } throw new NotFoundException(objectId == null ? "MCRDerivate " + derId + " not found" : "MCRDerivate " + derId + " not found in MCRObject " + mcrId); }
private boolean matches(MCRWork work, MCRObjectID oid, Set<String> objectIdentifiers) { if (oid.equals(work.getObjectID())) { return true; } Set<String> workIdentifiers = buildIdentifierKeys(work.getIdentifiers()); workIdentifiers.retainAll(objectIdentifiers); return !workIdentifiers.isEmpty(); }
if (!der.getOwnerID().equals(objID)) { throw new MCRRestAPIException(Status.INTERNAL_SERVER_ERROR, new MCRRestAPIError(MCRRestAPIError.CODE_INTERNAL_ERROR, "Derivate object mismatch",
.build(), e); if (!id.equals(updatedObject.getId())) { throw new BadRequestException(Response.status(Response.Status.BAD_REQUEST) .entity("MCRObjectID mismatch")
.build(), e); if (!derid.equals(derivate.getId())) { throw new BadRequestException(Response.status(Response.Status.BAD_REQUEST) .entity("MCRObjectID mismatch")
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; }
LOGGER.info("Setting {} as parent of {}", href, oid); object.getStructure().setParent(relatedID); } else if (!object.getStructure().getParentID().equals(relatedID)) { LOGGER.info("Setting {} as parent of {}", href, oid); object.getStructure().setParent(relatedID);