Class LDAPAttributeSchema
- All Implemented Interfaces:
Serializable
- Direct Known Subclasses:
LDAPMatchingRuleSchema,LDAPMatchingRuleUseSchema
- an OID identifying the attribute type
- a name identifying the attribute type
- a description of the attribute type
- the name of the parent attribute type
- the syntax used by the attribute (for example,
cisorint) - an indication of whether the attribute type is single-valued or multi-valued
When you construct an LDAPAttributeSchema object, you can
specify these types of information as arguments to the constructor or
in the AttributeTypeDescription format specified in RFC 2252.
When an LDAP client searches an LDAP server for the schema, the server
returns schema information as an object with attribute values in this
format.
There a number of additional optional description fields which are not explicitly accessible through LDAPAttributeSchema, but which can be managed with setQualifier, getQualifier, and getQualifierNames:
- EQUALITY
- ORDERING
- SUBSTR
- COLLECTIVE
- NO-USER-MODIFICATION
- USAGE
- OBSOLETE
To get the name, OID, and description of this attribute type
definition, use the getName, getOID, and
getDescription methods inherited from the abstract class
LDAPSchemaElement. Optional and custom qualifiers are
accessed with getQualifier and getQualifierNames
from LDAPSchemaElement.
To add or remove this attribute type definition from the
schema, use the add and remove
methods, which this class inherits from the LDAPSchemaElement
abstract class.
RFC 2252 defines AttributeTypeDescription as follows:
AttributeTypeDescription = "(" whsp
numericoid whsp ; AttributeType identifier
[ "NAME" qdescrs ] ; name used in AttributeType
[ "DESC" qdstring ] ; description
[ "OBSOLETE" whsp ]
[ "SUP" woid ] ; derived from this other
; AttributeType
[ "EQUALITY" woid ; Matching Rule name
[ "ORDERING" woid ; Matching Rule name
[ "SUBSTR" woid ] ; Matching Rule name
[ "SYNTAX" whsp noidlen whsp ] ; see section 4.3
[ "SINGLE-VALUE" whsp ] ; default multi-valued
[ "COLLECTIVE" whsp ] ; default not collective
[ "NO-USER-MODIFICATION" whsp ]; default user modifiable
[ "USAGE" whsp AttributeUsage ]; default userApplications
whsp ")"
AttributeUsage =
"userApplications" /
"directoryOperation" /
"distributedOperation" / ; DSA-shared
"dSAOperation" ; DSA-specific, value depends on server
- Version:
- 1.0
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final Stringstatic final String(package private) static final String[](package private) static final String[]static final String(package private) static String[]static final String(package private) static final longstatic final Stringstatic final Stringprotected LDAPSyntaxSchemaElementstatic final StringFields inherited from class netscape.ldap.LDAPSchemaElement
aliases, attrName, binary, binaryString, ces, cesString, cis, cisString, description, dn, dnString, integer, intString, name, novalsTable, OBSOLETE, oid, properties, rawValue, SUPERIOR, SYNTAX, telephone, telephoneString, unknown -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedConstructs a blank element.Constructs an attribute type definition based on a description in the AttributeTypeDescription format.LDAPAttributeSchema(String name, String oid, String description, int syntax, boolean single) Constructs an attribute type definition, using the specified information.LDAPAttributeSchema(String name, String oid, String description, String syntaxString, boolean single) Constructs an attribute type definition, using the specified information.LDAPAttributeSchema(String name, String oid, String description, String syntaxString, boolean single, String superior, String[] aliases) Constructs an attribute type definition, using the specified information. -
Method Summary
Modifier and TypeMethodDescriptionGets the name of the attribute that this attribute inherits from, if any.intGets the syntax of the schema elementGets the syntax of the attribute type in dotted-decimal format, for example "1.2.3.4.5"(package private) StringgetValue(boolean quotingBug) Prepares a value in RFC 2252 format for submission to a serverbooleanDetermines if the attribute type is single-valued.toString()Gets the definition of the attribute type in a user friendly format.Methods inherited from class netscape.ldap.LDAPSchemaElement
add, add, getAliases, getAliasString, getCustomValues, getDescription, getID, getName, getOID, getOptionalValues, getQualifier, getQualifierNames, getQualifierString, getValue, getValue, getValue, getValuePrefix, isObsolete, modify, modify, parseValue, remove, remove, setQualifier, setQualifier, update, update, update
-
Field Details
-
serialVersionUID
static final long serialVersionUID- See Also:
-
EQUALITY
- See Also:
-
ORDERING
- See Also:
-
SUBSTR
- See Also:
-
SINGLE
- See Also:
-
COLLECTIVE
- See Also:
-
NO_USER_MODIFICATION
- See Also:
-
USAGE
- See Also:
-
NOVALS
-
MATCHING_RULES
-
IGNOREVALS
-
syntaxElement
-
-
Constructor Details
-
LDAPAttributeSchema
protected LDAPAttributeSchema()Constructs a blank element. -
LDAPAttributeSchema
Constructs an attribute type definition, using the specified information.- Parameters:
name- name of the attribute typeoid- object identifier (OID) of the attribute type in dotted-string format (for example, "1.2.3.4")description- description of attribute typesyntax- syntax of this attribute type. The value of this argument can be one of the following:cis(case-insensitive string)ces(case-exact string)binary(binary data)int(integer)telephone(telephone number -- identical to cis, but blanks and dashes are ignored during comparisons)dn(distinguished name)
single-trueif the attribute type is single-valued
-
LDAPAttributeSchema
public LDAPAttributeSchema(String name, String oid, String description, String syntaxString, boolean single) Constructs an attribute type definition, using the specified information.- Parameters:
name- name of the attribute typeoid- object identifier (OID) of the attribute type in dotted-string format (for example, "1.2.3.4")description- description of attribute typesyntaxString- syntax of this attribute type in dotted-string format (for example, "1.2.3.4.5")single-trueif the attribute type is single-valued
-
LDAPAttributeSchema
public LDAPAttributeSchema(String name, String oid, String description, String syntaxString, boolean single, String superior, String[] aliases) Constructs an attribute type definition, using the specified information.- Parameters:
name- name of the attribute typeoid- object identifier (OID) of the attribute type in dotted-string format (for example, "1.2.3.4")description- description of attribute typesyntaxString- syntax of this attribute type in dotted-string format (for example, "1.2.3.4.5")single-trueif the attribute type is single-valuedsuperior- superior attribute as a name or OID;nullif there is no superioraliases- names which are to be considered aliases for this attribute;nullif there are no aliases
-
LDAPAttributeSchema
Constructs an attribute type definition based on a description in the AttributeTypeDescription format. For information on this format, (see RFC 2252, Lightweight Directory Access Protocol (v3): Attribute Syntax Definitions. This is the format that LDAP servers and clients use to exchange schema information. (For example, when you search an LDAP server for its schema, the server returns an entry with the attributes "objectclasses" and "attributetypes". The values of "attributetypes" are attribute type descriptions in this format.)- Parameters:
raw- definition of the attribute type in the AttributeTypeDescription format
-
-
Method Details
-
isSingleValued
public boolean isSingleValued()Determines if the attribute type is single-valued.- Returns:
trueif single-valued,falseif multi-valued.
-
getSuperior
Gets the name of the attribute that this attribute inherits from, if any.- Returns:
- the name of the attribute from which this attribute
inherits, or
nullif it does not have a superior.
-
getSyntax
public int getSyntax()Gets the syntax of the schema element- Returns:
- one of the following values:
cis(case-insensitive string)ces(case-exact string)binary(binary data)int(integer)telephone(telephone number -- identical to cis, but blanks and dashes are ignored during comparisons)dn(distinguished name)unknown(not a known syntax)
-
getSyntaxString
Gets the syntax of the attribute type in dotted-decimal format, for example "1.2.3.4.5"- Returns:
- The attribute syntax in dotted-decimal format.
-
getValue
Prepares a value in RFC 2252 format for submission to a server- Overrides:
getValuein classLDAPSchemaElement- Parameters:
quotingBug-trueif SUP and SYNTAX values are to be quoted. This is required to work with bugs in certain LDAP servers.- Returns:
- a String ready for submission to an LDAP server.
-
toString
Gets the definition of the attribute type in a user friendly format. This is the format that the attribute type definition uses when printing the attribute type or the schema.
-