org.apache.directory.shared.ldap.schema.syntaxCheckers
Class AttributeTypeDescriptionSyntaxChecker

java.lang.Object
  extended by org.apache.directory.shared.ldap.schema.AbstractSchemaObject
      extended by org.apache.directory.shared.ldap.schema.LoadableSchemaObject
          extended by org.apache.directory.shared.ldap.schema.SyntaxChecker
              extended by org.apache.directory.shared.ldap.schema.syntaxCheckers.AttributeTypeDescriptionSyntaxChecker
All Implemented Interfaces:
java.io.Serializable, SchemaObject

public class AttributeTypeDescriptionSyntaxChecker
extends SyntaxChecker

A SyntaxChecker which verifies that a value follows the attribute type descripton syntax according to RFC 4512, par 4.2.2:

 AttributeTypeDescription = LPAREN WSP
     numericoid                    ; object identifier
     [ SP "NAME" SP qdescrs ]      ; short names (descriptors)
     [ SP "DESC" SP qdstring ]     ; description
     [ SP "OBSOLETE" ]             ; not active
     [ SP "SUP" SP oid ]           ; supertype
     [ SP "EQUALITY" SP oid ]      ; equality matching rule
     [ SP "ORDERING" SP oid ]      ; ordering matching rule
     [ SP "SUBSTR" SP oid ]        ; substrings matching rule
     [ SP "SYNTAX" SP noidlen ]    ; value syntax
     [ SP "SINGLE-VALUE" ]         ; single-value
     [ SP "COLLECTIVE" ]           ; collective
     [ SP "NO-USER-MODIFICATION" ] ; not user modifiable
     [ SP "USAGE" SP usage ]       ; usage
     extensions WSP RPAREN         ; extensions
 
 usage = "userApplications"     /  ; user
         "directoryOperation"   /  ; directory operational
         "distributedOperation" /  ; DSA-shared operational
         "dSAOperation"            ; DSA-specific operational     
 
 extensions = *( SP xstring SP qdstrings )
 xstring = "X" HYPHEN 1*( ALPHA / HYPHEN / USCORE ) 
 
 Each attribute type description must contain at least one of the SUP
 or SYNTAX fields. 
 
 COLLECTIVE requires usage userApplications.
 
 NO-USER-MODIFICATION requires an operational usage.
 
 
 

Version:
$Rev$
Author:
Apache Directory Project
See Also:
Serialized Form

Field Summary
 
Fields inherited from class org.apache.directory.shared.ldap.schema.AbstractSchemaObject
description, extensions, isEnabled, isObsolete, isReadOnly, locked, names, objectType, oid, schemaName, specification
 
Constructor Summary
AttributeTypeDescriptionSyntaxChecker()
          Creates a new instance of AttributeTypeDescriptionSchemaParser.
 
Method Summary
 boolean isValidSyntax(java.lang.Object value)
          Determines if the attribute's value conforms to the attribute syntax.
 
Methods inherited from class org.apache.directory.shared.ldap.schema.SyntaxChecker
assertSyntax, equals, toString
 
Methods inherited from class org.apache.directory.shared.ldap.schema.LoadableSchemaObject
copy, getBytecode, getFqcn, isValid, registerOid, setBytecode, setFqcn
 
Methods inherited from class org.apache.directory.shared.ldap.schema.AbstractSchemaObject
addExtension, addName, addToRegistries, clear, compareOid, copy, getDescription, getExtensions, getName, getNames, getObjectType, getOid, getSchemaName, getSpecification, hashCode, isDisabled, isEnabled, isObsolete, isReadOnly, lock, removeFromRegistries, setDescription, setEnabled, setExtensions, setNames, setNames, setObsolete, setOid, setReadOnly, setRegistries, setSchemaName, setSpecification
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

AttributeTypeDescriptionSyntaxChecker

public AttributeTypeDescriptionSyntaxChecker()
Creates a new instance of AttributeTypeDescriptionSchemaParser.

Method Detail

isValidSyntax

public boolean isValidSyntax(java.lang.Object value)
Determines if the attribute's value conforms to the attribute syntax.

Specified by:
isValidSyntax in class SyntaxChecker
Parameters:
value - the value of some attribute with the syntax
Returns:
true if the value is in the valid syntax, false otherwise


Copyright © 2003-2011 Apache Software Foundation. All Rights Reserved.