{
super.init( directoryService );
numberHolder = new Dn( schemaManager, "ou=autoIncDataHolder,ou=system" );
Partition systemPartition = directoryService.getSystemPartition();
LookupOperationContext lookupContext = new LookupOperationContext( directoryService.getAdminSession(), numberHolder, SchemaConstants.ALL_ATTRIBUTES_ARRAY );
Entry entry = systemPartition.lookup( lookupContext );
if ( entry == null )
{
//FIXME make sure this entry addition gets replicated
entry = new DefaultEntry( schemaManager );
entry.setDn( numberHolder );
entry.add( SchemaConstants.OBJECT_CLASS_AT, SchemaConstants.ORGANIZATIONAL_UNIT_OC );
entry.add( SchemaConstants.OBJECT_CLASS_AT, SchemaConstants.EXTENSIBLE_OBJECT_OC );
entry.add( SchemaConstants.OU_AT, numberHolder.getRdn().getValue().getString() );
entry.add( SchemaConstants.ENTRY_UUID_AT, UUID.randomUUID().toString() );
entry.add( SchemaConstants.ENTRY_CSN_AT, directoryService.getCSN().toString() );
AddOperationContext addContext = new AddOperationContext( directoryService.getAdminSession() );
addContext.setDn( numberHolder );
addContext.setEntry( new ClonedServerEntry( entry ) );
LOG.debug( "Adding container entry to hold numeric attribute values" );
systemPartition.add( addContext );
}
else
{
for ( Attribute at : entry )
{