directory-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From pamarce...@apache.org
Subject svn commit: r995726 [1/2] - in /directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration: editor/v152/dialogs/ editor/v153/dialogs/ editor/v154/dialogs/ editor/v155/dialogs/ editor/v156/dial...
Date Fri, 10 Sep 2010 09:54:29 GMT
Author: pamarcelot
Date: Fri Sep 10 09:54:28 2010
New Revision: 995726

URL: http://svn.apache.org/viewvc?rev=995726&view=rev
Log:
Fix for DIRSTUDIO-698 (PasswordPolicy and KeyDerivation interceptors missing in the ApacheDS Configuration Editor) and DIRSTUDIO-699 (Interceptors order is not read/saved correctly in the ApacheDS Configuration Editor).

Modified:
    directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v152/dialogs/InterceptorDialog.java
    directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v153/dialogs/InterceptorDialog.java
    directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v154/dialogs/InterceptorDialog.java
    directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v155/dialogs/InterceptorDialog.java
    directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/InterceptorDialog.java
    directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v157/dialogs/InterceptorDialog.java
    directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v152/InterceptorEnum.java
    directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v152/ServerXmlIOV152.java
    directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v152/messages.properties
    directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v153/InterceptorEnum.java
    directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v153/ServerXmlIOV153.java
    directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v153/messages.properties
    directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v154/InterceptorEnum.java
    directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v154/ServerXmlIOV154.java
    directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v154/messages.properties
    directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v155/InterceptorEnum.java
    directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v155/ServerXmlIOV155.java
    directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v155/messages.properties
    directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v156/InterceptorEnum.java
    directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v156/ServerXmlIOV156.java
    directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v156/messages.properties
    directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v157/InterceptorEnum.java
    directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v157/Messages.java
    directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v157/ServerXmlIOV157.java
    directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v157/messages.properties

Modified: directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v152/dialogs/InterceptorDialog.java
URL: http://svn.apache.org/viewvc/directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v152/dialogs/InterceptorDialog.java?rev=995726&r1=995725&r2=995726&view=diff
==============================================================================
--- directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v152/dialogs/InterceptorDialog.java (original)
+++ directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v152/dialogs/InterceptorDialog.java Fri Sep 10 09:54:28 2010
@@ -210,6 +210,14 @@ public class InterceptorDialog extends D
         {
             availableInterceptors.add( InterceptorEnum.OPERATIONAL_ATTRIBUTE );
         }
+        if ( !initialInterceptors.contains( InterceptorEnum.PASSWORD_POLICY ) )
+        {
+            availableInterceptors.add( InterceptorEnum.PASSWORD_POLICY );
+        }
+        if ( !initialInterceptors.contains( InterceptorEnum.KEY_DERIVATION ) )
+        {
+            availableInterceptors.add( InterceptorEnum.KEY_DERIVATION );
+        }
         if ( !initialInterceptors.contains( InterceptorEnum.SCHEMA ) )
         {
             availableInterceptors.add( InterceptorEnum.SCHEMA );

Modified: directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v153/dialogs/InterceptorDialog.java
URL: http://svn.apache.org/viewvc/directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v153/dialogs/InterceptorDialog.java?rev=995726&r1=995725&r2=995726&view=diff
==============================================================================
--- directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v153/dialogs/InterceptorDialog.java (original)
+++ directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v153/dialogs/InterceptorDialog.java Fri Sep 10 09:54:28 2010
@@ -210,6 +210,14 @@ public class InterceptorDialog extends D
         {
             availableInterceptors.add( InterceptorEnum.OPERATIONAL_ATTRIBUTE );
         }
+        if ( !initialInterceptors.contains( InterceptorEnum.PASSWORD_POLICY ) )
+        {
+            availableInterceptors.add( InterceptorEnum.PASSWORD_POLICY );
+        }
+        if ( !initialInterceptors.contains( InterceptorEnum.KEY_DERIVATION ) )
+        {
+            availableInterceptors.add( InterceptorEnum.KEY_DERIVATION );
+        }
         if ( !initialInterceptors.contains( InterceptorEnum.SCHEMA ) )
         {
             availableInterceptors.add( InterceptorEnum.SCHEMA );

Modified: directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v154/dialogs/InterceptorDialog.java
URL: http://svn.apache.org/viewvc/directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v154/dialogs/InterceptorDialog.java?rev=995726&r1=995725&r2=995726&view=diff
==============================================================================
--- directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v154/dialogs/InterceptorDialog.java (original)
+++ directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v154/dialogs/InterceptorDialog.java Fri Sep 10 09:54:28 2010
@@ -206,6 +206,14 @@ public class InterceptorDialog extends D
         {
             availableInterceptors.add( InterceptorEnum.OPERATIONAL_ATTRIBUTE );
         }
+        if ( !initialInterceptors.contains( InterceptorEnum.PASSWORD_POLICY ) )
+        {
+            availableInterceptors.add( InterceptorEnum.PASSWORD_POLICY );
+        }
+        if ( !initialInterceptors.contains( InterceptorEnum.KEY_DERIVATION ) )
+        {
+            availableInterceptors.add( InterceptorEnum.KEY_DERIVATION );
+        }
         if ( !initialInterceptors.contains( InterceptorEnum.SCHEMA ) )
         {
             availableInterceptors.add( InterceptorEnum.SCHEMA );

Modified: directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v155/dialogs/InterceptorDialog.java
URL: http://svn.apache.org/viewvc/directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v155/dialogs/InterceptorDialog.java?rev=995726&r1=995725&r2=995726&view=diff
==============================================================================
--- directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v155/dialogs/InterceptorDialog.java (original)
+++ directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v155/dialogs/InterceptorDialog.java Fri Sep 10 09:54:28 2010
@@ -206,6 +206,14 @@ public class InterceptorDialog extends D
         {
             availableInterceptors.add( InterceptorEnum.OPERATIONAL_ATTRIBUTE );
         }
+        if ( !initialInterceptors.contains( InterceptorEnum.PASSWORD_POLICY ) )
+        {
+            availableInterceptors.add( InterceptorEnum.PASSWORD_POLICY );
+        }
+        if ( !initialInterceptors.contains( InterceptorEnum.KEY_DERIVATION ) )
+        {
+            availableInterceptors.add( InterceptorEnum.KEY_DERIVATION );
+        }
         if ( !initialInterceptors.contains( InterceptorEnum.SCHEMA ) )
         {
             availableInterceptors.add( InterceptorEnum.SCHEMA );

Modified: directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/InterceptorDialog.java
URL: http://svn.apache.org/viewvc/directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/InterceptorDialog.java?rev=995726&r1=995725&r2=995726&view=diff
==============================================================================
--- directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/InterceptorDialog.java (original)
+++ directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/InterceptorDialog.java Fri Sep 10 09:54:28 2010
@@ -206,6 +206,14 @@ public class InterceptorDialog extends D
         {
             availableInterceptors.add( InterceptorEnum.OPERATIONAL_ATTRIBUTE );
         }
+        if ( !initialInterceptors.contains( InterceptorEnum.PASSWORD_POLICY ) )
+        {
+            availableInterceptors.add( InterceptorEnum.PASSWORD_POLICY );
+        }
+        if ( !initialInterceptors.contains( InterceptorEnum.KEY_DERIVATION ) )
+        {
+            availableInterceptors.add( InterceptorEnum.KEY_DERIVATION );
+        }
         if ( !initialInterceptors.contains( InterceptorEnum.SCHEMA ) )
         {
             availableInterceptors.add( InterceptorEnum.SCHEMA );

Modified: directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v157/dialogs/InterceptorDialog.java
URL: http://svn.apache.org/viewvc/directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v157/dialogs/InterceptorDialog.java?rev=995726&r1=995725&r2=995726&view=diff
==============================================================================
--- directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v157/dialogs/InterceptorDialog.java (original)
+++ directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v157/dialogs/InterceptorDialog.java Fri Sep 10 09:54:28 2010
@@ -206,6 +206,14 @@ public class InterceptorDialog extends D
         {
             availableInterceptors.add( InterceptorEnum.OPERATIONAL_ATTRIBUTE );
         }
+        if ( !initialInterceptors.contains( InterceptorEnum.PASSWORD_POLICY ) )
+        {
+            availableInterceptors.add( InterceptorEnum.PASSWORD_POLICY );
+        }
+        if ( !initialInterceptors.contains( InterceptorEnum.KEY_DERIVATION ) )
+        {
+            availableInterceptors.add( InterceptorEnum.KEY_DERIVATION );
+        }
         if ( !initialInterceptors.contains( InterceptorEnum.SCHEMA ) )
         {
             availableInterceptors.add( InterceptorEnum.SCHEMA );

Modified: directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v152/InterceptorEnum.java
URL: http://svn.apache.org/viewvc/directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v152/InterceptorEnum.java?rev=995726&r1=995725&r2=995726&view=diff
==============================================================================
--- directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v152/InterceptorEnum.java (original)
+++ directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v152/InterceptorEnum.java Fri Sep 10 09:54:28 2010
@@ -20,6 +20,9 @@
 package org.apache.directory.studio.apacheds.configuration.model.v152;
 
 
+import org.apache.directory.studio.apacheds.configuration.model.v153.Messages;
+
+
 /**
  * This enum contains all the interceptors.
  *
@@ -55,6 +58,14 @@ public enum InterceptorEnum
     OPERATIONAL_ATTRIBUTE(
         Messages.getString( "InterceptorEnum.OperationalAttribute" ), Messages.getString( "InterceptorEnum.OperationalAttributeDescription" )), //$NON-NLS-1$ //$NON-NLS-2$
 
+    /** The Password Policy Interceptor */
+    PASSWORD_POLICY(Messages.getString( "InterceptorEnum.PasswordPolicy" ), Messages
+            .getString( "InterceptorEnum.PasswordPolicyDescription" )),
+
+    /** The KeyDerivation Interceptor */
+    KEY_DERIVATION(Messages.getString( "InterceptorEnum.KeyDerivation" ), Messages
+            .getString( "InterceptorEnum.KeyDerivationDescription" )),
+
     /** The Schema Interceptor */
     SCHEMA(Messages.getString( "InterceptorEnum.Schema" ), Messages.getString( "InterceptorEnum.SchemaDescription" )), //$NON-NLS-1$ //$NON-NLS-2$
 

Modified: directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v152/ServerXmlIOV152.java
URL: http://svn.apache.org/viewvc/directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v152/ServerXmlIOV152.java?rev=995726&r1=995725&r2=995726&view=diff
==============================================================================
--- directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v152/ServerXmlIOV152.java (original)
+++ directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v152/ServerXmlIOV152.java Fri Sep 10 09:54:28 2010
@@ -104,6 +104,7 @@ public class ServerXmlIOV152 extends Abs
     private static final String ELEMENT_JDBM_INDEX = "jdbmIndex"; //$NON-NLS-1$
     private static final String ELEMENT_JDBM_PARTITION = "jdbmPartition"; //$NON-NLS-1$
     private static final String ELEMENT_KDC_SERVER = "kdcServer"; //$NON-NLS-1$
+    private static final String ELEMENT_KEY_DERIVATION_INTERCEPTOR = "keyDerivationInterceptor"; //$NON-NLS-1$
     private static final String ELEMENT_LAUNCH_DIAGNOSTIC_UI_HANDLER = "launchDiagnosticUiHandler"; //$NON-NLS-1$
     private static final String ELEMENT_LDAP_SERVER = "ldapServer"; //$NON-NLS-1$
     private static final String ELEMENT_LDAPS_SERVER = "ldapsServer"; //$NON-NLS-1$
@@ -114,6 +115,7 @@ public class ServerXmlIOV152 extends Abs
     private static final String ELEMENT_NTP_SERVER = "ntpServer"; //$NON-NLS-1$
     private static final String ELEMENT_OPERATIONAL_ATTRIBUTE_INTERCEPTOR = "operationalAttributeInterceptor"; //$NON-NLS-1$
     private static final String ELEMENT_PARTITIONS = "partitions"; //$NON-NLS-1$
+    private static final String ELEMENT_PASSWORD_POLICY_INTERCEPTOR = "passwordPolicyInterceptor"; //$NON-NLS-1$
     private static final String ELEMENT_PROPERTY = "property"; //$NON-NLS-1$
     private static final String ELEMENT_REF = "ref"; //$NON-NLS-1$
     private static final String ELEMENT_REFERRAL_INTERCEPTOR = "referralInterceptor"; //$NON-NLS-1$
@@ -745,6 +747,16 @@ public class ServerXmlIOV152 extends Abs
                 {
                     serverConfiguration.addInterceptor( InterceptorEnum.OPERATIONAL_ATTRIBUTE );
                 }
+                else if ( ServerXmlIOV152.ELEMENT_PASSWORD_POLICY_INTERCEPTOR
+                    .equalsIgnoreCase( interceptorElementName ) )
+                {
+                    serverConfiguration.addInterceptor( InterceptorEnum.PASSWORD_POLICY );
+                }
+                else if ( ServerXmlIOV152.ELEMENT_KEY_DERIVATION_INTERCEPTOR
+                    .equalsIgnoreCase( interceptorElementName ) )
+                {
+                    serverConfiguration.addInterceptor( InterceptorEnum.KEY_DERIVATION );
+                }
                 else if ( ServerXmlIOV152.ELEMENT_SCHEMA_INTERCEPTOR.equalsIgnoreCase( interceptorElementName ) )
                 {
                     serverConfiguration.addInterceptor( InterceptorEnum.SCHEMA );
@@ -1697,58 +1709,57 @@ public class ServerXmlIOV152 extends Abs
     {
         List<InterceptorEnum> interceptors = serverConfiguration.getInterceptors();
 
-        if ( interceptors.contains( InterceptorEnum.NORMALIZATION ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV152.ELEMENT_NORMALIZATION_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.AUTHENTICATION ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV152.ELEMENT_AUTHENTICATION_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.REFERRAL ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV152.ELEMENT_REFERRAL_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.ACI_AUTHORIZATION ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV152.ELEMENT_ACI_AUTHORIZATION_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.DEFAULT_AUTHORIZATION ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV152.ELEMENT_DEFAULT_AUTHORIZATION_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.EXCEPTION ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV152.ELEMENT_EXCEPTION_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.OPERATIONAL_ATTRIBUTE ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV152.ELEMENT_OPERATIONAL_ATTRIBUTE_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.SCHEMA ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV152.ELEMENT_SCHEMA_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.SUBENTRY ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV152.ELEMENT_SUBENTRY_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.COLLECTIVE_ATTRIBUTE ) )
+        for ( InterceptorEnum interceptor : interceptors )
         {
-            interceptorsElement.addElement( ServerXmlIOV152.ELEMENT_COLLECTIVE_ATTRIBUTE_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.EVENT ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV152.ELEMENT_EVENT_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.TRIGGER ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV152.ELEMENT_TRIGGER_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.REPLICATION ) )
-        {
-            // TODO support replication interceptor
-            //            interceptorsElement.addElement( "replicationInterceptor" );
+            switch ( interceptor )
+            {
+                case NORMALIZATION:
+                    interceptorsElement.addElement( ServerXmlIOV152.ELEMENT_NORMALIZATION_INTERCEPTOR );
+                    break;
+                case AUTHENTICATION:
+                    interceptorsElement.addElement( ServerXmlIOV152.ELEMENT_AUTHENTICATION_INTERCEPTOR );
+                    break;
+                case REFERRAL:
+                    interceptorsElement.addElement( ServerXmlIOV152.ELEMENT_REFERRAL_INTERCEPTOR );
+                    break;
+                case ACI_AUTHORIZATION:
+                    interceptorsElement.addElement( ServerXmlIOV152.ELEMENT_ACI_AUTHORIZATION_INTERCEPTOR );
+                    break;
+                case DEFAULT_AUTHORIZATION:
+                    interceptorsElement.addElement( ServerXmlIOV152.ELEMENT_DEFAULT_AUTHORIZATION_INTERCEPTOR );
+                    break;
+                case EXCEPTION:
+                    interceptorsElement.addElement( ServerXmlIOV152.ELEMENT_EXCEPTION_INTERCEPTOR );
+                    break;
+                case OPERATIONAL_ATTRIBUTE:
+                    interceptorsElement.addElement( ServerXmlIOV152.ELEMENT_OPERATIONAL_ATTRIBUTE_INTERCEPTOR );
+                    break;
+                case PASSWORD_POLICY:
+                    interceptorsElement.addElement( ServerXmlIOV152.ELEMENT_PASSWORD_POLICY_INTERCEPTOR );
+                    break;
+                case KEY_DERIVATION:
+                    interceptorsElement.addElement( ServerXmlIOV152.ELEMENT_KEY_DERIVATION_INTERCEPTOR );
+                    break;
+                case SCHEMA:
+                    interceptorsElement.addElement( ServerXmlIOV152.ELEMENT_SCHEMA_INTERCEPTOR );
+                    break;
+                case SUBENTRY:
+                    interceptorsElement.addElement( ServerXmlIOV152.ELEMENT_SUBENTRY_INTERCEPTOR );
+                    break;
+                case COLLECTIVE_ATTRIBUTE:
+                    interceptorsElement.addElement( ServerXmlIOV152.ELEMENT_COLLECTIVE_ATTRIBUTE_INTERCEPTOR );
+                    break;
+                case EVENT:
+                    interceptorsElement.addElement( ServerXmlIOV152.ELEMENT_EVENT_INTERCEPTOR );
+                    break;
+                case TRIGGER:
+                    interceptorsElement.addElement( ServerXmlIOV152.ELEMENT_TRIGGER_INTERCEPTOR );
+                    break;
+                case REPLICATION:
+                    // TODO support replication interceptor
+                    //            interceptorsElement.addElement( "replicationInterceptor" );
+                    break;
+            }
         }
     }
 

Modified: directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v152/messages.properties
URL: http://svn.apache.org/viewvc/directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v152/messages.properties?rev=995726&r1=995725&r2=995726&view=diff
==============================================================================
--- directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v152/messages.properties (original)
+++ directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v152/messages.properties Fri Sep 10 09:54:28 2010
@@ -15,12 +15,13 @@
 # specific language governing permissions and limitations
 # under the License.
 
-ExtendedOperationEnum.DiagnosticUIDescription=The Launch Diagnostic UI extended operation allows an application to launch the diagnostic user interface which can be used to look at the master table and the indices.
+ExtendedOperationEnum.LaunchDiagnosticUI=Launch Diagnostic UI
+ExtendedOperationEnum.LaunchDiagnosticUIDescription=The Launch Diagnostic UI extended operation allows an application to launch the diagnostic user interface which can be used to look at the master table and the indices.
 ExtendedOperationEnum.Shutdown=Graceful Shutdown
 ExtendedOperationEnum.ShutdownDescription=The Graceful Shutdown TLS extended operation allows an application to gracefully manage server's that must go offline or shutdown with proper notification to bound clients.
 ExtendedOperationEnum.StartTLS=Start TLS
 ExtendedOperationEnum.StartTLSDescription=The Start TLS extended operation allows an application to serialize secure and plain requests against an LDAP server on a single connection.
-ExtendedOperationEnum.DiagnosticUI=Launch Diagnostic UI
+
 InterceptorEnum.ACIAuthorization=ACI Authorization
 InterceptorEnum.ACIAuthorizationDescription=An ACI based authorization interceptor.
 InterceptorEnum.Authentication=Authentication
@@ -33,10 +34,14 @@ InterceptorEnum.Event=Event
 InterceptorEnum.EventDescription=An interceptor based serivice for notifying NamingListeners of EventContext and EventDirContext changes.
 InterceptorEnum.Exception=Exception
 InterceptorEnum.ExceptionDescription=An interceptor that detects any operations that breaks integrity of Partition and terminates the current invocation chain by throwing a NamingException. Those operations include when an entry already exists at a DN and is added once again to the same DN.
+InterceptorEnum.KeyDerivation=Key Derivation
+InterceptorEnum.KeyDerivationDescription=An interceptor that creates symmetric Kerberos keys for users.  When a 'userPassword' is added or modified, the 'userPassword' and 'krb5PrincipalName' are used to derive Kerberos keys.  If the 'userPassword' is the special keyword 'randomKey', a random key is generated and used as the Kerberos key.
 InterceptorEnum.Normalization=Normalization
 InterceptorEnum.NormalizationDescription=A name normalization interceptor. This interceptor makes sure all relative and distinguished names are normalized before calls are made against the respective interface methods on PartitionNexus.
 InterceptorEnum.OperationalAttribute=Operational Attribute
 InterceptorEnum.OperationalAttributeDescription=An interceptor that adds or modifies the default attributes of entries. There are four default attributes for now; 'creatorsName', 'createTimestamp', 'modifiersName', 'modifyTimestamp'.
+InterceptorEnum.PasswordPolicy=Password Policy
+InterceptorEnum.PasswordPolicyDescription=An interceptor that enforces password policy for users
 InterceptorEnum.Referral=Referral
 InterceptorEnum.ReferralDescription=An interceptor which is responsible referral handling behaviors.  It manages  referral handling behavior when the Context\#REFERRAL is implicitly or explicitly set to "ignore", when set to "throw" and when set to "follow".
 InterceptorEnum.Replication=Replication
@@ -47,32 +52,31 @@ InterceptorEnum.SubEntry=Sub-Entry
 InterceptorEnum.SubEntryDescription=The sub-entry interceptor service which is responsible for filtering out sub-entries on search operations and injecting operational attributes.
 InterceptorEnum.Trigger=Trigger
 InterceptorEnum.TriggerDescription=The trigger interceptor based on the Trigger Specification.
+
 SaslQualityOfProtectionEnum.AuthenticationOnly=auth (Authentication only)
 SaslQualityOfProtectionEnum.AuthenticationWithIntegrityAndPrivacyProtection=auth-conf (Authentication with integrity and privacy protection)
 SaslQualityOfProtectionEnum.AuthenticationWithIntegrityProtection=auth-int (Authentication with integrity protection)
+
 ServerXmlIOV152.ErrorAccessControlEnabled=Unable to find the 'accessControlEnabled' attribute for the default directory service bean.
-ServerXmlIOV152.ErrorAllowedAnonymous=Unable to find the 'allowAnonymousAccess' attribute for the 'ldapServer' bean.
-ServerXmlIOV152.ErrorArguments=Unable to find the property element named 'arguments'.
-ServerXmlIOV152.ErrorBean=Unable to find the bean element named "{0}".
+ServerXmlIOV152.ErrorAllowAnonymousAccess=Unable to find the 'allowAnonymousAccess' attribute for the 'ldapService' bean.
 ServerXmlIOV152.ErrorCacheSize=Unable to find the 'cacheSize' attribute for a partition.
 ServerXmlIOV152.ErrorChangePasswordServerPort=Unable to find the 'ipPort' attribute for the 'changePasswordServer' bean.
-ServerXmlIOV152.ErrorContextEntry=Unable to find the 'contextEntry' element for a partition.
 ServerXmlIOV152.ErrorDefaultDirectoryService=Unable to find the 'defaultDirectoryService' tag.
-ServerXmlIOV152.ErrorDenormalizationOpAttrsEnabled=Unable to find the 'denormalizeOpAttrsEnabled' attribute for the default directory service bean.
+ServerXmlIOV152.ErrorDenormalizeOpAttrsEnabled=Unable to find the 'denormalizeOpAttrsEnabled' attribute for the default directory service bean.
 ServerXmlIOV152.ErrorDnsServerPort=Unable to find the 'ipPort' attribute for the 'dnsServer' bean.
 ServerXmlIOV152.ErrorId=Unable to find the 'id' attribute for a partition.
-ServerXmlIOV152.ErrorJDBMElement=Unable to find the 'jdbmPartition' element for the system partition.
+ServerXmlIOV152.ErrorJDBMPartition=Unable to find the 'jdbmPartition' element for the system partition.
 ServerXmlIOV152.ErrorKdcServerPort=Unable to find the 'ipPort' attribute for the 'kdcServer' bean.
-ServerXmlIOV152.ErrorLdapServerId=Unable to find the 'id' attribute for the 'ldapServer' bean.
-ServerXmlIOV152.ErrorLdapServerPort=Unable to find the 'ipPort' attribute for the 'ldapServer' bean.
+ServerXmlIOV152.ErrorLdapServerId=Unable to find the 'id' attribute for the 'ldapService' bean.
+ServerXmlIOV152.ErrorLdapServerPort=Unable to find the 'ipPort' attribute for the 'ldapService' bean.
 ServerXmlIOV152.ErrorLdapsServerPort=Unable to find the 'ipPort' attribute for the 'ldapsServer' bean.
 ServerXmlIOV152.ErrorMaxSizeLimit=Unable to find the 'maxSizeLimit' attribute for the 'ldapServer' bean.
 ServerXmlIOV152.ErrorMaxThreads=Unable to find the 'maxThreads' attribute for the StandardThreadPool bean.
 ServerXmlIOV152.ErrorMaxTimeLimit=Unable to find the 'maxTimeLimit' attribute for the 'ldapServer' bean.
 ServerXmlIOV152.ErrorNtpServerPort=Unable to find the 'ipPort' attribute for the 'ntpServer' bean.
 ServerXmlIOV152.ErrorOptimizerEnabled=Unable to find the 'OptimizerEnabled' attribute for a partition.
-ServerXmlIOV152.ErrorSaslHost=Unable to find the 'saslHost' attribute for the 'ldapServer' bean.
-ServerXmlIOV152.ErrorSaslPrincipal=Unable to find the 'saslPrincipal' attribute for the 'ldapServer' bean.
+ServerXmlIOV152.ErrorSaslHost=Unable to find the 'saslHost' attribute for the 'ldapService' bean.
+ServerXmlIOV152.ErrorSaslPrincipal=Unable to find the 'saslPrincipal' attribute for the 'ldapService' bean.
 ServerXmlIOV152.ErrorSearchBaseDn=Unable to find the 'searchBaseDn' attribute for the 'ldapServer' bean.
 ServerXmlIOV152.ErrorStandardThreadPool=Unable to find the 'standardThreadPool' tag.
 ServerXmlIOV152.ErrorSuffix=Unable to find the 'suffix' attribute for a partition.

Modified: directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v153/InterceptorEnum.java
URL: http://svn.apache.org/viewvc/directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v153/InterceptorEnum.java?rev=995726&r1=995725&r2=995726&view=diff
==============================================================================
--- directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v153/InterceptorEnum.java (original)
+++ directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v153/InterceptorEnum.java Fri Sep 10 09:54:28 2010
@@ -55,6 +55,14 @@ public enum InterceptorEnum
     OPERATIONAL_ATTRIBUTE(
         Messages.getString( "InterceptorEnum.OperationalAttribute" ), Messages.getString( "InterceptorEnum.OperationalAttributeDescription" )), //$NON-NLS-1$ //$NON-NLS-2$
 
+    /** The Password Policy Interceptor */
+    PASSWORD_POLICY(Messages.getString( "InterceptorEnum.PasswordPolicy" ), Messages
+        .getString( "InterceptorEnum.PasswordPolicyDescription" )),
+
+    /** The KeyDerivation Interceptor */
+    KEY_DERIVATION(Messages.getString( "InterceptorEnum.KeyDerivation" ), Messages
+        .getString( "InterceptorEnum.KeyDerivationDescription" )),
+
     /** The Schema Interceptor */
     SCHEMA(Messages.getString( "InterceptorEnum.Schema" ), Messages.getString( "InterceptorEnum.SchemaDescription" )), //$NON-NLS-1$ //$NON-NLS-2$
 

Modified: directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v153/ServerXmlIOV153.java
URL: http://svn.apache.org/viewvc/directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v153/ServerXmlIOV153.java?rev=995726&r1=995725&r2=995726&view=diff
==============================================================================
--- directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v153/ServerXmlIOV153.java (original)
+++ directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v153/ServerXmlIOV153.java Fri Sep 10 09:54:28 2010
@@ -109,6 +109,7 @@ public class ServerXmlIOV153 extends Abs
     private static final String ELEMENT_JDBM_INDEX = "jdbmIndex"; //$NON-NLS-1$
     private static final String ELEMENT_JDBM_PARTITION = "jdbmPartition"; //$NON-NLS-1$
     private static final String ELEMENT_KDC_SERVER = "kdcServer"; //$NON-NLS-1$
+    private static final String ELEMENT_KEY_DERIVATION_INTERCEPTOR = "keyDerivationInterceptor"; //$NON-NLS-1$
     private static final String ELEMENT_LAUNCH_DIAGNOSTIC_UI_HANDLER = "launchDiagnosticUiHandler"; //$NON-NLS-1$
     private static final String ELEMENT_LDAP_SERVER = "ldapServer"; //$NON-NLS-1$
     private static final String ELEMENT_LDAPS_SERVER = "ldapsServer"; //$NON-NLS-1$
@@ -120,6 +121,7 @@ public class ServerXmlIOV153 extends Abs
     private static final String ELEMENT_NTP_SERVER = "ntpServer"; //$NON-NLS-1$
     private static final String ELEMENT_OPERATIONAL_ATTRIBUTE_INTERCEPTOR = "operationalAttributeInterceptor"; //$NON-NLS-1$
     private static final String ELEMENT_PARTITIONS = "partitions"; //$NON-NLS-1$
+    private static final String ELEMENT_PASSWORD_POLICY_INTERCEPTOR = "passwordPolicyInterceptor"; //$NON-NLS-1$
     private static final String ELEMENT_PROPERTY = "property"; //$NON-NLS-1$
     private static final String ELEMENT_REF = "ref"; //$NON-NLS-1$
     private static final String ELEMENT_REFERRAL_INTERCEPTOR = "referralInterceptor"; //$NON-NLS-1$
@@ -759,6 +761,16 @@ public class ServerXmlIOV153 extends Abs
                 {
                     serverConfiguration.addInterceptor( InterceptorEnum.OPERATIONAL_ATTRIBUTE );
                 }
+                else if ( ServerXmlIOV153.ELEMENT_PASSWORD_POLICY_INTERCEPTOR
+                    .equalsIgnoreCase( interceptorElementName ) )
+                {
+                    serverConfiguration.addInterceptor( InterceptorEnum.PASSWORD_POLICY );
+                }
+                else if ( ServerXmlIOV153.ELEMENT_KEY_DERIVATION_INTERCEPTOR
+                    .equalsIgnoreCase( interceptorElementName ) )
+                {
+                    serverConfiguration.addInterceptor( InterceptorEnum.KEY_DERIVATION );
+                }
                 else if ( ServerXmlIOV153.ELEMENT_SCHEMA_INTERCEPTOR.equalsIgnoreCase( interceptorElementName ) )
                 {
                     serverConfiguration.addInterceptor( InterceptorEnum.SCHEMA );
@@ -1754,58 +1766,57 @@ public class ServerXmlIOV153 extends Abs
     {
         List<InterceptorEnum> interceptors = serverConfiguration.getInterceptors();
 
-        if ( interceptors.contains( InterceptorEnum.NORMALIZATION ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV153.ELEMENT_NORMALIZATION_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.AUTHENTICATION ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV153.ELEMENT_AUTHENTICATION_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.REFERRAL ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV153.ELEMENT_REFERRAL_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.ACI_AUTHORIZATION ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV153.ELEMENT_ACI_AUTHORIZATION_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.DEFAULT_AUTHORIZATION ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV153.ELEMENT_DEFAULT_AUTHORIZATION_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.EXCEPTION ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV153.ELEMENT_EXCEPTION_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.OPERATIONAL_ATTRIBUTE ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV153.ELEMENT_OPERATIONAL_ATTRIBUTE_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.SCHEMA ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV153.ELEMENT_SCHEMA_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.SUBENTRY ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV153.ELEMENT_SUBENTRY_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.COLLECTIVE_ATTRIBUTE ) )
+        for ( InterceptorEnum interceptor : interceptors )
         {
-            interceptorsElement.addElement( ServerXmlIOV153.ELEMENT_COLLECTIVE_ATTRIBUTE_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.EVENT ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV153.ELEMENT_EVENT_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.TRIGGER ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV153.ELEMENT_TRIGGER_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.REPLICATION ) )
-        {
-            // TODO support replication interceptor
-            //            interceptorsElement.addElement( "replicationInterceptor" );
+            switch ( interceptor )
+            {
+                case NORMALIZATION:
+                    interceptorsElement.addElement( ServerXmlIOV153.ELEMENT_NORMALIZATION_INTERCEPTOR );
+                    break;
+                case AUTHENTICATION:
+                    interceptorsElement.addElement( ServerXmlIOV153.ELEMENT_AUTHENTICATION_INTERCEPTOR );
+                    break;
+                case REFERRAL:
+                    interceptorsElement.addElement( ServerXmlIOV153.ELEMENT_REFERRAL_INTERCEPTOR );
+                    break;
+                case ACI_AUTHORIZATION:
+                    interceptorsElement.addElement( ServerXmlIOV153.ELEMENT_ACI_AUTHORIZATION_INTERCEPTOR );
+                    break;
+                case DEFAULT_AUTHORIZATION:
+                    interceptorsElement.addElement( ServerXmlIOV153.ELEMENT_DEFAULT_AUTHORIZATION_INTERCEPTOR );
+                    break;
+                case EXCEPTION:
+                    interceptorsElement.addElement( ServerXmlIOV153.ELEMENT_EXCEPTION_INTERCEPTOR );
+                    break;
+                case OPERATIONAL_ATTRIBUTE:
+                    interceptorsElement.addElement( ServerXmlIOV153.ELEMENT_OPERATIONAL_ATTRIBUTE_INTERCEPTOR );
+                    break;
+                case PASSWORD_POLICY:
+                    interceptorsElement.addElement( ServerXmlIOV153.ELEMENT_PASSWORD_POLICY_INTERCEPTOR );
+                    break;
+                case KEY_DERIVATION:
+                    interceptorsElement.addElement( ServerXmlIOV153.ELEMENT_KEY_DERIVATION_INTERCEPTOR );
+                    break;
+                case SCHEMA:
+                    interceptorsElement.addElement( ServerXmlIOV153.ELEMENT_SCHEMA_INTERCEPTOR );
+                    break;
+                case SUBENTRY:
+                    interceptorsElement.addElement( ServerXmlIOV153.ELEMENT_SUBENTRY_INTERCEPTOR );
+                    break;
+                case COLLECTIVE_ATTRIBUTE:
+                    interceptorsElement.addElement( ServerXmlIOV153.ELEMENT_COLLECTIVE_ATTRIBUTE_INTERCEPTOR );
+                    break;
+                case EVENT:
+                    interceptorsElement.addElement( ServerXmlIOV153.ELEMENT_EVENT_INTERCEPTOR );
+                    break;
+                case TRIGGER:
+                    interceptorsElement.addElement( ServerXmlIOV153.ELEMENT_TRIGGER_INTERCEPTOR );
+                    break;
+                case REPLICATION:
+                    // TODO support replication interceptor
+                    //            interceptorsElement.addElement( "replicationInterceptor" );
+                    break;
+            }
         }
     }
 

Modified: directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v153/messages.properties
URL: http://svn.apache.org/viewvc/directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v153/messages.properties?rev=995726&r1=995725&r2=995726&view=diff
==============================================================================
--- directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v153/messages.properties (original)
+++ directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v153/messages.properties Fri Sep 10 09:54:28 2010
@@ -21,6 +21,7 @@ ExtendedOperationEnum.Shutdown=Graceful 
 ExtendedOperationEnum.ShutdownDescription=The Graceful Shutdown TLS extended operation allows an application to gracefully manage server's that must go offline or shutdown with proper notification to bound clients.
 ExtendedOperationEnum.StartTLS=Start TLS
 ExtendedOperationEnum.StartTLSDescription=The Start TLS extended operation allows an application to serialize secure and plain requests against an LDAP server on a single connection.
+
 InterceptorEnum.ACIAuthorization=ACI Authorization
 InterceptorEnum.ACIAuthorizationDescription=An ACI based authorization interceptor.
 InterceptorEnum.Authentication=Authentication
@@ -33,10 +34,14 @@ InterceptorEnum.Event=Event
 InterceptorEnum.EventDescription=An interceptor based serivice for notifying NamingListeners of EventContext and EventDirContext changes.
 InterceptorEnum.Exception=Exception
 InterceptorEnum.ExceptionDescription=An interceptor that detects any operations that breaks integrity of Partition and terminates the current invocation chain by throwing a NamingException. Those operations include when an entry already exists at a DN and is added once again to the same DN.
+InterceptorEnum.KeyDerivation=Key Derivation
+InterceptorEnum.KeyDerivationDescription=An interceptor that creates symmetric Kerberos keys for users.  When a 'userPassword' is added or modified, the 'userPassword' and 'krb5PrincipalName' are used to derive Kerberos keys.  If the 'userPassword' is the special keyword 'randomKey', a random key is generated and used as the Kerberos key.
 InterceptorEnum.Normalization=Normalization
 InterceptorEnum.NormalizationDescription=A name normalization interceptor. This interceptor makes sure all relative and distinguished names are normalized before calls are made against the respective interface methods on PartitionNexus.
 InterceptorEnum.OperationalAttribute=Operational Attribute
 InterceptorEnum.OperationalAttributeDescription=An interceptor that adds or modifies the default attributes of entries. There are four default attributes for now; 'creatorsName', 'createTimestamp', 'modifiersName', 'modifyTimestamp'.
+InterceptorEnum.PasswordPolicy=Password Policy
+InterceptorEnum.PasswordPolicyDescription=An interceptor that enforces password policy for users
 InterceptorEnum.Referral=Referral
 InterceptorEnum.ReferralDescription=An interceptor which is responsible referral handling behaviors.  It manages  referral handling behavior when the Context\#REFERRAL is implicitly or explicitly set to "ignore", when set to "throw" and when set to "follow".
 InterceptorEnum.Replication=Replication
@@ -47,35 +52,34 @@ InterceptorEnum.SubEntry=Sub-Entry
 InterceptorEnum.SubEntryDescription=The sub-entry interceptor service which is responsible for filtering out sub-entries on search operations and injecting operational attributes.
 InterceptorEnum.Trigger=Trigger
 InterceptorEnum.TriggerDescription=The trigger interceptor based on the Trigger Specification.
-SaslQualityOfProtectionEnum.AuthenticationIntegrityAndPrivacy=auth-conf (Authentication with integrity and privacy protection)
-SaslQualityOfProtectionEnum.AuthenticationIntegrityProtection=auth-int (Authentication with integrity protection)
+
 SaslQualityOfProtectionEnum.AuthenticationOnly=auth (Authentication only)
+SaslQualityOfProtectionEnum.AuthenticationWithIntegrityAndPrivacyProtection=auth-conf (Authentication with integrity and privacy protection)
+SaslQualityOfProtectionEnum.AuthenticationWithIntegrityProtection=auth-int (Authentication with integrity protection)
+
 ServerXmlIOV153.ErrorAccessControlEnabled=Unable to find the 'accessControlEnabled' attribute for the default directory service bean.
-ServerXmlIOV153.ErrorAllowAnonymousAccess=Unable to find the 'allowAnonymousAccess' attribute for the 'ldapServer' bean.
-ServerXmlIOV153.ErrorArguments=Unable to find the property element named 'arguments'.
-ServerXmlIOV153.ErrorBean=Unable to find the bean element named "{0}".
+ServerXmlIOV153.ErrorAllowAnonymousAccess=Unable to find the 'allowAnonymousAccess' attribute for the 'ldapService' bean.
 ServerXmlIOV153.ErrorCacheSize=Unable to find the 'cacheSize' attribute for a partition.
-ServerXmlIOV153.ErrorChangePasswordServer=Unable to find the 'ipPort' attribute for the 'changePasswordServer' bean.
-ServerXmlIOV153.ErrorContextEntry=Unable to find the 'contextEntry' element for a partition.
+ServerXmlIOV153.ErrorChangePasswordServerPort=Unable to find the 'ipPort' attribute for the 'changePasswordServer' bean.
 ServerXmlIOV153.ErrorDefaultDirectoryService=Unable to find the 'defaultDirectoryService' tag.
-ServerXmlIOV153.ErrorDenormalizedOpAttrsEnabled=Unable to find the 'denormalizeOpAttrsEnabled' attribute for the default directory service bean.
+ServerXmlIOV153.ErrorDenormalizeOpAttrsEnabled=Unable to find the 'denormalizeOpAttrsEnabled' attribute for the default directory service bean.
 ServerXmlIOV153.ErrorDnsServerPort=Unable to find the 'ipPort' attribute for the 'dnsServer' bean.
 ServerXmlIOV153.ErrorId=Unable to find the 'id' attribute for a partition.
 ServerXmlIOV153.ErrorJDBMPartition=Unable to find the 'jdbmPartition' element for the system partition.
 ServerXmlIOV153.ErrorKdcServerPort=Unable to find the 'ipPort' attribute for the 'kdcServer' bean.
-ServerXmlIOV153.ErrorLdapServerId=Unable to find the 'id' attribute for the 'ldapServer' bean.
-ServerXmlIOV153.ErrorLdapServerPort=Unable to find the 'ipPort' attribute for the 'ldapServer' bean.
+ServerXmlIOV153.ErrorLdapServerId=Unable to find the 'id' attribute for the 'ldapService' bean.
+ServerXmlIOV153.ErrorLdapServerPort=Unable to find the 'ipPort' attribute for the 'ldapService' bean.
 ServerXmlIOV153.ErrorLdapsServerPort=Unable to find the 'ipPort' attribute for the 'ldapsServer' bean.
 ServerXmlIOV153.ErrorMaxSizeLimit=Unable to find the 'maxSizeLimit' attribute for the 'ldapServer' bean.
 ServerXmlIOV153.ErrorMaxThreads=Unable to find the 'maxThreads' attribute for the StandardThreadPool bean.
 ServerXmlIOV153.ErrorMaxTimeLimit=Unable to find the 'maxTimeLimit' attribute for the 'ldapServer' bean.
 ServerXmlIOV153.ErrorNtpServerPort=Unable to find the 'ipPort' attribute for the 'ntpServer' bean.
 ServerXmlIOV153.ErrorOptimizerEnabled=Unable to find the 'OptimizerEnabled' attribute for a partition.
-ServerXmlIOV153.ErrorSaslHost=Unable to find the 'saslHost' attribute for the 'ldapServer' bean.
-ServerXmlIOV153.ErrorSaslPrincipal=Unable to find the 'saslPrincipal' attribute for the 'ldapServer' bean.
+ServerXmlIOV153.ErrorSaslHost=Unable to find the 'saslHost' attribute for the 'ldapService' bean.
+ServerXmlIOV153.ErrorSaslPrincipal=Unable to find the 'saslPrincipal' attribute for the 'ldapService' bean.
 ServerXmlIOV153.ErrorSearchBaseDn=Unable to find the 'searchBaseDn' attribute for the 'ldapServer' bean.
 ServerXmlIOV153.ErrorStandardThreadPool=Unable to find the 'standardThreadPool' tag.
 ServerXmlIOV153.ErrorSuffix=Unable to find the 'suffix' attribute for a partition.
-ServerXmlIOV153.ErrorSynchPeriodMillis=Unable to find the 'synchPeriodMillis' attribute for a partition.
 ServerXmlIOV153.ErrorSyncOnWrite=Unable to find the 'syncOnWrite' attribute for a partition.
+ServerXmlIOV153.ErrorSyncPeriodMillis=Unable to find the 'synchPeriodMillis' attribute for a partition.
 ServerXmlIOV153.ErrorSystemPartition=Unable to find the 'systemPartition' element.

Modified: directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v154/InterceptorEnum.java
URL: http://svn.apache.org/viewvc/directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v154/InterceptorEnum.java?rev=995726&r1=995725&r2=995726&view=diff
==============================================================================
--- directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v154/InterceptorEnum.java (original)
+++ directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v154/InterceptorEnum.java Fri Sep 10 09:54:28 2010
@@ -51,6 +51,14 @@ public enum InterceptorEnum
     OPERATIONAL_ATTRIBUTE(
         Messages.getString( "InterceptorEnum.OperationalAttribute" ), Messages.getString( "InterceptorEnum.OperationalAttributeDescription" )), //$NON-NLS-1$ //$NON-NLS-2$
 
+    /** The Password Policy Interceptor */
+    PASSWORD_POLICY(Messages.getString( "InterceptorEnum.PasswordPolicy" ), Messages
+        .getString( "InterceptorEnum.PasswordPolicyDescription" )),
+
+    /** The KeyDerivation Interceptor */
+    KEY_DERIVATION(Messages.getString( "InterceptorEnum.KeyDerivation" ), Messages
+        .getString( "InterceptorEnum.KeyDerivationDescription" )),
+
     /** The Schema Interceptor */
     SCHEMA(Messages.getString( "InterceptorEnum.Schema" ), Messages.getString( "InterceptorEnum.SchemaDescription" )), //$NON-NLS-1$ //$NON-NLS-2$
 

Modified: directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v154/ServerXmlIOV154.java
URL: http://svn.apache.org/viewvc/directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v154/ServerXmlIOV154.java?rev=995726&r1=995725&r2=995726&view=diff
==============================================================================
--- directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v154/ServerXmlIOV154.java (original)
+++ directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v154/ServerXmlIOV154.java Fri Sep 10 09:54:28 2010
@@ -101,6 +101,7 @@ public class ServerXmlIOV154 extends Abs
     private static final String ELEMENT_JDBM_INDEX = "jdbmIndex"; //$NON-NLS-1$
     private static final String ELEMENT_JDBM_PARTITION = "jdbmPartition"; //$NON-NLS-1$
     private static final String ELEMENT_KDC_SERVER = "kdcServer"; //$NON-NLS-1$
+    private static final String ELEMENT_KEY_DERIVATION_INTERCEPTOR = "keyDerivationInterceptor"; //$NON-NLS-1$
     private static final String ELEMENT_LAUNCH_DIAGNOSTIC_UI_HANDLER = "launchDiagnosticUiHandler"; //$NON-NLS-1$
     private static final String ELEMENT_LDAP_SERVICE = "ldapService"; //$NON-NLS-1$
     private static final String ELEMENT_LDAPS_SERVICE = "ldapsService"; //$NON-NLS-1$
@@ -111,6 +112,7 @@ public class ServerXmlIOV154 extends Abs
     private static final String ELEMENT_NTP_SERVER = "ntpServer"; //$NON-NLS-1$
     private static final String ELEMENT_OPERATIONAL_ATTRIBUTE_INTERCEPTOR = "operationalAttributeInterceptor"; //$NON-NLS-1$
     private static final String ELEMENT_PARTITIONS = "partitions"; //$NON-NLS-1$
+    private static final String ELEMENT_PASSWORD_POLICY_INTERCEPTOR = "passwordPolicyInterceptor"; //$NON-NLS-1$
     private static final String ELEMENT_PROPERTY = "property"; //$NON-NLS-1$
     private static final String ELEMENT_REPLICATION_INTERCEPTOR = "replicationInterceptor"; //$NON-NLS-1$
     private static final String ELEMENT_SASL_MECHANISM_HANDLERS = "saslMechanismHandlers"; //$NON-NLS-1$
@@ -621,6 +623,16 @@ public class ServerXmlIOV154 extends Abs
                 {
                     serverConfiguration.addInterceptor( InterceptorEnum.OPERATIONAL_ATTRIBUTE );
                 }
+                else if ( ServerXmlIOV154.ELEMENT_PASSWORD_POLICY_INTERCEPTOR
+                    .equalsIgnoreCase( interceptorElementName ) )
+                {
+                    serverConfiguration.addInterceptor( InterceptorEnum.PASSWORD_POLICY );
+                }
+                else if ( ServerXmlIOV154.ELEMENT_KEY_DERIVATION_INTERCEPTOR
+                    .equalsIgnoreCase( interceptorElementName ) )
+                {
+                    serverConfiguration.addInterceptor( InterceptorEnum.KEY_DERIVATION );
+                }
                 else if ( ServerXmlIOV154.ELEMENT_SCHEMA_INTERCEPTOR.equalsIgnoreCase( interceptorElementName ) )
                 {
                     serverConfiguration.addInterceptor( InterceptorEnum.SCHEMA );
@@ -1527,54 +1539,54 @@ public class ServerXmlIOV154 extends Abs
     {
         List<InterceptorEnum> interceptors = serverConfiguration.getInterceptors();
 
-        if ( interceptors.contains( InterceptorEnum.NORMALIZATION ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV154.ELEMENT_NORMALIZATION_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.AUTHENTICATION ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV154.ELEMENT_AUTHENTICATION_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.ACI_AUTHORIZATION ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV154.ELEMENT_ACI_AUTHORIZATION_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.DEFAULT_AUTHORIZATION ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV154.ELEMENT_DEFAULT_AUTHORIZATION_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.EXCEPTION ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV154.ELEMENT_EXCEPTION_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.OPERATIONAL_ATTRIBUTE ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV154.ELEMENT_OPERATIONAL_ATTRIBUTE_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.SCHEMA ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV154.ELEMENT_SCHEMA_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.SUBENTRY ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV154.ELEMENT_SUBENTRY_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.COLLECTIVE_ATTRIBUTE ) )
+        for ( InterceptorEnum interceptor : interceptors )
         {
-            interceptorsElement.addElement( ServerXmlIOV154.ELEMENT_COLLECTIVE_ATTRIBUTE_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.EVENT ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV154.ELEMENT_EVENT_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.TRIGGER ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV154.ELEMENT_TRIGGER_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.REPLICATION ) )
-        {
-            // TODO support replication interceptor
-            //            interceptorsElement.addElement( "replicationInterceptor" );
+            switch ( interceptor )
+            {
+                case NORMALIZATION:
+                    interceptorsElement.addElement( ServerXmlIOV154.ELEMENT_NORMALIZATION_INTERCEPTOR );
+                    break;
+                case AUTHENTICATION:
+                    interceptorsElement.addElement( ServerXmlIOV154.ELEMENT_AUTHENTICATION_INTERCEPTOR );
+                    break;
+                case ACI_AUTHORIZATION:
+                    interceptorsElement.addElement( ServerXmlIOV154.ELEMENT_ACI_AUTHORIZATION_INTERCEPTOR );
+                    break;
+                case DEFAULT_AUTHORIZATION:
+                    interceptorsElement.addElement( ServerXmlIOV154.ELEMENT_DEFAULT_AUTHORIZATION_INTERCEPTOR );
+                    break;
+                case EXCEPTION:
+                    interceptorsElement.addElement( ServerXmlIOV154.ELEMENT_EXCEPTION_INTERCEPTOR );
+                    break;
+                case OPERATIONAL_ATTRIBUTE:
+                    interceptorsElement.addElement( ServerXmlIOV154.ELEMENT_OPERATIONAL_ATTRIBUTE_INTERCEPTOR );
+                    break;
+                case PASSWORD_POLICY:
+                    interceptorsElement.addElement( ServerXmlIOV154.ELEMENT_PASSWORD_POLICY_INTERCEPTOR );
+                    break;
+                case KEY_DERIVATION:
+                    interceptorsElement.addElement( ServerXmlIOV154.ELEMENT_KEY_DERIVATION_INTERCEPTOR );
+                    break;
+                case SCHEMA:
+                    interceptorsElement.addElement( ServerXmlIOV154.ELEMENT_SCHEMA_INTERCEPTOR );
+                    break;
+                case SUBENTRY:
+                    interceptorsElement.addElement( ServerXmlIOV154.ELEMENT_SUBENTRY_INTERCEPTOR );
+                    break;
+                case COLLECTIVE_ATTRIBUTE:
+                    interceptorsElement.addElement( ServerXmlIOV154.ELEMENT_COLLECTIVE_ATTRIBUTE_INTERCEPTOR );
+                    break;
+                case EVENT:
+                    interceptorsElement.addElement( ServerXmlIOV154.ELEMENT_EVENT_INTERCEPTOR );
+                    break;
+                case TRIGGER:
+                    interceptorsElement.addElement( ServerXmlIOV154.ELEMENT_TRIGGER_INTERCEPTOR );
+                    break;
+                case REPLICATION:
+                    // TODO support replication interceptor
+                    //            interceptorsElement.addElement( "replicationInterceptor" );
+                    break;
+            }
         }
     }
 

Modified: directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v154/messages.properties
URL: http://svn.apache.org/viewvc/directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v154/messages.properties?rev=995726&r1=995725&r2=995726&view=diff
==============================================================================
--- directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v154/messages.properties (original)
+++ directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v154/messages.properties Fri Sep 10 09:54:28 2010
@@ -21,6 +21,7 @@ ExtendedOperationEnum.Shutdown=Graceful 
 ExtendedOperationEnum.ShutdownDescription=The Graceful Shutdown TLS extended operation allows an application to gracefully manage server's that must go offline or shutdown with proper notification to bound clients.
 ExtendedOperationEnum.StartTLS=Start TLS
 ExtendedOperationEnum.StartTLSDescription=The Start TLS extended operation allows an application to serialize secure and plain requests against an LDAP server on a single connection.
+
 InterceptorEnum.ACIAuthorization=ACI Authorization
 InterceptorEnum.ACIAuthorizationDescription=An ACI based authorization interceptor.
 InterceptorEnum.Authentication=Authentication
@@ -33,10 +34,16 @@ InterceptorEnum.Event=Event
 InterceptorEnum.EventDescription=An interceptor based serivice for notifying NamingListeners of EventContext and EventDirContext changes.
 InterceptorEnum.Exception=Exception
 InterceptorEnum.ExceptionDescription=An interceptor that detects any operations that breaks integrity of Partition and terminates the current invocation chain by throwing a NamingException. Those operations include when an entry already exists at a DN and is added once again to the same DN.
+InterceptorEnum.KeyDerivation=Key Derivation
+InterceptorEnum.KeyDerivationDescription=An interceptor that creates symmetric Kerberos keys for users.  When a 'userPassword' is added or modified, the 'userPassword' and 'krb5PrincipalName' are used to derive Kerberos keys.  If the 'userPassword' is the special keyword 'randomKey', a random key is generated and used as the Kerberos key.
 InterceptorEnum.Normalization=Normalization
 InterceptorEnum.NormalizationDescription=A name normalization interceptor. This interceptor makes sure all relative and distinguished names are normalized before calls are made against the respective interface methods on PartitionNexus.
 InterceptorEnum.OperationalAttribute=Operational Attribute
 InterceptorEnum.OperationalAttributeDescription=An interceptor that adds or modifies the default attributes of entries. There are four default attributes for now; 'creatorsName', 'createTimestamp', 'modifiersName', 'modifyTimestamp'.
+InterceptorEnum.PasswordPolicy=Password Policy
+InterceptorEnum.PasswordPolicyDescription=An interceptor that enforces password policy for users
+InterceptorEnum.Referral=Referral
+InterceptorEnum.ReferralDescription=An interceptor which is responsible referral handling behaviors.  It manages  referral handling behavior when the Context\#REFERRAL is implicitly or explicitly set to "ignore", when set to "throw" and when set to "follow".
 InterceptorEnum.Replication=Replication
 InterceptorEnum.ReplicationDescription=An interceptor that intercepts LDAP operations and propagates the changes occurred by the operations into other ReplicaIds so the DIT of each ReplicaId in the cluster has the same content without any conflict.
 InterceptorEnum.Schema=Schema
@@ -45,9 +52,11 @@ InterceptorEnum.SubEntry=Sub-Entry
 InterceptorEnum.SubEntryDescription=The sub-entry interceptor service which is responsible for filtering out sub-entries on search operations and injecting operational attributes.
 InterceptorEnum.Trigger=Trigger
 InterceptorEnum.TriggerDescription=The trigger interceptor based on the Trigger Specification.
+
 SaslQualityOfProtectionEnum.AuthenticationOnly=auth (Authentication only)
 SaslQualityOfProtectionEnum.AuthenticationWithIntegrityAndPrivacyProtection=auth-conf (Authentication with integrity and privacy protection)
 SaslQualityOfProtectionEnum.AuthenticationWithIntegrityProtection=auth-int (Authentication with integrity protection)
+
 ServerXmlIOV154.ErrorAccessControlEnabled=Unable to find the 'accessControlEnabled' attribute for the default directory service bean.
 ServerXmlIOV154.ErrorAllowAnonymousAccess=Unable to find the 'allowAnonymousAccess' attribute for the 'ldapService' bean.
 ServerXmlIOV154.ErrorCacheSize=Unable to find the 'cacheSize' attribute for a partition.

Modified: directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v155/InterceptorEnum.java
URL: http://svn.apache.org/viewvc/directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v155/InterceptorEnum.java?rev=995726&r1=995725&r2=995726&view=diff
==============================================================================
--- directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v155/InterceptorEnum.java (original)
+++ directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v155/InterceptorEnum.java Fri Sep 10 09:54:28 2010
@@ -35,7 +35,7 @@ public enum InterceptorEnum
     AUTHENTICATION(
         Messages.getString( "InterceptorEnum.Authentication" ), Messages.getString( "InterceptorEnum.AuthenticationDescription" )), //$NON-NLS-1$ //$NON-NLS-2$
 
-    /** The Authentication Interceptor */
+    /** The Referral Interceptor */
     REFERRAL(
         Messages.getString( "InterceptorEnum.Referral" ), Messages.getString( "InterceptorEnum.ReferralDescription" )), //$NON-NLS-1$ //$NON-NLS-2$
 
@@ -55,6 +55,14 @@ public enum InterceptorEnum
     OPERATIONAL_ATTRIBUTE(
         Messages.getString( "InterceptorEnum.OperationalAttribute" ), Messages.getString( "InterceptorEnum.OperationalAttributeDescription" )), //$NON-NLS-1$ //$NON-NLS-2$
 
+    /** The Password Policy Interceptor */
+    PASSWORD_POLICY(Messages.getString( "InterceptorEnum.PasswordPolicy" ), Messages
+        .getString( "InterceptorEnum.PasswordPolicyDescription" )),
+
+    /** The KeyDerivation Interceptor */
+    KEY_DERIVATION(Messages.getString( "InterceptorEnum.KeyDerivation" ), Messages
+        .getString( "InterceptorEnum.KeyDerivationDescription" )),
+
     /** The Schema Interceptor */
     SCHEMA(Messages.getString( "InterceptorEnum.Schema" ), Messages.getString( "InterceptorEnum.SchemaDescription" )), //$NON-NLS-1$ //$NON-NLS-2$
 

Modified: directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v155/ServerXmlIOV155.java
URL: http://svn.apache.org/viewvc/directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v155/ServerXmlIOV155.java?rev=995726&r1=995725&r2=995726&view=diff
==============================================================================
--- directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v155/ServerXmlIOV155.java (original)
+++ directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v155/ServerXmlIOV155.java Fri Sep 10 09:54:28 2010
@@ -98,6 +98,7 @@ public class ServerXmlIOV155 extends Abs
     private static final String ELEMENT_JDBM_INDEX = "jdbmIndex"; //$NON-NLS-1$
     private static final String ELEMENT_JDBM_PARTITION = "jdbmPartition"; //$NON-NLS-1$
     private static final String ELEMENT_KDC_SERVER = "kdcServer"; //$NON-NLS-1$
+    private static final String ELEMENT_KEY_DERIVATION_INTERCEPTOR = "keyDerivationInterceptor"; //$NON-NLS-1$
     private static final String ELEMENT_LAUNCH_DIAGNOSTIC_UI_HANDLER = "launchDiagnosticUiHandler"; //$NON-NLS-1$
     private static final String ELEMENT_LDAP_SERVER = "ldapServer"; //$NON-NLS-1$
     private static final String ELEMENT_NORMALIZATION_INTERCEPTOR = "normalizationInterceptor"; //$NON-NLS-1$
@@ -105,6 +106,7 @@ public class ServerXmlIOV155 extends Abs
     private static final String ELEMENT_NTP_SERVER = "ntpServer"; //$NON-NLS-1$
     private static final String ELEMENT_OPERATIONAL_ATTRIBUTE_INTERCEPTOR = "operationalAttributeInterceptor"; //$NON-NLS-1$
     private static final String ELEMENT_PARTITIONS = "partitions"; //$NON-NLS-1$
+    private static final String ELEMENT_PASSWORD_POLICY_INTERCEPTOR = "passwordPolicyInterceptor"; //$NON-NLS-1$
     private static final String ELEMENT_REFERRAL_INTERCEPTOR = "referralInterceptor"; //$NON-NLS-1$
     private static final String ELEMENT_REPLICATION_INTERCEPTOR = "replicationInterceptor"; //$NON-NLS-1$
     private static final String ELEMENT_SASL_MECHANISM_HANDLERS = "saslMechanismHandlers"; //$NON-NLS-1$
@@ -584,6 +586,16 @@ public class ServerXmlIOV155 extends Abs
                 {
                     serverConfiguration.addInterceptor( InterceptorEnum.OPERATIONAL_ATTRIBUTE );
                 }
+                else if ( ServerXmlIOV155.ELEMENT_PASSWORD_POLICY_INTERCEPTOR
+                    .equalsIgnoreCase( interceptorElementName ) )
+                {
+                    serverConfiguration.addInterceptor( InterceptorEnum.PASSWORD_POLICY );
+                }
+                else if ( ServerXmlIOV155.ELEMENT_KEY_DERIVATION_INTERCEPTOR
+                    .equalsIgnoreCase( interceptorElementName ) )
+                {
+                    serverConfiguration.addInterceptor( InterceptorEnum.KEY_DERIVATION );
+                }
                 else if ( ServerXmlIOV155.ELEMENT_SCHEMA_INTERCEPTOR.equalsIgnoreCase( interceptorElementName ) )
                 {
                     serverConfiguration.addInterceptor( InterceptorEnum.SCHEMA );
@@ -1398,58 +1410,57 @@ public class ServerXmlIOV155 extends Abs
     {
         List<InterceptorEnum> interceptors = serverConfiguration.getInterceptors();
 
-        if ( interceptors.contains( InterceptorEnum.NORMALIZATION ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV155.ELEMENT_NORMALIZATION_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.AUTHENTICATION ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV155.ELEMENT_AUTHENTICATION_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.REFERRAL ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV155.ELEMENT_REFERRAL_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.ACI_AUTHORIZATION ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV155.ELEMENT_ACI_AUTHORIZATION_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.DEFAULT_AUTHORIZATION ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV155.ELEMENT_DEFAULT_AUTHORIZATION_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.EXCEPTION ) )
+        for ( InterceptorEnum interceptor : interceptors )
         {
-            interceptorsElement.addElement( ServerXmlIOV155.ELEMENT_EXCEPTION_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.OPERATIONAL_ATTRIBUTE ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV155.ELEMENT_OPERATIONAL_ATTRIBUTE_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.SCHEMA ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV155.ELEMENT_SCHEMA_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.SUBENTRY ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV155.ELEMENT_SUBENTRY_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.COLLECTIVE_ATTRIBUTE ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV155.ELEMENT_COLLECTIVE_ATTRIBUTE_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.EVENT ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV155.ELEMENT_EVENT_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.TRIGGER ) )
-        {
-            interceptorsElement.addElement( ServerXmlIOV155.ELEMENT_TRIGGER_INTERCEPTOR );
-        }
-        if ( interceptors.contains( InterceptorEnum.REPLICATION ) )
-        {
-            // TODO support replication interceptor
-            //            interceptorsElement.addElement( "replicationInterceptor" );
+            switch ( interceptor )
+            {
+                case NORMALIZATION:
+                    interceptorsElement.addElement( ServerXmlIOV155.ELEMENT_NORMALIZATION_INTERCEPTOR );
+                    break;
+                case AUTHENTICATION:
+                    interceptorsElement.addElement( ServerXmlIOV155.ELEMENT_AUTHENTICATION_INTERCEPTOR );
+                    break;
+                case REFERRAL:
+                    interceptorsElement.addElement( ServerXmlIOV155.ELEMENT_REFERRAL_INTERCEPTOR );
+                    break;
+                case ACI_AUTHORIZATION:
+                    interceptorsElement.addElement( ServerXmlIOV155.ELEMENT_ACI_AUTHORIZATION_INTERCEPTOR );
+                    break;
+                case DEFAULT_AUTHORIZATION:
+                    interceptorsElement.addElement( ServerXmlIOV155.ELEMENT_DEFAULT_AUTHORIZATION_INTERCEPTOR );
+                    break;
+                case EXCEPTION:
+                    interceptorsElement.addElement( ServerXmlIOV155.ELEMENT_EXCEPTION_INTERCEPTOR );
+                    break;
+                case OPERATIONAL_ATTRIBUTE:
+                    interceptorsElement.addElement( ServerXmlIOV155.ELEMENT_OPERATIONAL_ATTRIBUTE_INTERCEPTOR );
+                    break;
+                case PASSWORD_POLICY:
+                    interceptorsElement.addElement( ServerXmlIOV155.ELEMENT_PASSWORD_POLICY_INTERCEPTOR );
+                    break;
+                case KEY_DERIVATION:
+                    interceptorsElement.addElement( ServerXmlIOV155.ELEMENT_KEY_DERIVATION_INTERCEPTOR );
+                    break;
+                case SCHEMA:
+                    interceptorsElement.addElement( ServerXmlIOV155.ELEMENT_SCHEMA_INTERCEPTOR );
+                    break;
+                case SUBENTRY:
+                    interceptorsElement.addElement( ServerXmlIOV155.ELEMENT_SUBENTRY_INTERCEPTOR );
+                    break;
+                case COLLECTIVE_ATTRIBUTE:
+                    interceptorsElement.addElement( ServerXmlIOV155.ELEMENT_COLLECTIVE_ATTRIBUTE_INTERCEPTOR );
+                    break;
+                case EVENT:
+                    interceptorsElement.addElement( ServerXmlIOV155.ELEMENT_EVENT_INTERCEPTOR );
+                    break;
+                case TRIGGER:
+                    interceptorsElement.addElement( ServerXmlIOV155.ELEMENT_TRIGGER_INTERCEPTOR );
+                    break;
+                case REPLICATION:
+                    // TODO support replication interceptor
+                    //            interceptorsElement.addElement( "replicationInterceptor" );
+                    break;
+            }
         }
     }
 

Modified: directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v155/messages.properties
URL: http://svn.apache.org/viewvc/directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v155/messages.properties?rev=995726&r1=995725&r2=995726&view=diff
==============================================================================
--- directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v155/messages.properties (original)
+++ directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v155/messages.properties Fri Sep 10 09:54:28 2010
@@ -21,6 +21,7 @@ ExtendedOperationEnum.Shutdown=Graceful 
 ExtendedOperationEnum.ShutdownDescription=The Graceful Shutdown TLS extended operation allows an application to gracefully manage server's that must go offline or shutdown with proper notification to bound clients.
 ExtendedOperationEnum.StartTLS=Start TLS
 ExtendedOperationEnum.StartTLSDescription=The Start TLS extended operation allows an application to serialize secure and plain requests against an LDAP server on a single connection.
+
 InterceptorEnum.ACIAuthorization=ACI Authorization
 InterceptorEnum.ACIAuthorizationDescription=An ACI based authorization interceptor.
 InterceptorEnum.Authentication=Authentication
@@ -33,10 +34,14 @@ InterceptorEnum.Event=Event
 InterceptorEnum.EventDescription=An interceptor based serivice for notifying NamingListeners of EventContext and EventDirContext changes.
 InterceptorEnum.Exception=Exception
 InterceptorEnum.ExceptionDescription=An interceptor that detects any operations that breaks integrity of Partition and terminates the current invocation chain by throwing a NamingException. Those operations include when an entry already exists at a DN and is added once again to the same DN.
+InterceptorEnum.KeyDerivation=Key Derivation
+InterceptorEnum.KeyDerivationDescription=An interceptor that creates symmetric Kerberos keys for users.  When a 'userPassword' is added or modified, the 'userPassword' and 'krb5PrincipalName' are used to derive Kerberos keys.  If the 'userPassword' is the special keyword 'randomKey', a random key is generated and used as the Kerberos key.
 InterceptorEnum.Normalization=Normalization
 InterceptorEnum.NormalizationDescription=A name normalization interceptor. This interceptor makes sure all relative and distinguished names are normalized before calls are made against the respective interface methods on PartitionNexus.
 InterceptorEnum.OperationalAttribute=Operational Attribute
 InterceptorEnum.OperationalAttributeDescription=An interceptor that adds or modifies the default attributes of entries. There are four default attributes for now; 'creatorsName', 'createTimestamp', 'modifiersName', 'modifyTimestamp'.
+InterceptorEnum.PasswordPolicy=Password Policy
+InterceptorEnum.PasswordPolicyDescription=An interceptor that enforces password policy for users
 InterceptorEnum.Referral=Referral
 InterceptorEnum.ReferralDescription=An interceptor which is responsible referral handling behaviors.  It manages  referral handling behavior when the Context\#REFERRAL is implicitly or explicitly set to "ignore", when set to "throw" and when set to "follow".
 InterceptorEnum.Replication=Replication
@@ -47,9 +52,11 @@ InterceptorEnum.SubEntry=Sub-Entry
 InterceptorEnum.SubEntryDescription=The sub-entry interceptor service which is responsible for filtering out sub-entries on search operations and injecting operational attributes.
 InterceptorEnum.Trigger=Trigger
 InterceptorEnum.TriggerDescription=The trigger interceptor based on the Trigger Specification.
+
 SaslQualityOfProtectionEnum.AuthenticationOnly=auth (Authentication only)
 SaslQualityOfProtectionEnum.AuthenticationWithIntegrityAndPrivacyProtection=auth-conf (Authentication with integrity and privacy protection)
 SaslQualityOfProtectionEnum.AuthenticationWithIntegrityProtection=auth-int (Authentication with integrity protection)
+
 ServerXmlIOV155.ErrorAccessControlEnabled=Unable to find the 'accessControlEnabled' attribute for the default directory service bean.
 ServerXmlIOV155.ErrorAllowAnonymousAccess=Unable to find the 'allowAnonymousAccess' attribute for the 'ldapService' bean.
 ServerXmlIOV155.ErrorCacheSize=Unable to find the 'cacheSize' attribute for a partition.

Modified: directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v156/InterceptorEnum.java
URL: http://svn.apache.org/viewvc/directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v156/InterceptorEnum.java?rev=995726&r1=995725&r2=995726&view=diff
==============================================================================
--- directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v156/InterceptorEnum.java (original)
+++ directory/studio/trunk/plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/model/v156/InterceptorEnum.java Fri Sep 10 09:54:28 2010
@@ -35,7 +35,7 @@ public enum InterceptorEnum
     AUTHENTICATION(
         Messages.getString( "InterceptorEnum.Authentication" ), Messages.getString( "InterceptorEnum.AuthenticationDescription" )), //$NON-NLS-1$ //$NON-NLS-2$
 
-    /** The Authentication Interceptor */
+    /** The Referral Interceptor */
     REFERRAL(
         Messages.getString( "InterceptorEnum.Referral" ), Messages.getString( "InterceptorEnum.ReferralDescription" )), //$NON-NLS-1$ //$NON-NLS-2$
 
@@ -55,6 +55,14 @@ public enum InterceptorEnum
     OPERATIONAL_ATTRIBUTE(
         Messages.getString( "InterceptorEnum.OperationalAttribute" ), Messages.getString( "InterceptorEnum.OperationalAttributeDescription" )), //$NON-NLS-1$ //$NON-NLS-2$
 
+    /** The Password Policy Interceptor */
+    PASSWORD_POLICY(Messages.getString( "InterceptorEnum.PasswordPolicy" ), Messages
+        .getString( "InterceptorEnum.PasswordPolicyDescription" )),
+
+    /** The KeyDerivation Interceptor */
+    KEY_DERIVATION(Messages.getString( "InterceptorEnum.KeyDerivation" ), Messages
+        .getString( "InterceptorEnum.KeyDerivationDescription" )),
+
     /** The Schema Interceptor */
     SCHEMA(Messages.getString( "InterceptorEnum.Schema" ), Messages.getString( "InterceptorEnum.SchemaDescription" )), //$NON-NLS-1$ //$NON-NLS-2$
 



Mime
View raw message