private static void copyServiceDateToProperty(MCRBase obj, JsonObject jsonObj, String dateType, String propertyName) { Optional.ofNullable(obj.getService().getDate(dateType)) .map(Date::toInstant) .map(Instant::toString) .ifPresent(d -> jsonObj.addProperty(propertyName, d)); }
public static void addDatesToEntry(Entry entry, MCRObject mcrObject) { MCRObjectService serviceElement = mcrObject.getService(); ArrayList<String> flags = serviceElement.getFlags(MCRObjectService.FLAG_TYPE_CREATEDBY); flags.addAll(serviceElement.getFlags(MCRObjectService.FLAG_TYPE_MODIFIEDBY)); Set<String> clearedFlags = new LinkedHashSet<>(flags); clearedFlags.forEach(entry::addAuthor); Date modifyDate = serviceElement.getDate(MCRObjectService.DATE_TYPE_MODIFYDATE); Date createDate = serviceElement.getDate(MCRObjectService.DATE_TYPE_CREATEDATE); entry.setEdited(modifyDate); entry.setPublished(createDate); }
public static final boolean displayPackerButton(String objectIDString, String packerId) { MCRObjectID objectID = MCRObjectID.getInstance(objectIDString); MCRObject mcrObject = MCRMetadataManager.retrieveMCRObject(objectID); Map<String, String> configuration = MCRPackerJobAction.getConfiguration(packerId); if (configuration.size() == 0) { return false; } try { checkACL(objectID, packerId); } catch (MCRAccessException e) { return false; } Date date = mcrObject.getService().getDate(configuration.get(FLAG_TYPE_CONFIGURATION_KEY)); if (date != null) { return false; } if (!detectPPN(mcrObject, configuration.get(DEFAULT_PPN_DB_CONFIGURATION_KEY)).isPresent()) { return false; } return true; }
final Date objectCreateDate = mcrBase.getService().getDate(MCRObjectService.DATE_TYPE_CREATEDATE); resultingPI = resultingPI.replace(PLACE_HOLDER_OBJECT_DATE, getDateFormat().format(objectCreateDate));
@Override public MCRDigitalObjectIdentifier generate(MCRBase mcrObj, String additional) throws MCRPersistentIdentifierException { Date createdate = mcrObj.getService().getDate("createdate"); if (createdate != null) { MCRISO8601Date mcrdate = new MCRISO8601Date(); mcrdate.setDate(createdate); String createDate = mcrdate.format(DATE_PATTERN, Locale.ENGLISH); final int count = getCountForCreateDate(createDate); Optional<MCRDigitalObjectIdentifier> parse = mcrdoiParser.parse(prefix + "/" + createDate + "-" + count); MCRPersistentIdentifier doi = parse.orElseThrow(() -> new MCRException("Error while parsing default doi!")); return (MCRDigitalObjectIdentifier) doi; } else { throw new MCRPersistenceException("The object " + mcrObj.getId() + " doesn't have a createdate!"); } }