private static Optional<String> getDIPProperty(DIP dip, String... property) { Optional<String> ret = Optional.empty(); if (StringUtils.isNotBlank(dip.getType())) { String value = RodaCoreFactory.getRodaConfigurationAsString(property); if (StringUtils.isNotBlank(value)) { ret = Optional.of(value); } } return ret; } }
public static Optional<String> getDeleteMethod(DIP dip) { return getDIPProperty(dip, RodaConstants.RODA_OBJECT_DIP, dip.getType(), "deleteExternalURL", "method"); }
public static Optional<Pair<String, String>> getDeleteCredentials(DIP dip) { Optional<String> username = getDIPProperty(dip, RodaConstants.RODA_OBJECT_DIP, dip.getType(), "credentials", "username"); Optional<String> password = getDIPProperty(dip, RodaConstants.RODA_OBJECT_DIP, dip.getType(), "credentials", "password"); if (username.isPresent() && password.isPresent()) { return Optional.of(Pair.of(username.get(), password.get())); } else { return Optional.empty(); } }
public static OptionalWithCause<String> getCompleteOpenExternalURL(DIP dip) { OptionalWithCause<String> ret; Optional<String> dipProperty = getDIPProperty(dip, RodaConstants.RODA_OBJECT_DIP, dip.getType(), "openExternalURL"); if (dipProperty.isPresent()) { try { String externalUrl = HandlebarsUtility.executeHandlebars(dipProperty.get(), dip.getProperties()); ret = OptionalWithCause.of(externalUrl); } catch (GenericException e) { ret = OptionalWithCause.empty(e); } } else { ret = OptionalWithCause.of(Optional.empty()); } return ret; }
public static OptionalWithCause<String> getCompleteDeleteExternalURL(DIP dip) { OptionalWithCause<String> ret; Optional<String> dipProperty = getDIPProperty(dip, RodaConstants.RODA_OBJECT_DIP, dip.getType(), "deleteExternalURL"); if (dipProperty.isPresent()) { try { String externalUrl = HandlebarsUtility.executeHandlebars(dipProperty.get(), dip.getProperties()); ret = OptionalWithCause.of(externalUrl); } catch (GenericException e) { ret = OptionalWithCause.empty(e); } } else { ret = OptionalWithCause.of(Optional.empty()); } return ret; }
@Override public List<Object> toCsvValues() { return Arrays.asList(super.getId(), super.getTitle(), super.getDescription(), super.getType(), super.getDateCreated(), super.getLastModified(), super.getIsPermanent(), super.getProperties(), super.getAipIds(), super.getRepresentationIds(), super.getFileIds(), super.getPermissions(), openExternalURL); }
public DIP(DIP other) { this(other.getId(), other.getTitle(), other.getDescription(), other.getType(), other.getDateCreated(), other.getLastModified(), other.getIsPermanent(), other.getProperties(), other.getAipIds(), other.getRepresentationIds(), other.getFileIds(), other.getPermissions()); }
doc.addField(RodaConstants.DIP_TYPE, dip.getType()); doc.addField(RodaConstants.DIP_DATE_CREATED, SolrUtils.formatDate(dip.getDateCreated())); doc.addField(RodaConstants.DIP_LAST_MODIFIED, SolrUtils.formatDate(dip.getLastModified()));