/** * Returns the first active {@link NamingSystem} instances that match the provided type and value * * @param id ID of a NamingSystem bundle * @param type NamingSystem identifier type (oid, uuid, ...) * @param value value * @return {@link NamingSystem} instance that match the provided type and value */ default Optional<NamingSystem> findActiveNamingSystemByTypeAndValue(String id, NamingSystem.NamingSystemIdentifierType type, String value) { return findFirstNamingSystem(id, allOf( byTypeAndValue(type, value), byStatus(Enumerations.PublicationStatus.ACTIVE))); }
static Predicate<NamingSystem> allOf(Predicate<NamingSystem>... predicates) { return combine(Predicate::and, predicates); }
@Override protected Optional<String> mapOidToUri(String oid) { return namingSystemService.findActiveNamingSystemByTypeAndValue(mappingId, OID, oid) .map(NamingSystemService.getValueOfType(URI)); }
/** * Returns the first {@link NamingSystem} instances that match the provided {@link Predicate} * * @param id ID of a NamingSystem bundle * @param predicate predicate selecting a naming system * @return {@link NamingSystem} instance that match the provided {@link Predicate} */ default Optional<NamingSystem> findFirstNamingSystem(String id, Predicate<? super NamingSystem> predicate) { return findNamingSystems(id, predicate).findFirst(); }
@Override protected Optional<String> mapUriToNamespace(String uri) { return namingSystemService.findActiveNamingSystemByTypeAndValue(mappingId, URI, uri) .map(NamingSystemService.getValueOfType(OTHER)); }
/** * Returns the first {@link NamingSystem} instances that match the provided {@link Predicate} * * @param id ID of a NamingSystem bundle * @param predicate predicate selecting a naming system * @return {@link NamingSystem} instance that match the provided {@link Predicate} */ default Optional<NamingSystem> findFirstNamingSystem(String id, Predicate<? super NamingSystem> predicate) { return findNamingSystems(id, predicate).findFirst(); }
@Override protected Optional<String> mapUriToNamespace(String uri) { return namingSystemService.findActiveNamingSystemByTypeAndValue(mappingId, URI, uri) .map(NamingSystemService.getValueOfType(OTHER)); }
/** * Returns the first active {@link NamingSystem} instances that match the provided type and value * * @param id ID of a NamingSystem bundle * @param type NamingSystem identifier type (oid, uuid, ...) * @param value value * @return {@link NamingSystem} instance that match the provided type and value */ default Optional<NamingSystem> findActiveNamingSystemByTypeAndValue(String id, NamingSystem.NamingSystemIdentifierType type, String value) { return findFirstNamingSystem(id, allOf( byTypeAndValue(type, value), byStatus(Enumerations.PublicationStatus.ACTIVE))); }
static Predicate<NamingSystem> anyOf(Predicate<NamingSystem>... predicates) { return combine(Predicate::or, predicates); }
@Override protected Optional<String> mapUriToOid(String uri) { return namingSystemService.findActiveNamingSystemByTypeAndValue(mappingId, URI, uri) .map(NamingSystemService.getValueOfType(OID)); }
static Predicate<NamingSystem> allOf(Predicate<NamingSystem>... predicates) { return combine(Predicate::and, predicates); }
@Override protected Optional<String> mapNamespaceToUri(String namespace) { return namingSystemService.findActiveNamingSystemByTypeAndValue(mappingId, OTHER, namespace) .map(NamingSystemService.getValueOfType(URI)); } }
static Predicate<NamingSystem> anyOf(Predicate<NamingSystem>... predicates) { return combine(Predicate::or, predicates); }
@Override protected Optional<String> mapUriToOid(String uri) { return namingSystemService.findActiveNamingSystemByTypeAndValue(mappingId, URI, uri) .map(NamingSystemService.getValueOfType(OID)); }
@Override protected Optional<String> mapOidToUri(String oid) { return namingSystemService.findActiveNamingSystemByTypeAndValue(mappingId, OID, oid) .map(NamingSystemService.getValueOfType(URI)); }
@Override protected Optional<String> mapNamespaceToUri(String namespace) { return namingSystemService.findActiveNamingSystemByTypeAndValue(mappingId, OTHER, namespace) .map(NamingSystemService.getValueOfType(URI)); } }