Class AbstractSchemaParser<T extends SchemaObject>
- java.lang.Object
-
- org.apache.directory.api.ldap.model.schema.parsers.AbstractSchemaParser<T>
-
- Type Parameters:
T- The type of SchemaObject
- Direct Known Subclasses:
AttributeTypeDescriptionSchemaParser,DitContentRuleDescriptionSchemaParser,DitStructureRuleDescriptionSchemaParser,LdapComparatorDescriptionSchemaParser,LdapSyntaxDescriptionSchemaParser,MatchingRuleDescriptionSchemaParser,MatchingRuleUseDescriptionSchemaParser,NameFormDescriptionSchemaParser,NormalizerDescriptionSchemaParser,ObjectClassDescriptionSchemaParser,SyntaxCheckerDescriptionSchemaParser
public abstract class AbstractSchemaParser<T extends SchemaObject> extends Object
Base class of all schema parsers.- Author:
- Apache Directory Project
-
-
Field Summary
Fields Modifier and Type Field Description protected OpenLdapSchemaParserfastParserThe fast schemaObject parserprotected static LoggerLOGThe LoggerFactory used by this class
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description Map<String,OpenLdapObjectIdentifierMacro>getObjectIdentifiers()Get the defined macros.booleanisQuirksMode()Checks if quirks mode is enabled.abstract Tparse(String schemaDescription)Parse a SchemaObject description and returns back an instance of SchemaObject.voidsetQuirksMode(boolean enabled)Sets the quirks mode.protected voidupdateSchemaName(SchemaObject schemaObject)Update the schemaName for the given SchemaObject, accordingly to the X-SCHEMA parameter.
-
-
-
Field Detail
-
LOG
protected static final Logger LOG
The LoggerFactory used by this class
-
fastParser
protected OpenLdapSchemaParser fastParser
The fast schemaObject parser
-
-
Constructor Detail
-
AbstractSchemaParser
protected AbstractSchemaParser(Class<T> schemaObjectType, I18n errorCodeOnNull, I18n errorCodeOnParseExceptionWithPosition, I18n errorCodeOnParseException)
Instantiates a new abstract schema parser.- Parameters:
schemaObjectType- The Schema object typeerrorCodeOnNull- error code used when schema element is nullerrorCodeOnParseExceptionWithPosition- error code used on parse error when position is knownerrorCodeOnParseException- error code used on parse error when position is unknown
-
-
Method Detail
-
setQuirksMode
public void setQuirksMode(boolean enabled)
Sets the quirks mode. If enabled the parser accepts non-numeric OIDs and some special characters in descriptions.- Parameters:
enabled- the new quirks mode
-
isQuirksMode
public boolean isQuirksMode()
Checks if quirks mode is enabled.- Returns:
- true, if is quirks mode is enabled
-
parse
public abstract T parse(String schemaDescription) throws ParseException
Parse a SchemaObject description and returns back an instance of SchemaObject.- Parameters:
schemaDescription- The SchemaObject description- Returns:
- A SchemaObject instance
- Throws:
ParseException- If the parsing failed
-
updateSchemaName
protected void updateSchemaName(SchemaObject schemaObject)
Update the schemaName for the given SchemaObject, accordingly to the X-SCHEMA parameter. If not present, default to 'other'- Parameters:
schemaObject- the schema object where the name should be updated
-
getObjectIdentifiers
public Map<String,OpenLdapObjectIdentifierMacro> getObjectIdentifiers()
Get the defined macros.- Returns:
- The map of defined macros
-
-