Interface IdentifiersDefinitionStore

All Known Subinterfaces:
CompositeObjectDefinition, CompositeObjectDefinitionDelegator, MutableResourceObjectClassDefinition, ResourceObjectClassDefinition, ResourceObjectClassDefinitionDelegator, ResourceObjectDefinition, ResourceObjectDefinitionDelegator, ResourceObjectTypeDefinition, ResourceObjectTypeDefinitionDelegator
All Known Implementing Classes:
AbstractResourceObjectDefinitionImpl, CompositeObjectDefinitionImpl, ResourceObjectClassDefinitionImpl, ResourceObjectTypeDefinitionImpl

public interface IdentifiersDefinitionStore
Provides information about primary and secondary identifiers.
  • Method Details

    • getPrimaryIdentifiers

      @NotNull @NotNull Collection<? extends ResourceAttributeDefinition<?>> getPrimaryIdentifiers()
      Returns the definition of primary identifier attributes of a resource object. May return empty set if there are no identifier attributes. Must not return null. The exception should be never thrown unless there is some bug in the code. The validation of model consistency should be done at the time of schema parsing.
      Returns:
      definition of identifier attributes
    • getPrimaryIdentifierRequired

      @NotNull default @NotNull ResourceAttributeDefinition<?> getPrimaryIdentifierRequired()
    • getPrimaryIdentifiersNames

      @NotNull @NotNull Collection<QName> getPrimaryIdentifiersNames()
      Returns names of primary identifiers.
      See Also:
    • isPrimaryIdentifier

      default boolean isPrimaryIdentifier(QName attrName)
      Returns true if the attribute with a given name is among primary identifiers. Matching is done using namespace-approximate method (testing only local part if no namespace is provided), so beware of incidental matching (e.g. ri:uid vs icfs:uid).
    • getSecondaryIdentifiers

      @NotNull @NotNull Collection<? extends ResourceAttributeDefinition<?>> getSecondaryIdentifiers()
      Returns the definition of secondary identifier attributes of a resource object. May return empty set if there are no secondary identifier attributes. Must not return null. The exception should be never thrown unless there is some bug in the code. The validation of model consistency should be done at the time of schema parsing.
      Returns:
      definition of secondary identifier attributes
    • getSecondaryIdentifiersNames

      @NotNull @NotNull Collection<QName> getSecondaryIdentifiersNames()
      Returns names of secondary identifiers.
      See Also:
    • isSecondaryIdentifier

      default boolean isSecondaryIdentifier(QName attrName)
      Returns true if the attribute with a given name is among secondary identifiers. Matching is done using namespace-approximate method (testing only local part if no namespace is provided), so beware of incidental matching (e.g. ri:uid vs icfs:uid).
    • isIdentifier

      default boolean isIdentifier(QName attrName)
      Returns true if the attribute is either primary or secondary identifier.
    • getAllIdentifiers

      default Collection<? extends ResourceAttributeDefinition<?>> getAllIdentifiers()
      Returns both primary and secondary identifiers.