Class NameFormDefinition

java.lang.Object
com.unboundid.ldap.sdk.schema.SchemaElement
com.unboundid.ldap.sdk.schema.NameFormDefinition
All Implemented Interfaces:
Serializable

This class provides a data structure that describes an LDAP name form schema element.
See Also:
  • Constructor Details

    • NameFormDefinition

      Creates a new name form from the provided string representation.
      Parameters:
      s - The string representation of the name form to create, using the syntax described in RFC 4512 section 4.1.7.2. It must not be null.
      Throws:
      LDAPException - If the provided string cannot be decoded as a name form definition.
    • NameFormDefinition

      public NameFormDefinition(@NotNull String oid, @Nullable String name, @Nullable String description, @NotNull String structuralClass, @NotNull String requiredAttribute, @NotNull Map<String,String[]> extensions)
      Creates a new name form with the provided information.
      Parameters:
      oid - The OID for this name form. It must not be null.
      name - The name for this name form. It may be null or empty if the name form should only be referenced by OID.
      description - The description for this name form. It may be null if there is no description.
      structuralClass - The name or OID of the structural object class with which this name form is associated. It must not be null.
      requiredAttribute - he name or OID of the attribute which must be present the RDN for entries with the associated structural class. It must not be null.
      extensions - The set of extensions for this name form. It may be null or empty if there should not be any extensions.
    • NameFormDefinition

      public NameFormDefinition(@NotNull String oid, @Nullable String[] names, @Nullable String description, boolean isObsolete, @NotNull String structuralClass, @NotNull String[] requiredAttributes, @Nullable String[] optionalAttributes, @Nullable Map<String,String[]> extensions)
      Creates a new name form with the provided information.
      Parameters:
      oid - The OID for this name form. It must not be null.
      names - The set of names for this name form. It may be null or empty if the name form should only be referenced by OID.
      description - The description for this name form. It may be null if there is no description.
      isObsolete - Indicates whether this name form is declared obsolete.
      structuralClass - The name or OID of the structural object class with which this name form is associated. It must not be null.
      requiredAttributes - The names/OIDs of the attributes which must be present the RDN for entries with the associated structural class. It must not be null or empty.
      optionalAttributes - The names/OIDs of the attributes which may optionally be present in the RDN for entries with the associated structural class. It may be null or empty if no optional attributes are needed.
      extensions - The set of extensions for this name form. It may be null or empty if there should not be any extensions.
  • Method Details

    • getOID

      Retrieves the OID for this name form.
      Returns:
      The OID for this name form.
    • getNames

      @NotNull public String[] getNames()
      Retrieves the set of names for this name form.
      Returns:
      The set of names for this name form, or an empty array if it does not have any names.
    • getNameOrOID

      Retrieves the primary name that can be used to reference this name form. If one or more names are defined, then the first name will be used. Otherwise, the OID will be returned.
      Returns:
      The primary name that can be used to reference this name form.
    • hasNameOrOID

      public boolean hasNameOrOID(@NotNull String s)
      Indicates whether the provided string matches the OID or any of the names for this name form.
      Parameters:
      s - The string for which to make the determination. It must not be null.
      Returns:
      true if the provided string matches the OID or any of the names for this name form, or false if not.
    • getDescription

      Retrieves the description for this name form, if available.
      Returns:
      The description for this name form, or null if there is no description defined.
    • isObsolete

      public boolean isObsolete()
      Indicates whether this name form is declared obsolete.
      Returns:
      true if this name form is declared obsolete, or false if it is not.
    • getStructuralClass

      Retrieves the name or OID of the structural object class associated with this name form.
      Returns:
      The name or OID of the structural object class associated with this name form.
    • getRequiredAttributes

      Retrieves the names or OIDs of the attributes that are required to be present in the RDN of entries with the associated structural object class.
      Returns:
      The names or OIDs of the attributes that are required to be present in the RDN of entries with the associated structural object class.
    • getOptionalAttributes

      Retrieves the names or OIDs of the attributes that may optionally be present in the RDN of entries with the associated structural object class.
      Returns:
      The names or OIDs of the attributes that may optionally be present in the RDN of entries with the associated structural object class, or an empty array if there are no optional attributes.
    • getExtensions

      Retrieves the set of extensions for this name form. They will be mapped from the extension name (which should start with "X-") to the set of values for that extension.
      Returns:
      The set of extensions for this name form.
    • getSchemaElementType

      Retrieves the type of schema element that this object represents.
      Specified by:
      getSchemaElementType in class SchemaElement
      Returns:
      The type of schema element that this object represents.
    • hashCode

      public int hashCode()
      Retrieves a hash code for this schema element.
      Specified by:
      hashCode in class SchemaElement
      Returns:
      A hash code for this schema element.
    • equals

      public boolean equals(@Nullable Object o)
      Indicates whether the provided object is equal to this schema element.
      Specified by:
      equals in class SchemaElement
      Parameters:
      o - The object for which to make the determination.
      Returns:
      true if the provided object may be considered equal to this schema element, or false if not.
    • toString

      Retrieves a string representation of this name form definition, in the format described in RFC 4512 section 4.1.7.2.
      Specified by:
      toString in class SchemaElement
      Returns:
      A string representation of this name form definition.