String syntax = ADSConstants.syntaxMappings.get( proptype );
String equality = ADSConstants.equalityMappings.get( proptype );
String ordering = ADSConstants.orderingMappings.get( proptype );
String substr = ADSConstants.substringMappings.get( proptype );
schemaElements.add( new LdifEntry( propdn,
"objectclass:metaAttributeType",
"objectclass:metaTop",
"objectclass:top",
"m-oid:" + propoid,
"m-name:" + propname,
"m-description:Property of component type " + componentName,
"m-equality:" + equality,
"m-ordering:" + ordering,
"m-substr:" + substr,
"m-syntax:" + syntax,
"m-length:0",
"m-singleValue:TRUE" ) );
if ( prop.isMandatory() )
{
ocAttribs.add( "m-must:" + propname );
}
else
{
ocAttribs.add( "m-may:" + propname );
}
}
schemaElements.add( new LdifEntry( ocsDn,
"objectclass:organizationalUnit",
"objectClass:top",
"ou:objectClasses" ) );
String ocoid = ComponentOIDGenerator.generateOCOID( componentBaseOID );
String ocDn = "m-oid=" + ocoid + "," + ocsDn;
ocAttribs.add( 0, "m-may:cached" );
ocAttribs.add( 0, "m-must:ins" );
ocAttribs.add( 0, "m-must:active" );
ocAttribs.add( 0, "m-supObjectClass: top" );
ocAttribs.add( 0, "m-description:Object Class for generating instances of:" + componentName );
ocAttribs.add( 0, "m-name:" + componentName );
ocAttribs.add( 0, "m-oid:" + ocoid );
ocAttribs.add( 0, "objectclass: top" );
ocAttribs.add( 0, "objectclass: metaTop" );
ocAttribs.add( 0, "objectclass: metaObjectClass" );
schemaElements.add( new LdifEntry( ocDn, ocAttribs.toArray() ) );
}
catch ( LdapInvalidAttributeValueException e )
{
LOG.info( "ADSSchemaManager#generateSchema: Error(LdapInvalidAttributeValueException) while creating LdifEntry for: "