You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by dj...@apache.org on 2007/09/29 10:25:04 UTC

svn commit: r580555 [3/4] - in /directory/apacheds/branches/bigbang: ./ apacheds-xbean-spring/ apacheds-xbean-spring/src/ apacheds-xbean-spring/src/main/ apacheds-xbean-spring/src/main/java/ bootstrap-extract/src/main/java/org/apache/directory/server/s...

Modified: directory/apacheds/branches/bigbang/core/src/main/java/org/apache/directory/server/core/schema/SchemaService.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/bigbang/core/src/main/java/org/apache/directory/server/core/schema/SchemaService.java?rev=580555&r1=580554&r2=580555&view=diff
==============================================================================
--- directory/apacheds/branches/bigbang/core/src/main/java/org/apache/directory/server/core/schema/SchemaService.java (original)
+++ directory/apacheds/branches/bigbang/core/src/main/java/org/apache/directory/server/core/schema/SchemaService.java Sat Sep 29 01:24:59 2007
@@ -42,7 +42,6 @@
 
 import org.apache.directory.server.constants.ApacheSchemaConstants;
 import org.apache.directory.server.core.DirectoryServiceConfiguration;
-import org.apache.directory.server.core.configuration.InterceptorConfiguration;
 import org.apache.directory.server.core.enumeration.SearchResultFilter;
 import org.apache.directory.server.core.enumeration.SearchResultFilteringEnumeration;
 import org.apache.directory.server.core.interceptor.BaseInterceptor;
@@ -109,6 +108,9 @@
  * An {@link org.apache.directory.server.core.interceptor.Interceptor} that manages and enforces schemas.
  *
  * @todo Better interceptor description required.
+
+ * @org.apache.xbean.XBean
+ *
  * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
  * @version $Rev$, $Date$
  */
@@ -149,7 +151,7 @@
      * subschemaSubentry attribute's value from Root DSE
      */
     private LdapDN subschemaSubentryDn;
-    
+
     /** A normalized form for the SubschemaSubentry DN */
     private String subschemaSubentryDnNorm;
 
@@ -159,10 +161,10 @@
     private LdapDN schemaModificationAttributesDN;
 
     private SchemaManager schemaManager;
-    
+
     // the base DN (normalized) of the schema partition
     private LdapDN schemaBaseDN;
-    
+
     /** A map used to store all the objectClasses superiors */
     private Map<String, List<ObjectClass>> superiors;
 
@@ -178,14 +180,11 @@
 
     /**
      * Initialize the Schema Service
-     * 
+     *
      * @param factoryCfg
-     * @param cfg
-     * 
      * @throws NamingException
      */
-    @SuppressWarnings(value={"unchecked"})
-    public void init( DirectoryServiceConfiguration factoryCfg, InterceptorConfiguration cfg ) throws NamingException
+    public void init(DirectoryServiceConfiguration factoryCfg) throws NamingException
     {
         if ( IS_DEBUG )
         {
@@ -199,19 +198,19 @@
         filters.add( binaryAttributeFilter );
         filters.add( topFilter );
         binaries = ( Set<String> ) factoryCfg.getEnvironment().get( BINARY_KEY );
-        
+
         if ( binaries == null )
         {
             binaries = new HashSet<String>();
         }
-            
-            
+
+
 
         schemaBaseDN = new LdapDN( "ou=schema" );
         schemaBaseDN.normalize( registries.getAttributeTypeRegistry().getNormalizerMapping() );
-        
+
         schemaManager = factoryCfg.getSchemaManager();
-        
+
         // stuff for dealing with subentries (garbage for now)
         String subschemaSubentry = ( String ) nexus.getRootDSE( null ).get( SchemaConstants.SUBSCHEMA_SUBENTRY_AT ).get();
         subschemaSubentryDn = new LdapDN( subschemaSubentry );
@@ -220,7 +219,7 @@
 
         schemaModificationAttributesDN = new LdapDN( "cn=schemaModifications,ou=schema" );
         schemaModificationAttributesDN.normalize( registries.getAttributeTypeRegistry().getNormalizerMapping() );
-        
+
         computeSuperiors();
 
         if ( IS_DEBUG )
@@ -229,7 +228,7 @@
         }
     }
 
-    
+
     /**
      * Compute the MUST attributes for an objectClass. This method gather all the
      * MUST from all the objectClass and its superors.
@@ -378,7 +377,7 @@
     }
 
     /**
-     * 
+     *
      */
     public NamingEnumeration<SearchResult> list( NextInterceptor nextInterceptor, ListOperationContext opContext ) throws NamingException
     {
@@ -389,7 +388,7 @@
 
     /**
      * Remove all unknown attributes from the searchControls, to avoid an exception.
-     * 
+     *
      * RFC 2251 states that :
      * " Attributes MUST be named at most once in the list, and are returned "
      * " at most once in an entry. "
@@ -408,16 +407,16 @@
             searchCtls.setReturningAttributes( SchemaConstants.ALL_USER_ATTRIBUTES_ARRAY );
             return;
         }
-        
-        Map<String, String> filteredAttrs = new HashMap<String, String>(); 
+
+        Map<String, String> filteredAttrs = new HashMap<String, String>();
         boolean hasNoAttribute = false;
         boolean hasAttributes = false;
-        
+
         for ( String attribute:attributes )
         {
             // Skip special attributes
-            if ( ( SchemaConstants.ALL_USER_ATTRIBUTES.equals( attribute ) ) || 
-                ( SchemaConstants.ALL_OPERATIONAL_ATTRIBUTES.equals( attribute ) ) || 
+            if ( ( SchemaConstants.ALL_USER_ATTRIBUTES.equals( attribute ) ) ||
+                ( SchemaConstants.ALL_OPERATIONAL_ATTRIBUTES.equals( attribute ) ) ||
                 ( SchemaConstants.NO_ATTRIBUTE.equals( attribute ) ) )
             {
                 if ( !filteredAttrs.containsKey( attribute ) )
@@ -433,17 +432,17 @@
                 {
                     hasAttributes = true;
                 }
-                
+
                 continue;
             }
-            
+
             try
             {
             	// Check that the attribute is declared
             	if ( registries.getOidRegistry().hasOid( attribute ) )
             	{
 	                String oid = registries.getOidRegistry().getOid( attribute );
-	                
+
             		// The attribute must be an AttributeType
 	                if ( registries.getAttributeTypeRegistry().hasAttributeType( oid ) )
 	                {
@@ -454,7 +453,7 @@
 		                }
 	                }
             	}
-                
+
                 hasAttributes = true;
             }
             catch ( NamingException ne )
@@ -462,19 +461,19 @@
                 /* Do nothing, the attribute does not exist */
             }
         }
-        
+
         // Treat a special case : if we have an attribute and "1.1", then discard "1.1"
         if ( hasAttributes && hasNoAttribute )
         {
             filteredAttrs.remove( SchemaConstants.NO_ATTRIBUTE );
         }
-        
+
         // If we still have the same attribute number, then we can just get out the method
         if ( filteredAttrs.size() == attributes.length )
         {
             return;
         }
-        
+
         // Deal with the special case where the attribute list is now empty
         if (  filteredAttrs.size() == 0 )
         {
@@ -483,42 +482,42 @@
         	searchCtls.setReturningAttributes( SchemaConstants.NO_ATTRIBUTE_ARRAY );
         	return;
         }
-        
+
         // Some attributes have been removed. let's modify the searchControl
         String[] newAttributesList = new String[filteredAttrs.size()];
-        
+
         int pos = 0;
-        
+
         for ( String key:filteredAttrs.keySet() )
         {
             newAttributesList[pos++] = filteredAttrs.get( key );
         }
-        
+
         searchCtls.setReturningAttributes( newAttributesList );
     }
 
 
     /**
-     * 
+     *
      */
     public NamingEnumeration<SearchResult> search( NextInterceptor nextInterceptor, SearchOperationContext opContext ) throws NamingException
     {
         LdapDN base = opContext.getDn();
         SearchControls searchCtls = opContext.getSearchControls();
         ExprNode filter = opContext.getFilter();
-        
+
         // We have to eliminate bad attributes from the request, accordingly
         // to RFC 2251, chap. 4.5.1. Basically, all unknown attributes are removed
         // from the list
         filterAttributesToReturn( searchCtls );
-        
+
         String baseNormForm = ( base.isNormalized() ? base.getNormName() : base.toNormName() );
 
         // Deal with the normal case : searching for a normal value (not subSchemaSubEntry
         if ( !subschemaSubentryDnNorm.equals( baseNormForm ) )
         {
             NamingEnumeration<SearchResult> result = nextInterceptor.search( opContext );
-            
+
             Invocation invocation = InvocationStack.getInstance().peek();
 
             if ( searchCtls.getReturningAttributes() != null )
@@ -538,10 +537,10 @@
             if ( filter instanceof SimpleNode )
             {
                 // We should get the value for the filter.
-                // only 'top' and 'subSchema' are valid values 
+                // only 'top' and 'subSchema' are valid values
                 SimpleNode node = ( SimpleNode ) filter;
                 String objectClass = null;
-                
+
                 if ( node.getValue() instanceof String )
                 {
                     objectClass = ( String ) node.getValue();
@@ -550,9 +549,9 @@
                 {
                     objectClass = node.getValue().toString();
                 }
-    
+
                 String objectClassOid = null;
-                
+
                 if ( registries.getObjectClassRegistry().hasObjectClass( objectClass ) )
                 {
                     objectClassOid = registries.getObjectClassRegistry().lookup( objectClass ).getOid();
@@ -561,12 +560,12 @@
                 {
                     return new EmptyEnumeration<SearchResult>();
                 }
-                
+
                 String nodeOid = registries.getOidRegistry().getOid( node.getAttribute() );
-                
+
                 // see if node attribute is objectClass
                 if ( nodeOid.equals( SchemaConstants.OBJECT_CLASS_AT_OID )
-                    && ( objectClassOid.equals( SchemaConstants.TOP_OC_OID ) || 
+                    && ( objectClassOid.equals( SchemaConstants.TOP_OC_OID ) ||
                         objectClassOid.equals( SchemaConstants.SUBSCHEMA_OC_OID ) )
                     && ( node instanceof EqualityNode ) )
                 {
@@ -601,7 +600,7 @@
 
 
     /**
-     * 
+     *
      * @param ids
      * @return
      * @throws NamingException
@@ -636,47 +635,47 @@
                 setOids.add( registries.getOidRegistry().getOid( id ) );
             }
         }
-        
+
         if ( returnAllOperationalAttributes || setOids.contains( SchemaConstants.COMPARATORS_AT_OID ) )
         {
             attr = new AttributeImpl( SchemaConstants.COMPARATORS_AT );
             Iterator<ComparatorDescription> list = registries.getComparatorRegistry().comparatorDescriptionIterator();
-            
+
             while ( list.hasNext() )
             {
                 ComparatorDescription description = list.next();
                 attr.add( SchemaUtils.render( description ).toString() );
             }
-            
+
             attrs.put( attr );
         }
-        
+
         if ( returnAllOperationalAttributes || setOids.contains( SchemaConstants.NORMALIZERS_AT_OID ) )
         {
             attr = new AttributeImpl( SchemaConstants.NORMALIZERS_AT );
             Iterator<NormalizerDescription> list = registries.getNormalizerRegistry().normalizerDescriptionIterator();
-            
+
             while ( list.hasNext() )
             {
                 NormalizerDescription normalizer = list.next();
                 attr.add( SchemaUtils.render( normalizer ).toString() );
             }
-            
+
             attrs.put( attr );
         }
 
         if ( returnAllOperationalAttributes || setOids.contains( SchemaConstants.SYNTAX_CHECKERS_AT_OID ) )
         {
             attr = new AttributeImpl( SchemaConstants.SYNTAX_CHECKERS_AT );
-            Iterator<SyntaxCheckerDescription> list = 
+            Iterator<SyntaxCheckerDescription> list =
                 registries.getSyntaxCheckerRegistry().syntaxCheckerDescriptionIterator();
-            
+
             while ( list.hasNext() )
             {
                 SyntaxCheckerDescription syntaxCheckerDescription = list.next();
                 attr.add( SchemaUtils.render( syntaxCheckerDescription ).toString() );
             }
-            
+
             attrs.put( attr );
         }
 
@@ -684,13 +683,13 @@
         {
             attr = new AttributeImpl( SchemaConstants.OBJECT_CLASSES_AT );
             Iterator<ObjectClass> list = registries.getObjectClassRegistry().iterator();
-            
+
             while ( list.hasNext() )
             {
                 ObjectClass oc = list.next();
                 attr.add( SchemaUtils.render( oc ).toString() );
             }
-            
+
             attrs.put( attr );
         }
 
@@ -698,13 +697,13 @@
         {
             attr = new AttributeImpl( SchemaConstants.ATTRIBUTE_TYPES_AT );
             Iterator<AttributeType> list = registries.getAttributeTypeRegistry().iterator();
-            
+
             while ( list.hasNext() )
             {
                 AttributeType at = list.next();
                 attr.add( SchemaUtils.render( at ).toString() );
             }
-            
+
             attrs.put( attr );
         }
 
@@ -712,13 +711,13 @@
         {
             attr = new AttributeImpl( SchemaConstants.MATCHING_RULES_AT );
             Iterator<MatchingRule> list = registries.getMatchingRuleRegistry().iterator();
-            
+
             while ( list.hasNext() )
             {
                 MatchingRule mr = list.next();
                 attr.add( SchemaUtils.render( mr ).toString() );
             }
-            
+
             attrs.put( attr );
         }
 
@@ -726,13 +725,13 @@
         {
             attr = new AttributeImpl( SchemaConstants.MATCHING_RULE_USE_AT );
             Iterator list = registries.getMatchingRuleUseRegistry().iterator();
-            
+
             while ( list.hasNext() )
             {
                 MatchingRuleUse mru = ( MatchingRuleUse ) list.next();
                 attr.add( SchemaUtils.render( mru ).toString() );
             }
-            
+
             attrs.put( attr );
         }
 
@@ -740,13 +739,13 @@
         {
             attr = new AttributeImpl( SchemaConstants.LDAP_SYNTAXES_AT );
             Iterator<Syntax> list = registries.getSyntaxRegistry().iterator();
-            
+
             while ( list.hasNext() )
             {
                 Syntax syntax = list.next();
                 attr.add( SchemaUtils.render( syntax ).toString() );
             }
-            
+
             attrs.put( attr );
         }
 
@@ -754,13 +753,13 @@
         {
             attr = new AttributeImpl( SchemaConstants.DIT_CONTENT_RULES_AT );
             Iterator<DITContentRule> list = registries.getDitContentRuleRegistry().iterator();
-            
+
             while ( list.hasNext() )
             {
                 DITContentRule dcr = list.next();
                 attr.add( SchemaUtils.render( dcr ).toString() );
             }
-            
+
             attrs.put( attr );
         }
 
@@ -768,13 +767,13 @@
         {
             attr = new AttributeImpl( SchemaConstants.DIT_STRUCTURE_RULES_AT );
             Iterator list = registries.getDitStructureRuleRegistry().iterator();
-            
+
             while ( list.hasNext() )
             {
                 DITStructureRule dsr = ( DITStructureRule ) list.next();
                 attr.add( SchemaUtils.render( dsr ).toString() );
             }
-            
+
             attrs.put( attr );
         }
 
@@ -782,13 +781,13 @@
         {
             attr = new AttributeImpl( SchemaConstants.NAME_FORMS_AT );
             Iterator list = registries.getNameFormRegistry().iterator();
-            
+
             while ( list.hasNext() )
             {
                 NameForm nf = ( NameForm ) list.next();
                 attr.add( SchemaUtils.render( nf ).toString() );
             }
-            
+
             attrs.put( attr );
         }
 
@@ -797,27 +796,27 @@
             attr = new AttributeImpl( SchemaConstants.SUBTREE_SPECIFICATION_AT, "{}" );
             attrs.put( attr );
         }
-        
+
         int minSetSize = 0;
-        
+
         if ( setOids.contains( SchemaConstants.ALL_OPERATIONAL_ATTRIBUTES ) )
         {
             minSetSize++;
         }
-        
+
         if ( setOids.contains( SchemaConstants.ALL_USER_ATTRIBUTES ) )
         {
             minSetSize++;
         }
-        
+
         if ( setOids.contains( SchemaConstants.REF_AT_OID ) )
         {
             minSetSize++;
         }
 
         // add the objectClass attribute
-        if ( setOids.contains( SchemaConstants.ALL_USER_ATTRIBUTES ) || 
-             setOids.contains( SchemaConstants.OBJECT_CLASS_AT_OID ) || 
+        if ( setOids.contains( SchemaConstants.ALL_USER_ATTRIBUTES ) ||
+             setOids.contains( SchemaConstants.OBJECT_CLASS_AT_OID ) ||
              setOids.size() == minSetSize )
         {
             attr = new AttributeImpl( SchemaConstants.OBJECT_CLASS_AT );
@@ -829,22 +828,22 @@
         }
 
         // add the cn attribute as required for the RDN
-        if ( setOids.contains( SchemaConstants.ALL_USER_ATTRIBUTES ) || 
-             setOids.contains( SchemaConstants.CN_AT_OID ) || 
+        if ( setOids.contains( SchemaConstants.ALL_USER_ATTRIBUTES ) ||
+             setOids.contains( SchemaConstants.CN_AT_OID ) ||
              setOids.size() == minSetSize )
         {
             attrs.put( SchemaConstants.CN_AT, "schema" );
         }
 
         // -------------------------------------------------------------------
-        // set operational attributes for the subentry 
+        // set operational attributes for the subentry
         // -------------------------------------------------------------------
 
-        // look up cn=schemaModifications,ou=schema and get values for the 
+        // look up cn=schemaModifications,ou=schema and get values for the
         // modifiers and creators operational information
 
         Attributes modificationAttributes = nexus.lookup( new LookupOperationContext( schemaModificationAttributesDN ) );
-        
+
         if ( returnAllOperationalAttributes || setOids.contains( SchemaConstants.CREATE_TIMESTAMP_AT_OID ) )
         {
             attr = new AttributeImpl( SchemaConstants.CREATE_TIMESTAMP_AT );
@@ -861,13 +860,13 @@
             attr.add( PartitionNexus.ADMIN_PRINCIPAL );
             attrs.put( attr );
         }
-        
+
         if ( returnAllOperationalAttributes || setOids.contains( SchemaConstants.MODIFY_TIMESTAMP_AT_OID ) )
         {
             attr = new AttributeImpl( SchemaConstants.MODIFY_TIMESTAMP_AT );
             AttributeType schemaModifyTimestampAT = registries.
                 getAttributeTypeRegistry().lookup( ApacheSchemaConstants.SCHEMA_MODIFY_TIMESTAMP_AT );
-            Attribute schemaModifyTimestamp = 
+            Attribute schemaModifyTimestamp =
                 AttributeUtils.getAttribute( modificationAttributes, schemaModifyTimestampAT );
             attr.add( schemaModifyTimestamp.get() );
             attrs.put( attr );

Modified: directory/apacheds/branches/bigbang/core/src/main/java/org/apache/directory/server/core/schema/SchemaSubentryModifier.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/bigbang/core/src/main/java/org/apache/directory/server/core/schema/SchemaSubentryModifier.java?rev=580555&r1=580554&r2=580555&view=diff
==============================================================================
--- directory/apacheds/branches/bigbang/core/src/main/java/org/apache/directory/server/core/schema/SchemaSubentryModifier.java (original)
+++ directory/apacheds/branches/bigbang/core/src/main/java/org/apache/directory/server/core/schema/SchemaSubentryModifier.java Sat Sep 29 01:24:59 2007
@@ -28,11 +28,15 @@
 import javax.naming.directory.Attributes;
 
 import org.apache.directory.server.constants.MetaSchemaConstants;
-import org.apache.directory.server.core.configuration.StartupConfiguration;
+import org.apache.directory.server.core.authn.AuthenticationService;
+import org.apache.directory.server.core.authz.AuthorizationService;
+import org.apache.directory.server.core.authz.DefaultAuthorizationService;
+import org.apache.directory.server.core.exception.ExceptionService;
 import org.apache.directory.server.core.interceptor.context.AddOperationContext;
 import org.apache.directory.server.core.interceptor.context.DeleteOperationContext;
 import org.apache.directory.server.core.invocation.InvocationStack;
 import org.apache.directory.server.core.partition.PartitionNexusProxy;
+import org.apache.directory.server.core.referral.ReferralService;
 import org.apache.directory.server.schema.bootstrap.Schema;
 import org.apache.directory.server.utils.AttributesFactory;
 import org.apache.directory.shared.ldap.constants.SchemaConstants;
@@ -67,14 +71,20 @@
     
     static
     {
-        Set<String> bypass = new HashSet<String>();
-        bypass.add( StartupConfiguration.AUTHENTICATION_SERVICE_NAME );
-        bypass.add( StartupConfiguration.REFERRAL_SERVICE_NAME );
-        bypass.add( StartupConfiguration.AUTHORIZATION_SERVICE_NAME );
-        bypass.add( StartupConfiguration.DEFAULT_AUTHORIZATION_SERVICE_NAME );
-        bypass.add( StartupConfiguration.EXCEPTION_SERVICE_NAME );
-        bypass.add( StartupConfiguration.SCHEMA_SERVICE_NAME );
-        BYPASS = Collections.unmodifiableCollection( bypass );
+        Set<String> c = new HashSet<String>();
+//        c.add( NormalizationService.class.getName() );
+        c.add( AuthenticationService.class.getName() );
+        c.add( ReferralService.class.getName() );
+        c.add( AuthorizationService.class.getName() );
+        c.add( DefaultAuthorizationService.class.getName() );
+        c.add( ExceptionService.class.getName() );
+//        c.add( OperationalAttributeService.class.getName() );
+        c.add( SchemaService.class.getName() );
+//        c.add( SubentryService.class.getName() );
+//        c.add( CollectiveAttributeService.class.getName() );
+//        c.add( EventService.class.getName() );
+//        c.add( TriggerService.class.getName() );
+        BYPASS = Collections.unmodifiableCollection( c );
     }
     
     private AttributesFactory factory = new AttributesFactory();

Modified: directory/apacheds/branches/bigbang/core/src/main/java/org/apache/directory/server/core/subtree/SubentryService.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/bigbang/core/src/main/java/org/apache/directory/server/core/subtree/SubentryService.java?rev=580555&r1=580554&r2=580555&view=diff
==============================================================================
--- directory/apacheds/branches/bigbang/core/src/main/java/org/apache/directory/server/core/subtree/SubentryService.java (original)
+++ directory/apacheds/branches/bigbang/core/src/main/java/org/apache/directory/server/core/subtree/SubentryService.java Sat Sep 29 01:24:59 2007
@@ -38,7 +38,6 @@
 
 import org.apache.directory.server.constants.ApacheSchemaConstants;
 import org.apache.directory.server.core.DirectoryServiceConfiguration;
-import org.apache.directory.server.core.configuration.InterceptorConfiguration;
 import org.apache.directory.server.core.enumeration.SearchResultFilter;
 import org.apache.directory.server.core.enumeration.SearchResultFilteringEnumeration;
 import org.apache.directory.server.core.interceptor.BaseInterceptor;
@@ -83,6 +82,8 @@
  * The Subentry interceptor service which is responsible for filtering
  * out subentries on search operations and injecting operational attributes
  *
+ * @org.apache.xbean.XBean
+ *
  * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
  * @version $Rev$
  */
@@ -126,9 +127,9 @@
     private AttributeType objectClassType;
 
 
-    public void init( DirectoryServiceConfiguration factoryCfg, InterceptorConfiguration cfg ) throws NamingException
+    public void init(DirectoryServiceConfiguration factoryCfg) throws NamingException
     {
-        super.init( factoryCfg, cfg );
+        super.init( factoryCfg);
         this.nexus = factoryCfg.getPartitionNexus();
         this.factoryCfg = factoryCfg;
         this.attrRegistry = factoryCfg.getRegistries().getAttributeTypeRegistry();

Modified: directory/apacheds/branches/bigbang/core/src/main/java/org/apache/directory/server/core/trigger/TriggerService.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/bigbang/core/src/main/java/org/apache/directory/server/core/trigger/TriggerService.java?rev=580555&r1=580554&r2=580555&view=diff
==============================================================================
--- directory/apacheds/branches/bigbang/core/src/main/java/org/apache/directory/server/core/trigger/TriggerService.java (original)
+++ directory/apacheds/branches/bigbang/core/src/main/java/org/apache/directory/server/core/trigger/TriggerService.java Sat Sep 29 01:24:59 2007
@@ -34,7 +34,6 @@
 import javax.naming.directory.Attributes;
 
 import org.apache.directory.server.core.DirectoryServiceConfiguration;
-import org.apache.directory.server.core.configuration.InterceptorConfiguration;
 import org.apache.directory.server.core.configuration.StartupConfiguration;
 import org.apache.directory.server.core.interceptor.BaseInterceptor;
 import org.apache.directory.server.core.interceptor.InterceptorChain;
@@ -73,6 +72,8 @@
 /**
  * The Trigger Service based on the Trigger Specification.
  *
+ * @org.apache.xbean.XBean
+ *
  * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
  * @version $Rev:$
  */
@@ -88,7 +89,7 @@
     /** a normalizing Trigger Specification parser */
     private TriggerSpecificationParser triggerParser;
     /** the attribute type registry */
-    private AttributeTypeRegistry attrRegistry;
+//    private AttributeTypeRegistry attrRegistry;
     /** */
     private InterceptorChain chain;
     /** whether or not this interceptor is activated */
@@ -221,11 +222,11 @@
     // Interceptor Overrides
     ////////////////////////////////////////////////////////////////////////////
     
-    public void init( DirectoryServiceConfiguration dirServCfg, InterceptorConfiguration intCfg ) throws NamingException
+    public void init(DirectoryServiceConfiguration dirServCfg) throws NamingException
     {
-        super.init( dirServCfg, intCfg );
+        super.init( dirServCfg);
         triggerSpecCache = new TriggerSpecCache( dirServCfg );
-        attrRegistry = dirServCfg.getRegistries().getAttributeTypeRegistry();
+        final AttributeTypeRegistry attrRegistry = dirServCfg.getRegistries().getAttributeTypeRegistry();
         triggerParser = new TriggerSpecificationParser
             ( new NormalizerMappingResolver()
                 {
@@ -445,7 +446,7 @@
         // we need to construct an entry to represent it
         // at least with minimal requirements which are object class
         // and access control subentry operational attributes.
-        SubentryService subentryService = ( SubentryService ) chain.get( StartupConfiguration.SUBENTRY_SERVICE_NAME );
+        SubentryService subentryService = ( SubentryService ) chain.get( SubentryService.class.getName() );
         Attributes fakeImportedEntry = subentryService.getSubentryAttributes( newDN, importedEntry );
         NamingEnumeration attrList = importedEntry.getAll();
         while ( attrList.hasMore() )
@@ -519,7 +520,7 @@
         // we need to construct an entry to represent it
         // at least with minimal requirements which are object class
         // and access control subentry operational attributes.
-        SubentryService subentryService = ( SubentryService ) chain.get( StartupConfiguration.SUBENTRY_SERVICE_NAME );
+        SubentryService subentryService = ( SubentryService ) chain.get( SubentryService.class.getName() );
         Attributes fakeImportedEntry = subentryService.getSubentryAttributes( newDN, importedEntry );
         NamingEnumeration attrList = importedEntry.getAll();
         

Modified: directory/apacheds/branches/bigbang/core/src/main/java/org/apache/directory/server/core/trigger/TriggerSpecCache.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/bigbang/core/src/main/java/org/apache/directory/server/core/trigger/TriggerSpecCache.java?rev=580555&r1=580554&r2=580555&view=diff
==============================================================================
--- directory/apacheds/branches/bigbang/core/src/main/java/org/apache/directory/server/core/trigger/TriggerSpecCache.java (original)
+++ directory/apacheds/branches/bigbang/core/src/main/java/org/apache/directory/server/core/trigger/TriggerSpecCache.java Sat Sep 29 01:24:59 2007
@@ -72,15 +72,12 @@
     /** the logger for this class */
     private static final Logger log = LoggerFactory.getLogger( TriggerSpecCache.class );
 
-    /** cloned startup environment properties we use for subentry searching */
-    private final Hashtable env;
     /** a map of strings to TriggerSpecification collections */
     private final Map<String, List<TriggerSpecification>> triggerSpecs = new HashMap<String, List<TriggerSpecification>>();
     /** a handle on the partition nexus */
     private final PartitionNexus nexus;
     /** a normalizing TriggerSpecification parser */
     private final TriggerSpecificationParser triggerSpecParser;
-    private AttributeTypeRegistry attrRegistry;
 
 
     /**
@@ -91,7 +88,6 @@
     public TriggerSpecCache( DirectoryServiceConfiguration dirServCfg ) throws NamingException
     {
         this.nexus = dirServCfg.getPartitionNexus();
-        attrRegistry = dirServCfg.getRegistries().getAttributeTypeRegistry();
         final AttributeTypeRegistry registry = dirServCfg.getRegistries().getAttributeTypeRegistry();
         triggerSpecParser = new TriggerSpecificationParser( new NormalizerMappingResolver()
             {
@@ -100,12 +96,12 @@
                     return registry.getNormalizerMapping();
                 }
             });
-        env = ( Hashtable ) dirServCfg.getEnvironment().clone();
-        initialize();
+        Hashtable env = ( Hashtable ) dirServCfg.getEnvironment().clone();
+        initialize(registry, env);
     }
 
 
-    private void initialize() throws NamingException
+    private void initialize(AttributeTypeRegistry registry, Hashtable env) throws NamingException
     {
         // search all naming contexts for trigger subentenries
         // generate TriggerSpecification arrays for each subentry
@@ -136,7 +132,7 @@
                 }
 
                 LdapDN normSubentryName = new LdapDN( subentryDn );
-                normSubentryName.normalize( attrRegistry.getNormalizerMapping() );
+                normSubentryName.normalize( registry.getNormalizerMapping() );
                 subentryAdded( normSubentryName, result.getAttributes() );
             }
             

Modified: directory/apacheds/branches/bigbang/core/src/test/java/org/apache/directory/server/core/interceptor/InterceptorChainTest.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/bigbang/core/src/test/java/org/apache/directory/server/core/interceptor/InterceptorChainTest.java?rev=580555&r1=580554&r2=580555&view=diff
==============================================================================
--- directory/apacheds/branches/bigbang/core/src/test/java/org/apache/directory/server/core/interceptor/InterceptorChainTest.java (original)
+++ directory/apacheds/branches/bigbang/core/src/test/java/org/apache/directory/server/core/interceptor/InterceptorChainTest.java Sat Sep 29 01:24:59 2007
@@ -31,11 +31,9 @@
 import javax.naming.NamingException;
 
 import junit.framework.TestCase;
-
 import org.apache.directory.server.core.DirectoryService;
 import org.apache.directory.server.core.DirectoryServiceConfiguration;
 import org.apache.directory.server.core.DirectoryServiceListener;
-import org.apache.directory.server.core.configuration.MutableInterceptorConfiguration;
 import org.apache.directory.server.core.interceptor.context.LookupOperationContext;
 import org.apache.directory.server.core.invocation.Invocation;
 import org.apache.directory.server.core.invocation.InvocationStack;
@@ -69,19 +67,12 @@
 
         for ( int ii = 0; ii < INTERCEPTOR_COUNT; ii++ )
         {
-            MutableInterceptorConfiguration config = new MutableInterceptorConfiguration();
-            config.setInterceptorClassName( MockInterceptor.class.getName() );
-            config.setName( Integer.toString( ii ) );
-            chain.addLast( config );
-        }
-        
-        List interceptorsInChain = chain.getAll();
-        for ( int ii = 0; ii < INTERCEPTOR_COUNT; ii++ )
-        {
-            MockInterceptor interceptor = ( MockInterceptor ) interceptorsInChain.get( ii );
+            MockInterceptor interceptor = new MockInterceptor();
             interceptor.setTest( this );
             interceptor.setName( Integer.toString( ii ) );
+            chain.addLast(interceptor);
         }
+        
     }
 
 

Modified: directory/apacheds/branches/bigbang/core/src/test/java/org/apache/directory/server/core/interceptor/MockInterceptor.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/bigbang/core/src/test/java/org/apache/directory/server/core/interceptor/MockInterceptor.java?rev=580555&r1=580554&r2=580555&view=diff
==============================================================================
--- directory/apacheds/branches/bigbang/core/src/test/java/org/apache/directory/server/core/interceptor/MockInterceptor.java (original)
+++ directory/apacheds/branches/bigbang/core/src/test/java/org/apache/directory/server/core/interceptor/MockInterceptor.java Sat Sep 29 01:24:59 2007
@@ -28,7 +28,6 @@
 import javax.naming.directory.SearchResult;
 
 import org.apache.directory.server.core.DirectoryServiceConfiguration;
-import org.apache.directory.server.core.configuration.InterceptorConfiguration;
 import org.apache.directory.server.core.interceptor.context.AddContextPartitionOperationContext;
 import org.apache.directory.server.core.interceptor.context.AddOperationContext;
 import org.apache.directory.server.core.interceptor.context.BindOperationContext;
@@ -44,6 +43,7 @@
 import org.apache.directory.server.core.interceptor.context.ModifyOperationContext;
 import org.apache.directory.server.core.interceptor.context.MoveAndRenameOperationContext;
 import org.apache.directory.server.core.interceptor.context.MoveOperationContext;
+import org.apache.directory.server.core.interceptor.context.OperationContext;
 import org.apache.directory.server.core.interceptor.context.RemoveContextPartitionOperationContext;
 import org.apache.directory.server.core.interceptor.context.RenameOperationContext;
 import org.apache.directory.server.core.interceptor.context.SearchOperationContext;
@@ -75,7 +75,7 @@
     }
 
 
-    public void init( DirectoryServiceConfiguration factoryCfg, InterceptorConfiguration cfg )
+    public void init(DirectoryServiceConfiguration factoryCfg)
         throws NamingException
     {
     }
@@ -228,4 +228,4 @@
     {
         return name;
     }
-}
+}
\ No newline at end of file

Modified: directory/apacheds/branches/bigbang/core/src/test/java/org/apache/directory/server/core/schema/PartitionSchemaLoaderTest.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/bigbang/core/src/test/java/org/apache/directory/server/core/schema/PartitionSchemaLoaderTest.java?rev=580555&r1=580554&r2=580555&view=diff
==============================================================================
--- directory/apacheds/branches/bigbang/core/src/test/java/org/apache/directory/server/core/schema/PartitionSchemaLoaderTest.java (original)
+++ directory/apacheds/branches/bigbang/core/src/test/java/org/apache/directory/server/core/schema/PartitionSchemaLoaderTest.java Sat Sep 29 01:24:59 2007
@@ -131,7 +131,7 @@
         // --------------------------------------------------------------------
         
         MutablePartitionConfiguration pc = new MutablePartitionConfiguration();
-        pc.setId( "schema" );
+        pc.setName( "schema" );
         pc.setCacheSize( 1000 );
         pc.setPartitionClassName( JdbmPartition.class.getName() );
         pc.setIndexedAttributes( extractor.getDbFileListing().getIndexedAttributes() );

Modified: directory/apacheds/branches/bigbang/mitosis/src/main/java/org/apache/directory/mitosis/common/ReplicaId.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/bigbang/mitosis/src/main/java/org/apache/directory/mitosis/common/ReplicaId.java?rev=580555&r1=580554&r2=580555&view=diff
==============================================================================
--- directory/apacheds/branches/bigbang/mitosis/src/main/java/org/apache/directory/mitosis/common/ReplicaId.java (original)
+++ directory/apacheds/branches/bigbang/mitosis/src/main/java/org/apache/directory/mitosis/common/ReplicaId.java Sat Sep 29 01:24:59 2007
@@ -33,6 +33,8 @@
  *  contains only this char set : { '-', '_', 'a..z', 'A..Z', '0..9' }
  *  and its length is between 1 and 16. 
  *
+ * @org.apache.xbean.XBean
+ *
  * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
  */
 public class ReplicaId implements Comparable, Serializable
@@ -50,7 +52,7 @@
     private static final Pattern REPLICA_ID_PATTERN = Pattern.compile( "[-_A-Z0-9]{1,16}" );
 
     /** The formated replicaId */
-    private String id;
+    private final String id;
 
 
     /**

Modified: directory/apacheds/branches/bigbang/mitosis/src/main/java/org/apache/directory/mitosis/configuration/ReplicationConfiguration.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/bigbang/mitosis/src/main/java/org/apache/directory/mitosis/configuration/ReplicationConfiguration.java?rev=580555&r1=580554&r2=580555&view=diff
==============================================================================
--- directory/apacheds/branches/bigbang/mitosis/src/main/java/org/apache/directory/mitosis/configuration/ReplicationConfiguration.java (original)
+++ directory/apacheds/branches/bigbang/mitosis/src/main/java/org/apache/directory/mitosis/configuration/ReplicationConfiguration.java Sat Sep 29 01:24:59 2007
@@ -48,6 +48,8 @@
  * A configuration for {@link ReplicationService}.  This configuration can be
  * used by calling {@link ReplicationService#setConfiguration(ReplicationConfiguration)}.
  * 
+ * @org.apache.xbean.XBean
+ *
  * @author The Apache Directory Project Team
  */
 public class ReplicationConfiguration

Modified: directory/apacheds/branches/bigbang/mitosis/src/main/java/org/apache/directory/mitosis/service/ReplicationService.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/bigbang/mitosis/src/main/java/org/apache/directory/mitosis/service/ReplicationService.java?rev=580555&r1=580554&r2=580555&view=diff
==============================================================================
--- directory/apacheds/branches/bigbang/mitosis/src/main/java/org/apache/directory/mitosis/service/ReplicationService.java (original)
+++ directory/apacheds/branches/bigbang/mitosis/src/main/java/org/apache/directory/mitosis/service/ReplicationService.java Sat Sep 29 01:24:59 2007
@@ -6,16 +6,16 @@
  *  to you under the Apache License, Version 2.0 (the
  *  "License"); you may not use this file except in compliance
  *  with the License.  You may obtain a copy of the License at
- *  
+ *
  *    http://www.apache.org/licenses/LICENSE-2.0
- *  
+ *
  *  Unless required by applicable law or agreed to in writing,
  *  software distributed under the License is distributed on an
  *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  *  KIND, either express or implied.  See the License for the
  *  specific language governing permissions and limitations
- *  under the License. 
- *  
+ *  under the License.
+ *
  */
 package org.apache.directory.mitosis.service;
 
@@ -40,7 +40,6 @@
 import org.apache.directory.mitosis.common.Replica;
 import org.apache.directory.mitosis.common.ReplicaId;
 import org.apache.directory.mitosis.configuration.ReplicationConfiguration;
-import org.apache.directory.mitosis.configuration.ReplicationInterceptorConfiguration;
 import org.apache.directory.mitosis.operation.Operation;
 import org.apache.directory.mitosis.operation.OperationFactory;
 import org.apache.directory.mitosis.service.protocol.codec.ReplicationServerProtocolCodecFactory;
@@ -49,7 +48,6 @@
 import org.apache.directory.mitosis.service.protocol.handler.ReplicationServerProtocolHandler;
 import org.apache.directory.mitosis.store.ReplicationStore;
 import org.apache.directory.server.core.DirectoryServiceConfiguration;
-import org.apache.directory.server.core.configuration.InterceptorConfiguration;
 import org.apache.directory.server.core.enumeration.SearchResultFilteringEnumeration;
 import org.apache.directory.server.core.interceptor.BaseInterceptor;
 import org.apache.directory.server.core.interceptor.Interceptor;
@@ -91,7 +89,7 @@
  * Once an operation is invoked, this interceptor transforms it into one or
  * more operations that makes the requested operation more proper and robust
  * for replication.  The transformation process is actually just calling a
- * respective factory method in {@link OperationFactory}.  The methods in 
+ * respective factory method in {@link OperationFactory}.  The methods in
  * {@link OperationFactory} returns a new {@link Operation} instance.
  * <p>
  * The newly created {@link Operation} is used for three purposes.
@@ -135,21 +133,28 @@
  *     operations are overrided to ignore entries with <tt>entryDeleted</tt>
  *     set to <tt>TRUE</tt>.</li>
  * </ul>
- * 
+ *
+ * @org.apache.xbean.XBean
+ *
  * @author The Apache Directory Project (dev@directory.apache.org)
  * @version $Rev$, $Date$
  */
 public class ReplicationService extends BaseInterceptor
 {
     private static final Logger log = LoggerFactory.getLogger( ReplicationService.class );
-    
+
     /** The service name */
     public static final String NAME = "replicationService";
-    
+
 
     private static final String ENTRY_CSN_OID = "1.3.6.1.4.1.18060.0.4.1.2.30";
     private static final String ENTRY_DELETED_OID = "1.3.6.1.4.1.18060.0.4.1.2.31";
 
+    /**
+     * default name is the service name?
+     */
+    private String name = NAME;
+
     private DirectoryServiceConfiguration directoryServiceConfiguration;
     private ReplicationConfiguration configuration;
     private PartitionNexus nexus;
@@ -164,6 +169,17 @@
     {
     }
 
+    /**
+     * this interceptor has configuration so it might be useful to allow several instances in a chain.
+     * @return configured name for this interceptor.
+     */
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
 
     public ReplicationConfiguration getConfiguration()
     {
@@ -171,16 +187,18 @@
     }
 
 
+    public void setConfiguration(ReplicationConfiguration configuration) {
+        this.configuration = configuration;
+    }
+
     public DirectoryServiceConfiguration getFactoryConfiguration()
     {
         return directoryServiceConfiguration;
     }
 
 
-    public void init( DirectoryServiceConfiguration serviceCfg, InterceptorConfiguration cfg ) throws NamingException
+    public void init(DirectoryServiceConfiguration serviceCfg) throws NamingException
     {
-        ReplicationInterceptorConfiguration replicationCfg = ( ReplicationInterceptorConfiguration ) cfg;
-        configuration = replicationCfg.getReplicationConfiguration();
         configuration.validate();
         // and then preserve frequently used ones
         directoryServiceConfiguration = serviceCfg;
@@ -253,8 +271,8 @@
         }
         registry.unbindAll();
     }
-    
-    
+
+
     /**
      * Forces this context to send replication data to the peer replica immediately.
      */
@@ -279,9 +297,10 @@
      * (i.e. {@link Constants#ENTRY_DELETED} is <tt>TRUE</tt>).  This method
      * should be called periodically to make sure the size of the DIT and
      * {@link ReplicationStore} increase limitlessly.
-     * 
+     *
      * @see ReplicationConfiguration#setLogMaxAge(int)
      * @see ReplicationLogCleanJob
+     * @throws javax.naming.NamingException on error
      */
     public void purgeAgedData() throws NamingException
     {
@@ -338,7 +357,7 @@
         ctrl.setSearchScope( SearchControls.SUBTREE_SCOPE );
         ctrl.setReturningAttributes( new String[] { "entryCSN", "entryDeleted" } );
 
-        NamingEnumeration<SearchResult> e = nexus.search( 
+        NamingEnumeration<SearchResult> e = nexus.search(
             new SearchOperationContext( contextName, directoryServiceConfiguration.getEnvironment(), filter, ctrl ) );
 
         List<LdapDN> names = new ArrayList<LdapDN>();
@@ -396,26 +415,24 @@
         Operation op = operationFactory.newModify( modifyContext );
         op.execute( nexus, store, attrRegistry );
     }
-    
-    
+
+
     @Override
-    public void move( NextInterceptor next, MoveOperationContext opContext ) throws NamingException
+    public void move( NextInterceptor next, MoveOperationContext moveOpContext ) throws NamingException
     {
-        MoveOperationContext moveOpContext = opContext;
         Operation op = operationFactory.newMove( moveOpContext.getDn(), moveOpContext.getParent() );
         op.execute( nexus, store, attrRegistry );
     }
-    
-    
+
+
     @Override
-    public void moveAndRename( NextInterceptor next, MoveAndRenameOperationContext opContext ) throws NamingException
+    public void moveAndRename( NextInterceptor next, MoveAndRenameOperationContext moveAndRenameOpContext ) throws NamingException
     {
-        MoveAndRenameOperationContext moveAndRenameOpContext = opContext;
         Operation op = operationFactory.newMove( moveAndRenameOpContext.getDn(), moveAndRenameOpContext.getParent(), moveAndRenameOpContext.getNewRdn(), moveAndRenameOpContext.getDelOldDn() );
         op.execute( nexus, store, attrRegistry );
     }
-    
-    
+
+
     @Override
     public void rename( NextInterceptor next, RenameOperationContext renameOpContext ) throws NamingException
     {
@@ -454,9 +471,9 @@
         if ( lookupContext.getAttrsId() != null )
         {
             boolean found = false;
-            
+
             String[] attrIds = lookupContext.getAttrsIdArray();
-            
+
             // Look for 'entryDeleted' attribute is in attrIds.
             for ( String attrId:attrIds )
             {
@@ -466,7 +483,7 @@
                     break;
                 }
             }
-    
+
             // If not exists, add one.
             if ( !found )
             {
@@ -476,7 +493,7 @@
                 lookupContext.setAttrsId( newAttrIds );
             }
         }
-        
+
         Attributes result = nextInterceptor.lookup( lookupContext );
         ensureNotDeleted( lookupContext.getDn(), result );
         return result;
@@ -489,7 +506,7 @@
         DirContext ctx = ( DirContext ) InvocationStack.getInstance().peek().getCaller();
 
     	NamingEnumeration<SearchResult> result = nextInterceptor.search(
-	            new SearchOperationContext( 
+	            new SearchOperationContext(
 	                opContext.getDn(), ctx.getEnvironment(),
 	                new PresenceNode( SchemaConstants.OBJECT_CLASS_AT_OID ),
 	                new SearchControls() ) );
@@ -503,7 +520,7 @@
     public NamingEnumeration<SearchResult> search( NextInterceptor nextInterceptor, SearchOperationContext opContext ) throws NamingException
     {
         SearchControls searchControls = opContext.getSearchControls();
-        
+
         if ( searchControls.getReturningAttributes() != null )
         {
             String[] oldAttrIds = searchControls.getReturningAttributes();
@@ -512,16 +529,15 @@
             newAttrIds[oldAttrIds.length] = Constants.ENTRY_DELETED.toLowerCase();
             searchControls.setReturningAttributes( newAttrIds );
         }
-        
-    	NamingEnumeration<SearchResult> result = nextInterceptor.search( 
+
+    	NamingEnumeration<SearchResult> result = nextInterceptor.search(
             new SearchOperationContext( opContext.getDn(), opContext.getEnv(), opContext.getFilter(), searchControls ) );
         return new SearchResultFilteringEnumeration( result, searchControls, InvocationStack.getInstance().peek(),
             Constants.DELETED_ENTRIES_FILTER, "Search Replication filter" );
     }
 
 
-    private void ensureNotDeleted( LdapDN name, Attributes entry ) throws NamingException, LdapNameNotFoundException
-    {
+    private void ensureNotDeleted( LdapDN name, Attributes entry ) throws NamingException {
         if ( isDeleted( entry ) )
         {
             LdapNameNotFoundException e = new LdapNameNotFoundException( "Deleted entry: " + name.getUpName() );

Modified: directory/apacheds/branches/bigbang/mitosis/src/test/java/org/apache/directory/mitosis/service/AbstractReplicationServiceTestCase.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/bigbang/mitosis/src/test/java/org/apache/directory/mitosis/service/AbstractReplicationServiceTestCase.java?rev=580555&r1=580554&r2=580555&view=diff
==============================================================================
--- directory/apacheds/branches/bigbang/mitosis/src/test/java/org/apache/directory/mitosis/service/AbstractReplicationServiceTestCase.java (original)
+++ directory/apacheds/branches/bigbang/mitosis/src/test/java/org/apache/directory/mitosis/service/AbstractReplicationServiceTestCase.java Sat Sep 29 01:24:59 2007
@@ -39,10 +39,9 @@
 import org.apache.commons.io.FileUtils;
 import org.apache.directory.mitosis.common.Replica;
 import org.apache.directory.mitosis.common.ReplicaId;
-import org.apache.directory.mitosis.configuration.MutableReplicationInterceptorConfiguration;
 import org.apache.directory.mitosis.configuration.ReplicationConfiguration;
 import org.apache.directory.server.core.DirectoryService;
-import org.apache.directory.server.core.configuration.InterceptorConfiguration;
+import org.apache.directory.server.core.interceptor.Interceptor;
 import org.apache.directory.server.core.configuration.MutableStartupConfiguration;
 import org.apache.directory.server.core.configuration.ShutdownConfiguration;
 import org.apache.directory.server.core.jndi.CoreContextFactory;
@@ -103,7 +102,7 @@
             ldapCfg.setShutdownHookEnabled( false );
             ldapCfg.setWorkingDirectory( workDir );
 
-            List<InterceptorConfiguration> interceptorCfgs = ldapCfg.getInterceptorConfigurations();
+            List<Interceptor> interceptors = ldapCfg.getInterceptors();
 
             ReplicationConfiguration replicationCfg = new ReplicationConfiguration();
             replicationCfg.setReplicaId( replica.getId() );
@@ -118,14 +117,11 @@
                 }
             }
 
-            MutableReplicationInterceptorConfiguration interceptorCfg = 
-                new MutableReplicationInterceptorConfiguration();
-            interceptorCfg.setName( "mitosis" );
-            interceptorCfg.setInterceptorClassName( ReplicationService.class.getName() );
-            interceptorCfg.setReplicationConfiguration( replicationCfg );
-            interceptorCfgs.add( interceptorCfg );
+            ReplicationService replicationService = new ReplicationService();
+            replicationService.setConfiguration(replicationCfg);
+            interceptors.add(replicationService);
 
-            ldapCfg.setInterceptorConfigurations( interceptorCfgs );
+            ldapCfg.setInterceptors( interceptors );
 
             if( workDir.exists() )
             {
@@ -143,7 +139,6 @@
             // Initialize the server instance.
             LdapContext context = new InitialLdapContext( env, null );
             contexts.put( replicaId, context );
-            ReplicationService replicationService = (ReplicationService) DirectoryService.getInstance( replicaId ).getConfiguration().getInterceptorChain().get( "mitosis" );
             replicationServices.put( replicaId, replicationService );
         }
 
@@ -165,7 +160,7 @@
 
         return ( LdapContext ) context.lookup( "" );
     }
-    
+
     @SuppressWarnings("unchecked")
     protected void destroyAllReplicas() throws Exception
     {

Modified: directory/apacheds/branches/bigbang/pom.xml
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/bigbang/pom.xml?rev=580555&r1=580554&r2=580555&view=diff
==============================================================================
--- directory/apacheds/branches/bigbang/pom.xml (original)
+++ directory/apacheds/branches/bigbang/pom.xml Sat Sep 29 01:24:59 2007
@@ -151,7 +151,7 @@
       </dependency>
 
       <dependency>
-        <groupId>org.apache.velocity</groupId> 
+        <groupId>org.apache.velocity</groupId>
         <artifactId>velocity</artifactId>
         <version>1.5</version>
       </dependency>
@@ -347,6 +347,7 @@
     <!--module>kerberos-unit</module-->
     <module>mitosis</module>
     <module>server-replication</module>
+    <module>apacheds-xbean-spring</module>
   </modules>
 
   <developers>
@@ -457,6 +458,36 @@
             </execution>
           </executions>
         </plugin>
+
+
+        <plugin>
+          <groupId>org.apache.xbean</groupId>
+          <artifactId>maven-xbean-plugin</artifactId>
+          <version>3.1</version>
+        </plugin>
+
+        <!--  lets ensure that the XSD gets deployed  -->
+        <plugin>
+          <groupId>org.codehaus.mojo</groupId>
+          <artifactId>build-helper-maven-plugin</artifactId>
+          <version>1.0</version>
+        </plugin>
+
+        <plugin>
+          <inherited>true</inherited>
+          <groupId>org.apache.maven.plugins</groupId>
+          <artifactId>maven-source-plugin</artifactId>
+          <version>2.0.3</version>
+          <executions>
+            <execution>
+              <id>attach-sources</id>
+              <goals>
+                <goal>jar</goal>
+              </goals>
+            </execution>
+          </executions>
+        </plugin>
+
       </plugins>
     </pluginManagement>
 
@@ -468,6 +499,17 @@
           <tagBase>https://svn.apache.org/repos/asf/directory/apacheds/releases</tagBase>
         </configuration>
       </plugin>
+
+      <!--<plugin>-->
+        <!--<groupId>org.apache.maven.plugins</groupId>-->
+        <!--<artifactId>maven-compiler-plugin</artifactId>-->
+      <!--</plugin>-->
+
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-source-plugin</artifactId>
+      </plugin>
+
     </plugins>
   </build>
 

Modified: directory/apacheds/branches/bigbang/protocol-changepw/src/main/java/org/apache/directory/server/changepw/ChangePasswordConfiguration.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/bigbang/protocol-changepw/src/main/java/org/apache/directory/server/changepw/ChangePasswordConfiguration.java?rev=580555&r1=580554&r2=580555&view=diff
==============================================================================
--- directory/apacheds/branches/bigbang/protocol-changepw/src/main/java/org/apache/directory/server/changepw/ChangePasswordConfiguration.java (original)
+++ directory/apacheds/branches/bigbang/protocol-changepw/src/main/java/org/apache/directory/server/changepw/ChangePasswordConfiguration.java Sat Sep 29 01:24:59 2007
@@ -31,7 +31,9 @@
 
 /**
  * Contains the configuration parameters for the Change Password protocol provider.
- * 
+ *
+ * @org.apache.xbean.XBean
+ *
  * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
  * @version $Rev$, $Date$
  */

Modified: directory/apacheds/branches/bigbang/protocol-dns/src/main/java/org/apache/directory/server/dns/DnsConfiguration.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/bigbang/protocol-dns/src/main/java/org/apache/directory/server/dns/DnsConfiguration.java?rev=580555&r1=580554&r2=580555&view=diff
==============================================================================
--- directory/apacheds/branches/bigbang/protocol-dns/src/main/java/org/apache/directory/server/dns/DnsConfiguration.java (original)
+++ directory/apacheds/branches/bigbang/protocol-dns/src/main/java/org/apache/directory/server/dns/DnsConfiguration.java Sat Sep 29 01:24:59 2007
@@ -25,7 +25,9 @@
 
 /**
  * Contains the configuration parameters for the DNS protocol provider.
- * 
+ *
+ * @org.apache.xbean.XBean
+ *
  * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
  * @version $Rev$, $Date$
  */

Modified: directory/apacheds/branches/bigbang/protocol-kerberos/src/main/java/org/apache/directory/server/kerberos/kdc/KdcConfiguration.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/bigbang/protocol-kerberos/src/main/java/org/apache/directory/server/kerberos/kdc/KdcConfiguration.java?rev=580555&r1=580554&r2=580555&view=diff
==============================================================================
--- directory/apacheds/branches/bigbang/protocol-kerberos/src/main/java/org/apache/directory/server/kerberos/kdc/KdcConfiguration.java (original)
+++ directory/apacheds/branches/bigbang/protocol-kerberos/src/main/java/org/apache/directory/server/kerberos/kdc/KdcConfiguration.java Sat Sep 29 01:24:59 2007
@@ -31,7 +31,9 @@
 
 /**
  * Contains the configuration parameters for the Kerberos protocol provider.
- * 
+ *
+ * @org.apache.xbean.XBean
+ *
  * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
  * @version $Rev$, $Date$
  */

Modified: directory/apacheds/branches/bigbang/protocol-ldap/src/main/java/org/apache/directory/server/ldap/ExtendedOperationHandler.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/bigbang/protocol-ldap/src/main/java/org/apache/directory/server/ldap/ExtendedOperationHandler.java?rev=580555&r1=580554&r2=580555&view=diff
==============================================================================
--- directory/apacheds/branches/bigbang/protocol-ldap/src/main/java/org/apache/directory/server/ldap/ExtendedOperationHandler.java (original)
+++ directory/apacheds/branches/bigbang/protocol-ldap/src/main/java/org/apache/directory/server/ldap/ExtendedOperationHandler.java Sat Sep 29 01:24:59 2007
@@ -30,6 +30,8 @@
  * An extension (hook) point that enables an implementor to provide his or her
  * own LDAP 'Extended' operation.  
  *
+ * @org.apache.xbean.XBean
+*
  * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
  * @version $Rev$, $Date$
  *

Modified: directory/apacheds/branches/bigbang/protocol-ldap/src/main/java/org/apache/directory/server/ldap/LdapConfiguration.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/bigbang/protocol-ldap/src/main/java/org/apache/directory/server/ldap/LdapConfiguration.java?rev=580555&r1=580554&r2=580555&view=diff
==============================================================================
--- directory/apacheds/branches/bigbang/protocol-ldap/src/main/java/org/apache/directory/server/ldap/LdapConfiguration.java (original)
+++ directory/apacheds/branches/bigbang/protocol-ldap/src/main/java/org/apache/directory/server/ldap/LdapConfiguration.java Sat Sep 29 01:24:59 2007
@@ -34,7 +34,9 @@
 
 /**
  * Contains the configuration parameters for the LDAP protocol provider.
- * 
+ *
+ * @org.apache.xbean.XBean
+ *
  * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
  * @version $Rev$, $Date$
  */
@@ -273,6 +275,8 @@
     /**
      * Sets the {@link ExtendedOperationHandler}s.
      *
+     * @org.apache.xbean.Property nestedType="org.apache.directory.server.ldap.ExtendedOperationHandler"
+     *
      * @param handlers A collection of {@link ExtendedOperationHandler}s.
      */
     public void setExtendedOperationHandlers( Collection<ExtendedOperationHandler> handlers )
@@ -340,7 +344,7 @@
      * 
      * @return The desired quality-of-protection, used by DIGEST-MD5 and GSSAPI.
      */
-    public List getSaslQop()
+    public List<String> getSaslQop()
     {
         return saslQop;
     }
@@ -349,6 +353,8 @@
     /**
      * Sets the desired quality-of-protection, used by DIGEST-MD5 and GSSAPI.
      * 
+     * @org.apache.xbean.Property nestedType="java.lang.String"
+     *
      * @param saslQop The desired quality-of-protection, used by DIGEST-MD5 and GSSAPI.
      */
     public void setSaslQop( List<String> saslQop )
@@ -371,6 +377,8 @@
     /**
      * Sets the realms serviced by this SASL host, used by DIGEST-MD5 and GSSAPI.
      * 
+     * @org.apache.xbean.Property nestedType="java.lang.String"
+     *
      * @param saslRealms The realms serviced by this SASL host, used by DIGEST-MD5 and GSSAPI.
      */
     public void setSaslRealms( List<String> saslRealms )
@@ -393,6 +401,8 @@
     /**
      * Sets the list of supported authentication mechanisms.
      * 
+     * @org.apache.xbean.Property propertyEditor="ListEditor" nestedType="java.lang.String"
+     *
      * @param supportedMechanisms The list of supported authentication mechanisms.
      */
     public void setSupportedMechanisms( Set<String> supportedMechanisms )

Modified: directory/apacheds/branches/bigbang/protocol-ldap/src/main/java/org/apache/directory/server/ldap/support/extended/GracefulShutdownHandler.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/bigbang/protocol-ldap/src/main/java/org/apache/directory/server/ldap/support/extended/GracefulShutdownHandler.java?rev=580555&r1=580554&r2=580555&view=diff
==============================================================================
--- directory/apacheds/branches/bigbang/protocol-ldap/src/main/java/org/apache/directory/server/ldap/support/extended/GracefulShutdownHandler.java (original)
+++ directory/apacheds/branches/bigbang/protocol-ldap/src/main/java/org/apache/directory/server/ldap/support/extended/GracefulShutdownHandler.java Sat Sep 29 01:24:59 2007
@@ -50,6 +50,10 @@
 import org.slf4j.LoggerFactory;
 
 
+/**
+ * @org.apache.xbean.XBean
+ *
+ */
 public class GracefulShutdownHandler implements ExtendedOperationHandler
 {
     private static final Logger log = LoggerFactory.getLogger( GracefulShutdownHandler.class );

Modified: directory/apacheds/branches/bigbang/protocol-ldap/src/main/java/org/apache/directory/server/ldap/support/extended/LaunchDiagnosticUiHandler.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/bigbang/protocol-ldap/src/main/java/org/apache/directory/server/ldap/support/extended/LaunchDiagnosticUiHandler.java?rev=580555&r1=580554&r2=580555&view=diff
==============================================================================
--- directory/apacheds/branches/bigbang/protocol-ldap/src/main/java/org/apache/directory/server/ldap/support/extended/LaunchDiagnosticUiHandler.java (original)
+++ directory/apacheds/branches/bigbang/protocol-ldap/src/main/java/org/apache/directory/server/ldap/support/extended/LaunchDiagnosticUiHandler.java Sat Sep 29 01:24:59 2007
@@ -50,7 +50,10 @@
 import org.apache.directory.shared.ldap.name.LdapDN;
 import org.apache.mina.common.IoSession;
 
-
+/**
+ * @org.apache.xbean.XBean
+ * 
+ */
 public class LaunchDiagnosticUiHandler implements ExtendedOperationHandler
 {
     public static final Set EXTENSION_OIDS;

Modified: directory/apacheds/branches/bigbang/protocol-ldap/src/main/java/org/apache/directory/server/ldap/support/extended/StoredProcedureExtendedOperationHandler.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/bigbang/protocol-ldap/src/main/java/org/apache/directory/server/ldap/support/extended/StoredProcedureExtendedOperationHandler.java?rev=580555&r1=580554&r2=580555&view=diff
==============================================================================
--- directory/apacheds/branches/bigbang/protocol-ldap/src/main/java/org/apache/directory/server/ldap/support/extended/StoredProcedureExtendedOperationHandler.java (original)
+++ directory/apacheds/branches/bigbang/protocol-ldap/src/main/java/org/apache/directory/server/ldap/support/extended/StoredProcedureExtendedOperationHandler.java Sat Sep 29 01:24:59 2007
@@ -60,6 +60,8 @@
 
 
 /**
+ * @org.apache.xbean.XBean
+ *
  * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
  * @version $Rev$ $Date$
  */

Modified: directory/apacheds/branches/bigbang/protocol-ntp/src/main/java/org/apache/directory/server/ntp/NtpConfiguration.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/bigbang/protocol-ntp/src/main/java/org/apache/directory/server/ntp/NtpConfiguration.java?rev=580555&r1=580554&r2=580555&view=diff
==============================================================================
--- directory/apacheds/branches/bigbang/protocol-ntp/src/main/java/org/apache/directory/server/ntp/NtpConfiguration.java (original)
+++ directory/apacheds/branches/bigbang/protocol-ntp/src/main/java/org/apache/directory/server/ntp/NtpConfiguration.java Sat Sep 29 01:24:59 2007
@@ -25,7 +25,9 @@
 
 /**
  * Contains the configuration parameters for the NTP protocol provider.
- * 
+ *
+ * @org.apache.xbean.XBean
+ *
  * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
  * @version $Rev$, $Date$
  */

Modified: directory/apacheds/branches/bigbang/protocol-shared/src/main/java/org/apache/directory/server/protocol/shared/store/LdifFileLoader.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/bigbang/protocol-shared/src/main/java/org/apache/directory/server/protocol/shared/store/LdifFileLoader.java?rev=580555&r1=580554&r2=580555&view=diff
==============================================================================
--- directory/apacheds/branches/bigbang/protocol-shared/src/main/java/org/apache/directory/server/protocol/shared/store/LdifFileLoader.java (original)
+++ directory/apacheds/branches/bigbang/protocol-shared/src/main/java/org/apache/directory/server/protocol/shared/store/LdifFileLoader.java Sat Sep 29 01:24:59 2007
@@ -35,9 +35,11 @@
 import javax.naming.NamingException;
 import javax.naming.directory.Attributes;
 import javax.naming.directory.DirContext;
+import javax.naming.directory.ModificationItem;
 
 import org.apache.directory.shared.ldap.ldif.Entry;
 import org.apache.directory.shared.ldap.ldif.LdifReader;
+import org.apache.directory.shared.ldap.message.ModificationItemImpl;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -50,25 +52,37 @@
  */
 public class LdifFileLoader
 {
-    /** the log for this class */
+    /**
+     * the log for this class
+     */
     private static final Logger log = LoggerFactory.getLogger( LdifFileLoader.class );
 
-    /** a handle on the top initial context: get new context from this */
+    /**
+     * a handle on the top initial context: get new context from this
+     */
     protected DirContext ctx;
-    /** the LDIF file or directory containing LDIFs to load */
+    /**
+     * the LDIF file or directory containing LDIFs to load
+     */
     protected File ldif;
-    /** the filters to use while loading entries into the server */
+    /**
+     * the filters to use while loading entries into the server
+     */
     protected final List<LdifLoadFilter> filters;
-    /** the class loader to use if we cannot file the file as a path */
+    /**
+     * the class loader to use if we cannot file the file as a path
+     */
     protected final ClassLoader loader;
-    /** the total count of entries loaded */
+    /**
+     * the total count of entries loaded
+     */
     private int count;
 
 
     /**
      * Creates a new instance of LdifFileLoader.
      *
-     * @param ctx the context to load the entries into.
+     * @param ctx  the context to load the entries into.
      * @param ldif the file of LDIF entries to load.
      */
     public LdifFileLoader( DirContext ctx, String ldif )
@@ -84,7 +98,7 @@
      * @param ldif
      * @param filters
      */
-    public LdifFileLoader( DirContext ctx, File ldif, List<LdifLoadFilter> filters )
+    public LdifFileLoader( DirContext ctx, File ldif, List<? extends LdifLoadFilter> filters )
     {
         this( ctx, ldif, filters, null );
     }
@@ -98,7 +112,7 @@
      * @param filters
      * @param loader
      */
-    public LdifFileLoader( DirContext ctx, File ldif, List<LdifLoadFilter> filters, ClassLoader loader )
+    public LdifFileLoader( DirContext ctx, File ldif, List<? extends LdifLoadFilter> filters, ClassLoader loader )
     {
         this.ctx = ctx;
         this.ldif = ldif;
@@ -107,8 +121,7 @@
         if ( filters == null )
         {
             this.filters = Collections.emptyList();
-        }
-        else
+        } else
         {
             this.filters = Collections.unmodifiableList( filters );
         }
@@ -118,7 +131,7 @@
     /**
      * Applies filters making sure failures in one filter do not effect another.
      *
-     * @param dn the DN of the entry
+     * @param dn    the DN of the entry
      * @param entry the attributes of the entry
      * @return true if all filters passed the entry, false otherwise
      */
@@ -155,7 +168,7 @@
 
     /**
      * Opens the LDIF file and loads the entries into the context.
-     * 
+     *
      * @return The count of entries created.
      */
     public int execute()
@@ -174,32 +187,48 @@
 
                 String dn = entry.getDn();
 
-                if ( entry.isEntry() == false )
-                {
-                    // If the entry is a modification, just skip it
-                    continue;
-                }
-
-                Attributes attributes = entry.getAttributes();
-                boolean filterAccepted = applyFilters( dn, attributes );
-
-                if ( !filterAccepted )
+                if ( entry.isEntry() )
                 {
-                    continue;
-                }
+                    Attributes attributes = entry.getAttributes();
+                    boolean filterAccepted = applyFilters( dn, attributes );
 
-                rdn = getRelativeName( ctx, dn );
-
-                try
-                {
-                    ctx.lookup( rdn );
-                    log.info( "Found {}, will not create.", rdn );
-                }
-                catch ( Exception e )
+                    if ( !filterAccepted )
+                    {
+                        continue;
+                    }
+
+                    rdn = getRelativeName( ctx, dn );
+
+                    try
+                    {
+                        ctx.lookup( rdn );
+                        log.info( "Found {}, will not create.", rdn );
+                    }
+                    catch ( Exception e )
+                    {
+                        try
+                        {
+                            ctx.createSubcontext( rdn, attributes );
+                            count++;
+                            log.info( "Created {}.", rdn );
+                        } catch ( NamingException e1 )
+                        {
+                            log.info( "Could not create: " + dn + " with attributes: " + attributes, e1 );
+                        }
+                    }
+                } else
                 {
-                    ctx.createSubcontext( rdn, attributes );
-                    count++;
-                    log.info( "Created {}.", rdn );
+                    //modify
+                    List<ModificationItemImpl> items = entry.getModificationItems();
+                    try
+                    {
+                        ctx.modifyAttributes( dn, items.toArray( new ModificationItem[items.size()] ) );
+                        log.info( "Modified: " + dn + " with modificationItems: " + items );
+                    }
+                    catch ( NamingException e )
+                    {
+                        log.info( "Could not modify: " + dn + " with modificationItems: " + items, e );
+                    }
                 }
             }
         }
@@ -277,8 +306,7 @@
         if ( ldif.exists() )
         {
             in = new FileInputStream( ldif );
-        }
-        else
+        } else
         {
             if ( loader != null && ( in = loader.getResourceAsStream( ldif.getName() ) ) != null )
             {

Modified: directory/apacheds/branches/bigbang/server-jndi/src/main/java/org/apache/directory/server/configuration/MutableServerStartupConfiguration.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/bigbang/server-jndi/src/main/java/org/apache/directory/server/configuration/MutableServerStartupConfiguration.java?rev=580555&r1=580554&r2=580555&view=diff
==============================================================================
--- directory/apacheds/branches/bigbang/server-jndi/src/main/java/org/apache/directory/server/configuration/MutableServerStartupConfiguration.java (original)
+++ directory/apacheds/branches/bigbang/server-jndi/src/main/java/org/apache/directory/server/configuration/MutableServerStartupConfiguration.java Sat Sep 29 01:24:59 2007
@@ -25,9 +25,9 @@
 import java.util.Set;
 
 import org.apache.directory.server.changepw.ChangePasswordConfiguration;
-import org.apache.directory.server.core.configuration.AuthenticatorConfiguration;
-import org.apache.directory.server.core.configuration.InterceptorConfiguration;
 import org.apache.directory.server.core.configuration.PartitionConfiguration;
+import org.apache.directory.server.core.configuration.AuthenticatorConfiguration;
+import org.apache.directory.server.core.interceptor.Interceptor;
 import org.apache.directory.server.dns.DnsConfiguration;
 import org.apache.directory.server.kerberos.kdc.KdcConfiguration;
 import org.apache.directory.server.ldap.LdapConfiguration;
@@ -39,6 +39,8 @@
 /**
  * A mutable version of {@link ServerStartupConfiguration}.
  *
+ * @org.apache.xbean.XBean
+ *
  * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
  * @version $Rev$, $Date$
  */
@@ -83,13 +85,13 @@
     {
         super.setMaxTimeLimit( maxTimeLimit );
     }
-    
-    
+
+
     public void setMaxSizeLimit( int maxSizeLimit )
     {
         super.setMaxSizeLimit( maxSizeLimit );
     }
-    
+
 
     public void setSynchPeriodMillis( long synchPeriodMillis )
     {
@@ -115,28 +117,44 @@
         super.setDenormalizeOpAttrsEnabled( denormalizeOpAttrsEnabled );
     }
 
-
-    public void setAuthenticatorConfigurations( Set<AuthenticatorConfiguration> arg0 )
+    /**
+     * @org.apache.xbean.Property nestedType="org.apache.directory.server.core.configuration.AuthenticatorConfiguration"
+     *
+     * @param authenticatorConfigurations
+     */
+    public void setAuthenticatorConfigurations( Set<AuthenticatorConfiguration> authenticatorConfigurations )
     {
-        super.setAuthenticatorConfigurations( arg0 );
+        super.setAuthenticatorConfigurations( authenticatorConfigurations );
     }
 
-
-    public void setPartitionConfigurations( Set<? extends PartitionConfiguration> arg0 )
+    /**
+     * @org.apache.xbean.Property nestedType="org.apache.directory.server.core.configuration.PartitionConfiguration"
+     *
+     * @param partitionConfigurations
+     */
+    public void setPartitionConfigurations( Set<? extends PartitionConfiguration> partitionConfigurations )
     {
-        super.setPartitionConfigurations( arg0 );
+        super.setPartitionConfigurations( partitionConfigurations );
     }
 
-
-    public void setInterceptorConfigurations( List<InterceptorConfiguration> arg0 )
+    /**
+     * @org.apache.xbean.Property nestedType="org.apache.directory.server.core.configuration.InterceptorConfiguration"
+     *
+     * @param interceptors
+     */
+    public void setInterceptors( List<Interceptor> interceptors )
     {
-        super.setInterceptorConfigurations( arg0 );
+        super.setInterceptors( interceptors );
     }
 
-
-    public void setTestEntries( List<Entry> arg0 )
+    /**
+     * @org.apache.xbean.Property nestedType="org.apache.directory.shared.ldap.ldif.Entry"
+     *
+     * @param entries
+     */
+    public void setTestEntries( List<? extends Entry> entries )
     {
-        super.setTestEntries( arg0 );
+        super.setTestEntries( entries );
     }
 
 
@@ -151,7 +169,11 @@
         super.setLdifDirectory( ldifDirectory );
     }
 
-
+    /**
+     * @org.apache.xbean.Property nestedType="org.apache.directory.server.protocol.shared.store.LdifLoadFilter"
+     *
+     * @param ldifFilters
+     */
     public void setLdifFilters( List<LdifLoadFilter> ldifFilters )
     {
         super.setLdifFilters( ldifFilters );

Modified: directory/apacheds/branches/bigbang/server-jndi/src/main/java/org/apache/directory/server/configuration/ServerStartupConfiguration.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/bigbang/server-jndi/src/main/java/org/apache/directory/server/configuration/ServerStartupConfiguration.java?rev=580555&r1=580554&r2=580555&view=diff
==============================================================================
--- directory/apacheds/branches/bigbang/server-jndi/src/main/java/org/apache/directory/server/configuration/ServerStartupConfiguration.java (original)
+++ directory/apacheds/branches/bigbang/server-jndi/src/main/java/org/apache/directory/server/configuration/ServerStartupConfiguration.java Sat Sep 29 01:24:59 2007
@@ -36,6 +36,8 @@
 /**
  * A {@link StartupConfiguration} that starts up ApacheDS with network layer support.
  *
+ * @org.apache.xbean.XBean
+ *
  * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
  * @version $Rev$, $Date$
  */

Modified: directory/apacheds/branches/bigbang/server-tools/src/main/java/org/apache/directory/server/tools/commands/dumpcmd/DumpCommandExecutor.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/bigbang/server-tools/src/main/java/org/apache/directory/server/tools/commands/dumpcmd/DumpCommandExecutor.java?rev=580555&r1=580554&r2=580555&view=diff
==============================================================================
--- directory/apacheds/branches/bigbang/server-tools/src/main/java/org/apache/directory/server/tools/commands/dumpcmd/DumpCommandExecutor.java (original)
+++ directory/apacheds/branches/bigbang/server-tools/src/main/java/org/apache/directory/server/tools/commands/dumpcmd/DumpCommandExecutor.java Sat Sep 29 01:24:59 2007
@@ -207,7 +207,7 @@
         }
         
         MutablePartitionConfiguration schemaPartitionConfig = new MutablePartitionConfiguration();
-        schemaPartitionConfig.setId( "schema" );
+        schemaPartitionConfig.setName( "schema" );
         schemaPartitionConfig.setCacheSize( 1000 );
         
         DbFileListing listing = null;

Modified: directory/apacheds/branches/bigbang/server-unit/src/test/java/org/apache/directory/server/DIRSERVER951ITest.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/bigbang/server-unit/src/test/java/org/apache/directory/server/DIRSERVER951ITest.java?rev=580555&r1=580554&r2=580555&view=diff
==============================================================================
--- directory/apacheds/branches/bigbang/server-unit/src/test/java/org/apache/directory/server/DIRSERVER951ITest.java (original)
+++ directory/apacheds/branches/bigbang/server-unit/src/test/java/org/apache/directory/server/DIRSERVER951ITest.java Sat Sep 29 01:24:59 2007
@@ -61,7 +61,7 @@
     public void setUp() throws Exception
     {
         MutableBTreePartitionConfiguration systemCfg = new MutableBTreePartitionConfiguration();
-        systemCfg.setId( "system" );
+        systemCfg.setName( "system" );
         
         // @TODO need to make this configurable for the system partition
         systemCfg.setCacheSize( 500 );

Modified: directory/apacheds/branches/bigbang/server-unit/src/test/java/org/apache/directory/server/KeyDerivationServiceITest.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/bigbang/server-unit/src/test/java/org/apache/directory/server/KeyDerivationServiceITest.java?rev=580555&r1=580554&r2=580555&view=diff
==============================================================================
--- directory/apacheds/branches/bigbang/server-unit/src/test/java/org/apache/directory/server/KeyDerivationServiceITest.java (original)
+++ directory/apacheds/branches/bigbang/server-unit/src/test/java/org/apache/directory/server/KeyDerivationServiceITest.java Sat Sep 29 01:24:59 2007
@@ -38,10 +38,9 @@
 import javax.naming.directory.DirContext;
 import javax.naming.directory.InitialDirContext;
 
-import org.apache.directory.server.core.configuration.InterceptorConfiguration;
-import org.apache.directory.server.core.configuration.MutableInterceptorConfiguration;
 import org.apache.directory.server.core.configuration.MutablePartitionConfiguration;
 import org.apache.directory.server.core.configuration.PartitionConfiguration;
+import org.apache.directory.server.core.interceptor.Interceptor;
 import org.apache.directory.server.core.kerberos.KeyDerivationService;
 import org.apache.directory.server.kerberos.shared.crypto.encryption.EncryptionType;
 import org.apache.directory.server.kerberos.shared.io.decoder.EncryptionKeyDecoder;
@@ -84,7 +83,7 @@
 
         // Add partition 'example'
         pcfg = new MutablePartitionConfiguration();
-        pcfg.setId( "example" );
+        pcfg.setName( "example" );
         pcfg.setSuffix( "dc=example,dc=com" );
 
         Set<Object> indexedAttrs = new HashSet<Object>();
@@ -106,13 +105,10 @@
         pcfgs.add( pcfg );
         configuration.setPartitionConfigurations( pcfgs );
 
-        MutableInterceptorConfiguration interceptorCfg = new MutableInterceptorConfiguration();
-        List<InterceptorConfiguration> list = configuration.getInterceptorConfigurations();
+        List<Interceptor> list = configuration.getInterceptors();
 
-        interceptorCfg.setName( KeyDerivationService.NAME );
-        interceptorCfg.setInterceptorClassName( "org.apache.directory.server.core.kerberos.KeyDerivationService" );
-        list.add( interceptorCfg );
-        configuration.setInterceptorConfigurations( list );
+        list.add( new KeyDerivationService() );
+        configuration.setInterceptors( list );
 
         doDelete( configuration.getWorkingDirectory() );
         port = AvailablePortFinder.getNextAvailable( 1024 );

Modified: directory/apacheds/branches/bigbang/server-unit/src/test/java/org/apache/directory/server/MiscTest.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/bigbang/server-unit/src/test/java/org/apache/directory/server/MiscTest.java?rev=580555&r1=580554&r2=580555&view=diff
==============================================================================
--- directory/apacheds/branches/bigbang/server-unit/src/test/java/org/apache/directory/server/MiscTest.java (original)
+++ directory/apacheds/branches/bigbang/server-unit/src/test/java/org/apache/directory/server/MiscTest.java Sat Sep 29 01:24:59 2007
@@ -95,7 +95,7 @@
             entry.put( oc );
             oc.add( "top" );
             oc.add( "domain" );
-            partition.setId( "apache" );
+            partition.setName( "apache" );
             partition.setContextEntry( entry );
             partition.setIndexedAttributes( Collections.singleton( ( Object ) "dc" ) );
             partitions.add( partition );
@@ -116,7 +116,7 @@
             entry.put( oc );
             oc.add( "top" );
             oc.add( "domain" );
-            partition.setId( "apache" );
+            partition.setName( "apache" );
             partition.setContextEntry( entry );
             partition.setIndexedAttributes( Collections.singleton( ( Object ) "dc" ) );
             partitions.add( partition );

Modified: directory/apacheds/branches/bigbang/server-unit/src/test/java/org/apache/directory/server/NegationOperatorITest.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/bigbang/server-unit/src/test/java/org/apache/directory/server/NegationOperatorITest.java?rev=580555&r1=580554&r2=580555&view=diff
==============================================================================
--- directory/apacheds/branches/bigbang/server-unit/src/test/java/org/apache/directory/server/NegationOperatorITest.java (original)
+++ directory/apacheds/branches/bigbang/server-unit/src/test/java/org/apache/directory/server/NegationOperatorITest.java Sat Sep 29 01:24:59 2007
@@ -67,7 +67,7 @@
         if ( this.getName().indexOf( "Indexed" ) != -1 )
         {
             MutableBTreePartitionConfiguration systemCfg = new MutableBTreePartitionConfiguration();
-            systemCfg.setId( "system" );
+            systemCfg.setName( "system" );
             
             // @TODO need to make this configurable for the system partition
             systemCfg.setCacheSize( 500 );

Modified: directory/apacheds/branches/bigbang/server-unit/src/test/java/org/apache/directory/server/NtpITest.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/bigbang/server-unit/src/test/java/org/apache/directory/server/NtpITest.java?rev=580555&r1=580554&r2=580555&view=diff
==============================================================================
--- directory/apacheds/branches/bigbang/server-unit/src/test/java/org/apache/directory/server/NtpITest.java (original)
+++ directory/apacheds/branches/bigbang/server-unit/src/test/java/org/apache/directory/server/NtpITest.java Sat Sep 29 01:24:59 2007
@@ -77,7 +77,7 @@
 
         // Add partition 'example'
         pcfg = new MutablePartitionConfiguration();
-        pcfg.setId( "example" );
+        pcfg.setName( "example" );
         pcfg.setSuffix( "dc=example,dc=com" );
 
         Set<Object> indexedAttrs = new HashSet<Object>();

Modified: directory/apacheds/branches/bigbang/server-unit/src/test/java/org/apache/directory/server/PasswordPolicyServiceITest.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/bigbang/server-unit/src/test/java/org/apache/directory/server/PasswordPolicyServiceITest.java?rev=580555&r1=580554&r2=580555&view=diff
==============================================================================
--- directory/apacheds/branches/bigbang/server-unit/src/test/java/org/apache/directory/server/PasswordPolicyServiceITest.java (original)
+++ directory/apacheds/branches/bigbang/server-unit/src/test/java/org/apache/directory/server/PasswordPolicyServiceITest.java Sat Sep 29 01:24:59 2007
@@ -31,10 +31,9 @@
 import javax.naming.directory.DirContext;
 import javax.naming.directory.InitialDirContext;
 
-import org.apache.directory.server.core.configuration.InterceptorConfiguration;
-import org.apache.directory.server.core.configuration.MutableInterceptorConfiguration;
 import org.apache.directory.server.core.configuration.MutablePartitionConfiguration;
 import org.apache.directory.server.core.configuration.PartitionConfiguration;
+import org.apache.directory.server.core.interceptor.Interceptor;
 import org.apache.directory.server.core.kerberos.PasswordPolicyService;
 import org.apache.directory.server.unit.AbstractServerTest;
 import org.apache.directory.shared.ldap.message.AttributeImpl;
@@ -68,7 +67,7 @@
 
         // Add partition 'example'
         pcfg = new MutablePartitionConfiguration();
-        pcfg.setId( "example" );
+        pcfg.setName( "example" );
         pcfg.setSuffix( "dc=example,dc=com" );
 
         Set<Object> indexedAttrs = new HashSet<Object>();
@@ -90,13 +89,10 @@
         pcfgs.add( pcfg );
         configuration.setPartitionConfigurations( pcfgs );
 
-        MutableInterceptorConfiguration interceptorCfg = new MutableInterceptorConfiguration();
-        List<InterceptorConfiguration> list = configuration.getInterceptorConfigurations();
+        List<Interceptor> list = configuration.getInterceptors();
 
-        interceptorCfg.setName( PasswordPolicyService.NAME );
-        interceptorCfg.setInterceptorClassName( "org.apache.directory.server.core.kerberos.PasswordPolicyService" );
-        list.add( interceptorCfg );
-        configuration.setInterceptorConfigurations( list );
+        list.add( new PasswordPolicyService() );
+        configuration.setInterceptors( list );
 
         super.setUp();
 

Modified: directory/apacheds/branches/bigbang/server-unit/src/test/java/org/apache/directory/server/SaslBindITest.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/bigbang/server-unit/src/test/java/org/apache/directory/server/SaslBindITest.java?rev=580555&r1=580554&r2=580555&view=diff
==============================================================================
--- directory/apacheds/branches/bigbang/server-unit/src/test/java/org/apache/directory/server/SaslBindITest.java (original)
+++ directory/apacheds/branches/bigbang/server-unit/src/test/java/org/apache/directory/server/SaslBindITest.java Sat Sep 29 01:24:59 2007
@@ -67,7 +67,7 @@
 
         // Add partition 'example'
         pcfg = new MutablePartitionConfiguration();
-        pcfg.setId( "example" );
+        pcfg.setName( "example" );
         pcfg.setSuffix( "dc=example,dc=com" );
 
         Set<Object> indexedAttrs = new HashSet<Object>();