You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by pa...@apache.org on 2010/03/23 17:15:27 UTC

svn commit: r926643 [3/6] - in /directory/studio/trunk/apacheds-configuration/src/main: java/org/apache/directory/studio/apacheds/configuration/ java/org/apache/directory/studio/apacheds/configuration/editor/ java/org/apache/directory/studio/apacheds/c...

Added: directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/PartitionsMasterDetailsBlock.java
URL: http://svn.apache.org/viewvc/directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/PartitionsMasterDetailsBlock.java?rev=926643&view=auto
==============================================================================
--- directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/PartitionsMasterDetailsBlock.java (added)
+++ directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/PartitionsMasterDetailsBlock.java Tue Mar 23 16:15:26 2010
@@ -0,0 +1,348 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  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. 
+ *  
+ */
+package org.apache.directory.studio.apacheds.configuration.editor.v156;
+
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.apache.directory.studio.apacheds.configuration.ApacheDSConfigurationPlugin;
+import org.apache.directory.studio.apacheds.configuration.ApacheDSConfigurationPluginConstants;
+import org.apache.directory.studio.apacheds.configuration.editor.ServerConfigurationEditor;
+import org.apache.directory.studio.apacheds.configuration.model.v156.IndexedAttribute;
+import org.apache.directory.studio.apacheds.configuration.model.v156.Partition;
+import org.apache.directory.studio.apacheds.configuration.model.v156.ServerConfigurationV156;
+import org.eclipse.jface.action.Action;
+import org.eclipse.jface.viewers.ArrayContentProvider;
+import org.eclipse.jface.viewers.ISelectionChangedListener;
+import org.eclipse.jface.viewers.LabelProvider;
+import org.eclipse.jface.viewers.SelectionChangedEvent;
+import org.eclipse.jface.viewers.StructuredSelection;
+import org.eclipse.jface.viewers.TableViewer;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.SelectionAdapter;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Table;
+import org.eclipse.ui.forms.DetailsPart;
+import org.eclipse.ui.forms.IManagedForm;
+import org.eclipse.ui.forms.MasterDetailsBlock;
+import org.eclipse.ui.forms.SectionPart;
+import org.eclipse.ui.forms.editor.FormPage;
+import org.eclipse.ui.forms.widgets.FormToolkit;
+import org.eclipse.ui.forms.widgets.ScrolledForm;
+import org.eclipse.ui.forms.widgets.Section;
+
+
+/**
+ * This class represents the Partitions Master/Details Block used in the Partitions Page.
+ *
+ * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
+ * @version $Rev$, $Date$
+ */
+public class PartitionsMasterDetailsBlock extends MasterDetailsBlock
+{
+    /** The associated page */
+    private FormPage page;
+
+    /** The input Server Configuration */
+    private ServerConfigurationV156 serverConfiguration;
+
+    /** The Interceptors List */
+    private List<Partition> partitions;
+
+    /** The Details Page */
+    private PartitionDetailsPage detailsPage;
+
+    private static final String NEW_ID = Messages.getString( "PartitionsMasterDetailsBlock.NewPartition" ); //$NON-NLS-1$
+
+    // UI Fields
+    private TableViewer viewer;
+    private Button addButton;
+    private Button deleteButton;
+
+
+    /**
+     * Creates a new instance of PartitionsMasterDetailsBlock.
+     *
+     * @param page
+     *      the associated page
+     */
+    public PartitionsMasterDetailsBlock( FormPage page )
+    {
+        this.page = page;
+        serverConfiguration = ( ServerConfigurationV156 ) ( ( ServerConfigurationEditor ) page.getEditor() )
+            .getServerConfiguration();
+        partitions = serverConfiguration.getPartitions();
+    }
+
+
+    /* (non-Javadoc)
+     * @see org.eclipse.ui.forms.MasterDetailsBlock#createMasterPart(org.eclipse.ui.forms.IManagedForm, org.eclipse.swt.widgets.Composite)
+     */
+    protected void createMasterPart( final IManagedForm managedForm, Composite parent )
+    {
+        FormToolkit toolkit = managedForm.getToolkit();
+
+        // Creating the Section
+        Section section = toolkit.createSection( parent, Section.TITLE_BAR );
+        section.setText( Messages.getString( "PartitionsMasterDetailsBlock.AllPartitions" ) ); //$NON-NLS-1$
+        section.marginWidth = 10;
+        section.marginHeight = 5;
+        Composite client = toolkit.createComposite( section, SWT.WRAP );
+        GridLayout layout = new GridLayout();
+        layout.numColumns = 2;
+        layout.makeColumnsEqualWidth = false;
+        layout.marginWidth = 2;
+        layout.marginHeight = 2;
+        client.setLayout( layout );
+        toolkit.paintBordersFor( client );
+        section.setClient( client );
+
+        // Creatig the Table and Table Viewer
+        Table table = toolkit.createTable( client, SWT.NULL );
+        GridData gd = new GridData( SWT.FILL, SWT.FILL, true, true, 1, 2 );
+        gd.heightHint = 20;
+        gd.widthHint = 100;
+        table.setLayoutData( gd );
+        final SectionPart spart = new SectionPart( section );
+        managedForm.addPart( spart );
+        viewer = new TableViewer( table );
+        viewer.addSelectionChangedListener( new ISelectionChangedListener()
+        {
+            public void selectionChanged( SelectionChangedEvent event )
+            {
+                managedForm.fireSelectionChanged( spart, event.getSelection() );
+            }
+        } );
+        viewer.setContentProvider( new ArrayContentProvider() );
+        viewer.setLabelProvider( new LabelProvider()
+        {
+            public Image getImage( Object element )
+            {
+
+                return ApacheDSConfigurationPlugin
+                    .getDefault()
+                    .getImage(
+                        ( ( Partition ) element ).isSystemPartition() ? ApacheDSConfigurationPluginConstants.IMG_PARTITION_SYSTEM
+                            : ApacheDSConfigurationPluginConstants.IMG_PARTITION );
+            }
+        } );
+
+        // Creating the button(s)
+        addButton = toolkit.createButton( client, Messages.getString( "PartitionsMasterDetailsBlock.Add" ), SWT.PUSH ); //$NON-NLS-1$
+        addButton.setLayoutData( new GridData( SWT.FILL, SWT.BEGINNING, false, false ) );
+
+        deleteButton = toolkit.createButton( client,
+            Messages.getString( "PartitionsMasterDetailsBlock.Delete" ), SWT.PUSH ); //$NON-NLS-1$
+        deleteButton.setEnabled( false );
+        deleteButton.setLayoutData( new GridData( SWT.FILL, SWT.BEGINNING, false, false ) );
+
+        initFromInput();
+        addListeners();
+    }
+
+
+    /**
+     * Initializes the page with the Editor input.
+     */
+    private void initFromInput()
+    {
+        viewer.setInput( partitions );
+    }
+
+
+    /**
+     * Add listeners to UI fields.
+     */
+    private void addListeners()
+    {
+        viewer.addSelectionChangedListener( new ISelectionChangedListener()
+        {
+            public void selectionChanged( SelectionChangedEvent event )
+            {
+                viewer.refresh();
+
+                deleteButton.setEnabled( !event.getSelection().isEmpty() );
+                StructuredSelection selection = ( StructuredSelection ) viewer.getSelection();
+                if ( !selection.isEmpty() )
+                {
+                    Partition partition = ( Partition ) selection.getFirstElement();
+                    if ( partition.isSystemPartition() )
+                    {
+                        deleteButton.setEnabled( false );
+                    }
+                }
+            }
+        } );
+
+        addButton.addSelectionListener( new SelectionAdapter()
+        {
+            public void widgetSelected( SelectionEvent e )
+            {
+                Partition newPartition = new Partition( getNewId() );
+
+                // Default values
+                newPartition.setCacheSize( 100 );
+                newPartition.setEnableOptimizer( true );
+                newPartition.setSynchronizationOnWrite( true );
+                List<IndexedAttribute> indexedAttributes = new ArrayList<IndexedAttribute>();
+                indexedAttributes.add( new IndexedAttribute( "1.3.6.1.4.1.18060.0.4.1.2.1", 100 ) ); //$NON-NLS-1$
+                indexedAttributes.add( new IndexedAttribute( "1.3.6.1.4.1.18060.0.4.1.2.2", 100 ) ); //$NON-NLS-1$
+                indexedAttributes.add( new IndexedAttribute( "1.3.6.1.4.1.18060.0.4.1.2.3", 100 ) ); //$NON-NLS-1$
+                indexedAttributes.add( new IndexedAttribute( "1.3.6.1.4.1.18060.0.4.1.2.4", 100 ) ); //$NON-NLS-1$
+                indexedAttributes.add( new IndexedAttribute( "1.3.6.1.4.1.18060.0.4.1.2.5", 10 ) ); //$NON-NLS-1$
+                indexedAttributes.add( new IndexedAttribute( "1.3.6.1.4.1.18060.0.4.1.2.6", 10 ) ); //$NON-NLS-1$
+                indexedAttributes.add( new IndexedAttribute( "1.3.6.1.4.1.18060.0.4.1.2.7", 10 ) ); //$NON-NLS-1$
+                indexedAttributes.add( new IndexedAttribute( "dc", 100 ) ); //$NON-NLS-1$
+                indexedAttributes.add( new IndexedAttribute( "ou", 100 ) ); //$NON-NLS-1$
+                indexedAttributes.add( new IndexedAttribute( "krb5PrincipalName", 100 ) ); //$NON-NLS-1$
+                indexedAttributes.add( new IndexedAttribute( "uid", 100 ) ); //$NON-NLS-1$
+                indexedAttributes.add( new IndexedAttribute( "objectClass", 100 ) ); //$NON-NLS-1$
+                newPartition.setIndexedAttributes( indexedAttributes );
+
+                partitions.add( newPartition );
+                viewer.refresh();
+                viewer.setSelection( new StructuredSelection( newPartition ) );
+                setEditorDirty();
+            }
+        } );
+
+        deleteButton.addSelectionListener( new SelectionAdapter()
+        {
+            public void widgetSelected( SelectionEvent e )
+            {
+                StructuredSelection selection = ( StructuredSelection ) viewer.getSelection();
+                if ( !selection.isEmpty() )
+                {
+                    Partition partition = ( Partition ) selection.getFirstElement();
+                    if ( !partition.isSystemPartition() )
+                    {
+                        partitions.remove( partition );
+                        viewer.refresh();
+                        setEditorDirty();
+                    }
+                }
+            }
+        } );
+    }
+
+
+    /**
+     * Gets a new ID for a new Partition.
+     *
+     * @return 
+     *      a new ID for a new Partition
+     */
+    private String getNewId()
+    {
+        int counter = 1;
+        String name = NEW_ID;
+        boolean ok = false;
+
+        while ( !ok )
+        {
+            ok = true;
+            name = NEW_ID + counter;
+
+            for ( Partition partition : partitions )
+            {
+                if ( partition.getId().equalsIgnoreCase( name ) )
+                {
+                    ok = false;
+                }
+            }
+            counter++;
+        }
+
+        return name;
+    }
+
+
+    /* (non-Javadoc)
+     * @see org.eclipse.ui.forms.MasterDetailsBlock#createToolBarActions(org.eclipse.ui.forms.IManagedForm)
+     */
+    protected void createToolBarActions( IManagedForm managedForm )
+    {
+        final ScrolledForm form = managedForm.getForm();
+
+        // Horizontal layout Action
+        Action horizontalAction = new Action( "Horizontal layout", Action.AS_RADIO_BUTTON ) { //$NON-NLS-1$
+            public void run()
+            {
+                sashForm.setOrientation( SWT.HORIZONTAL );
+                form.reflow( true );
+            }
+        };
+        horizontalAction.setChecked( true );
+        horizontalAction.setToolTipText( "Horizontal Orientation" ); //$NON-NLS-1$
+        horizontalAction.setImageDescriptor( ApacheDSConfigurationPlugin.getDefault().getImageDescriptor(
+            ApacheDSConfigurationPluginConstants.IMG_HORIZONTAL_ORIENTATION ) );
+
+        // Vertical layout Action
+        Action verticalAction = new Action( "Vertical Orientation", Action.AS_RADIO_BUTTON ) { //$NON-NLS-1$
+            public void run()
+            {
+                sashForm.setOrientation( SWT.VERTICAL );
+                form.reflow( true );
+            }
+        };
+        verticalAction.setChecked( false );
+        verticalAction.setToolTipText( "Vertical Orientation" ); //$NON-NLS-1$
+        verticalAction.setImageDescriptor( ApacheDSConfigurationPlugin.getDefault().getImageDescriptor(
+            ApacheDSConfigurationPluginConstants.IMG_VERTICAL_ORIENTATION ) );
+
+        form.getToolBarManager().add( horizontalAction );
+        form.getToolBarManager().add( verticalAction );
+    }
+
+
+    /* (non-Javadoc)
+     * @see org.eclipse.ui.forms.MasterDetailsBlock#registerPages(org.eclipse.ui.forms.DetailsPart)
+     */
+    protected void registerPages( DetailsPart detailsPart )
+    {
+        detailsPage = new PartitionDetailsPage( this );
+        detailsPart.registerPage( Partition.class, detailsPage );
+    }
+
+
+    /**
+     * Sets the Editor as dirty.
+     */
+    public void setEditorDirty()
+    {
+        ( ( ServerConfigurationEditor ) page.getEditor() ).setDirty( true );
+    }
+
+
+    /**
+     * Saves the necessary elements to the input model.
+     */
+    public void save()
+    {
+        detailsPage.commit( true );
+        viewer.setInput( partitions );
+    }
+}

Added: directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/PartitionsPage.java
URL: http://svn.apache.org/viewvc/directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/PartitionsPage.java?rev=926643&view=auto
==============================================================================
--- directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/PartitionsPage.java (added)
+++ directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/PartitionsPage.java Tue Mar 23 16:15:26 2010
@@ -0,0 +1,88 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  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. 
+ *  
+ */
+package org.apache.directory.studio.apacheds.configuration.editor.v156;
+
+
+import org.apache.directory.studio.apacheds.configuration.ApacheDSConfigurationPluginConstants;
+import org.apache.directory.studio.apacheds.configuration.editor.SaveableFormPage;
+import org.apache.directory.studio.apacheds.configuration.editor.ServerConfigurationEditor;
+import org.eclipse.ui.PlatformUI;
+import org.eclipse.ui.forms.IManagedForm;
+import org.eclipse.ui.forms.editor.FormEditor;
+import org.eclipse.ui.forms.editor.FormPage;
+import org.eclipse.ui.forms.widgets.ScrolledForm;
+
+
+/**
+ * This class represents the Partitions Page of the Server Configuration Editor.
+ *
+ * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
+ * @version $Rev$, $Date$
+ */
+public class PartitionsPage extends FormPage implements SaveableFormPage
+{
+    /** The Page ID*/
+    public static final String ID = ServerConfigurationEditor.ID + ".V156.PartitionsPage"; //$NON-NLS-1$
+
+    /** The Page Title */
+    private static final String TITLE = Messages.getString( "PartitionsPage.Partitions" ); //$NON-NLS-1$
+
+    /** The Master/Details block */
+    private PartitionsMasterDetailsBlock masterDetailsBlock;
+
+
+    /**
+     * Creates a new instance of PartitionsPage.
+     *
+     * @param editor
+     *      the associated editor
+     */
+    public PartitionsPage( FormEditor editor )
+    {
+        super( editor, ID, TITLE );
+    }
+
+
+    /* (non-Javadoc)
+     * @see org.eclipse.ui.forms.editor.FormPage#createFormContent(org.eclipse.ui.forms.IManagedForm)
+     */
+    protected void createFormContent( IManagedForm managedForm )
+    {
+        PlatformUI.getWorkbench().getHelpSystem().setHelp( getPartControl(),
+            ApacheDSConfigurationPluginConstants.PLUGIN_ID + "." + "configuration_editor_156" ); //$NON-NLS-1$ //$NON-NLS-2$
+
+        ScrolledForm form = managedForm.getForm();
+        form.setText( Messages.getString( "PartitionsPage.Partitions" ) ); //$NON-NLS-1$
+        masterDetailsBlock = new PartitionsMasterDetailsBlock( this );
+        masterDetailsBlock.createContent( managedForm );
+    }
+
+
+    /* (non-Javadoc)
+     * @see org.apache.directory.studio.apacheds.configuration.editor.SavableWizardPage#save()
+     */
+    public void save()
+    {
+        if ( masterDetailsBlock != null )
+        {
+            masterDetailsBlock.save();
+        }
+    }
+}

Added: directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/AttributeValueDialog.java
URL: http://svn.apache.org/viewvc/directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/AttributeValueDialog.java?rev=926643&view=auto
==============================================================================
--- directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/AttributeValueDialog.java (added)
+++ directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/AttributeValueDialog.java Tue Mar 23 16:15:26 2010
@@ -0,0 +1,175 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  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. 
+ *  
+ */
+package org.apache.directory.studio.apacheds.configuration.editor.v156.dialogs;
+
+
+import org.eclipse.jface.dialogs.Dialog;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.ModifyEvent;
+import org.eclipse.swt.events.ModifyListener;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.swt.widgets.Text;
+import org.eclipse.ui.PlatformUI;
+
+
+/**
+ * This class implements the Dialog for Attribute Value.
+ *
+ * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
+ * @version $Rev$, $Date$
+ */
+public class AttributeValueDialog extends Dialog
+{
+    /** The Attribute Value Object */
+    private AttributeValueObject attributeValueObject;
+
+    /** The dirty flag */
+    private boolean dirty = false;
+
+    // UI Fields
+    private Text attributeText;
+    private Text valueText;
+
+
+    /**
+     * Creates a new instance of AttributeValueDialog.
+     */
+    public AttributeValueDialog( AttributeValueObject attributeValueObject )
+    {
+        super( PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell() );
+        this.attributeValueObject = attributeValueObject;
+    }
+
+
+    /* (non-Javadoc)
+     * @see org.eclipse.jface.window.Window#configureShell(org.eclipse.swt.widgets.Shell)
+     */
+    protected void configureShell( Shell newShell )
+    {
+        super.configureShell( newShell );
+        newShell.setText( Messages.getString( "AttributeValueDialog.AttributeValueDialog" ) ); //$NON-NLS-1$
+    }
+
+
+    /* (non-Javadoc)
+     * @see org.eclipse.jface.dialogs.Dialog#createDialogArea(org.eclipse.swt.widgets.Composite)
+     */
+    protected Control createDialogArea( Composite parent )
+    {
+        Composite composite = new Composite( parent, SWT.NONE );
+        GridLayout layout = new GridLayout( 2, false );
+        composite.setLayout( layout );
+        composite.setLayoutData( new GridData( GridData.FILL, GridData.FILL, true, true ) );
+
+        Label attributeLabel = new Label( composite, SWT.NONE );
+        attributeLabel.setText( Messages.getString( "AttributeValueDialog.Attribute" ) ); //$NON-NLS-1$
+
+        attributeText = new Text( composite, SWT.BORDER );
+        attributeText.setLayoutData( new GridData( SWT.FILL, SWT.NONE, true, false ) );
+
+        Label valueLabel = new Label( composite, SWT.NONE );
+        valueLabel.setText( Messages.getString( "AttributeValueDialog.Value" ) ); //$NON-NLS-1$
+
+        valueText = new Text( composite, SWT.BORDER );
+        valueText.setLayoutData( new GridData( SWT.FILL, SWT.NONE, true, false ) );
+
+        initFromInput();
+        addListeners();
+
+        return composite;
+    }
+
+
+    /**
+     * Initializes the UI from the input.
+     */
+    private void initFromInput()
+    {
+        String attribute = attributeValueObject.getAttribute();
+        attributeText.setText( ( attribute == null ) ? "" : attribute ); //$NON-NLS-1$
+
+        Object value = attributeValueObject.getValue();
+        valueText.setText( ( value == null ) ? "" : value.toString() ); //$NON-NLS-1$
+    }
+
+
+    /**
+     * Adds listeners to the UI Fields.
+     */
+    private void addListeners()
+    {
+        attributeText.addModifyListener( new ModifyListener()
+        {
+            public void modifyText( ModifyEvent e )
+            {
+                dirty = true;
+            }
+        } );
+
+        valueText.addModifyListener( new ModifyListener()
+        {
+            public void modifyText( ModifyEvent e )
+            {
+                dirty = true;
+            }
+        } );
+    }
+
+
+    /* (non-Javadoc)
+     * @see org.eclipse.jface.dialogs.Dialog#okPressed()
+     */
+    protected void okPressed()
+    {
+        attributeValueObject.setId( attributeText.getText() );
+        attributeValueObject.setValue( valueText.getText() );
+
+        super.okPressed();
+    }
+
+
+    /**
+     * Gets the Attribute Value Object.
+     *
+     * @return
+     *      the Attribute Value Object
+     */
+    public AttributeValueObject getAttributeValueObject()
+    {
+        return attributeValueObject;
+    }
+
+
+    /**
+     * Returns the dirty flag of the dialog.
+     *
+     * @return
+     *      the dirty flag of the dialog
+     */
+    public boolean isDirty()
+    {
+        return dirty;
+    }
+}

Added: directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/AttributeValueObject.java
URL: http://svn.apache.org/viewvc/directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/AttributeValueObject.java?rev=926643&view=auto
==============================================================================
--- directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/AttributeValueObject.java (added)
+++ directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/AttributeValueObject.java Tue Mar 23 16:15:26 2010
@@ -0,0 +1,108 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  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. 
+ *  
+ */
+package org.apache.directory.studio.apacheds.configuration.editor.v156.dialogs;
+
+
+/**
+ * This class implements an Attribute Value Object that is used in the PartitionDetailsPage.
+ *
+ * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
+ * @version $Rev$, $Date$
+ */
+public class AttributeValueObject
+{
+    /** The attribute */
+    private String attribute;
+
+    /** The value */
+    private Object value;
+
+
+    /**
+     * Creates a new instance of AttributeValueObject.
+     *
+     * @param attribute
+     *      the attribute
+     * @param value
+     *      the value
+     */
+    public AttributeValueObject( String attribute, Object value )
+    {
+        this.attribute = attribute;
+        this.value = value;
+    }
+
+
+    /**
+     * Gets the attribute.
+     *
+     * @return
+     *      the attribute.
+     */
+    public String getAttribute()
+    {
+        return attribute;
+    }
+
+
+    /**
+     * Sets the attribute.
+     *
+     * @param attribute
+     *      the new attribute
+     */
+    public void setId( String attribute )
+    {
+        this.attribute = attribute;
+    }
+
+
+    /**
+     * Gets the value.
+     *
+     * @return
+     *      the value
+     */
+    public Object getValue()
+    {
+        return value;
+    }
+
+
+    /**
+     * Sets the value.
+     *
+     * @param value
+     *      the new value
+     */
+    public void setValue( Object value )
+    {
+        this.value = value;
+    }
+
+
+    /* (non-Javadoc)
+     * @see java.lang.Object#toString()
+     */
+    public String toString()
+    {
+        return "Attribute=\"" + attribute + "\", Value=\"" + value + "\""; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+    }
+}

Added: directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/ExtendedOperationDialog.java
URL: http://svn.apache.org/viewvc/directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/ExtendedOperationDialog.java?rev=926643&view=auto
==============================================================================
--- directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/ExtendedOperationDialog.java (added)
+++ directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/ExtendedOperationDialog.java Tue Mar 23 16:15:26 2010
@@ -0,0 +1,241 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  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. 
+ *  
+ */
+package org.apache.directory.studio.apacheds.configuration.editor.v156.dialogs;
+
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.apache.directory.studio.apacheds.configuration.ApacheDSConfigurationPlugin;
+import org.apache.directory.studio.apacheds.configuration.ApacheDSConfigurationPluginConstants;
+import org.apache.directory.studio.apacheds.configuration.model.v156.ExtendedOperationEnum;
+import org.eclipse.jface.dialogs.Dialog;
+import org.eclipse.jface.dialogs.IDialogConstants;
+import org.eclipse.jface.viewers.ArrayContentProvider;
+import org.eclipse.jface.viewers.ISelectionChangedListener;
+import org.eclipse.jface.viewers.LabelProvider;
+import org.eclipse.jface.viewers.SelectionChangedEvent;
+import org.eclipse.jface.viewers.StructuredSelection;
+import org.eclipse.jface.viewers.TableViewer;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.MouseAdapter;
+import org.eclipse.swt.events.MouseEvent;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.swt.widgets.Table;
+import org.eclipse.ui.PlatformUI;
+
+
+/**
+ * This class implements the Dialog for Extended Operation.
+ *
+ * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
+ * @version $Rev$, $Date$
+ */
+public class ExtendedOperationDialog extends Dialog
+{
+    /** The initial extended operations list */
+    private List<ExtendedOperationEnum> initialExtendedOperations;
+
+    /** The available extended operations list */
+    private List<ExtendedOperationEnum> availableExtendedOperations;
+
+    /** The selected extended operation */
+    private ExtendedOperationEnum selectedExtendedOperation;
+
+    // UI Fields
+    private Table extendedOperationsTable;
+    private TableViewer extendedOperationsTableViewer;
+    private Button addButton;
+
+
+    /**
+     * Creates a new instance of ExtendedOperationDialog.
+     */
+    public ExtendedOperationDialog( List<ExtendedOperationEnum> extendedOperations )
+    {
+        super( PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell() );
+        this.initialExtendedOperations = extendedOperations;
+    }
+
+
+    /* (non-Javadoc)
+     * @see org.eclipse.jface.window.Window#configureShell(org.eclipse.swt.widgets.Shell)
+     */
+    protected void configureShell( Shell newShell )
+    {
+        super.configureShell( newShell );
+        newShell.setText( Messages.getString( "ExtendedOperationDialog.AddAnExtendedOperation" ) ); //$NON-NLS-1$
+    }
+
+
+    /* (non-Javadoc)
+     * @see org.eclipse.jface.dialogs.Dialog#createDialogArea(org.eclipse.swt.widgets.Composite)
+     */
+    protected Control createDialogArea( Composite parent )
+    {
+        Composite composite = new Composite( parent, SWT.NONE );
+        composite.setLayout( new GridLayout() );
+        composite.setLayoutData( new GridData( GridData.FILL, GridData.FILL, true, true ) );
+
+        // Choose Label
+        Label chooseLabel = new Label( composite, SWT.NONE );
+        chooseLabel.setText( Messages.getString( "ExtendedOperationDialog.ChooseAnExtendedOperation" ) ); //$NON-NLS-1$
+        chooseLabel.setLayoutData( new GridData( SWT.FILL, SWT.NONE, true, false ) );
+
+        // Interceptors Table Viewer
+        extendedOperationsTable = new Table( composite, SWT.SINGLE | SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL
+            | SWT.FULL_SELECTION | SWT.HIDE_SELECTION );
+        GridData gridData = new GridData( SWT.FILL, SWT.FILL, true, true );
+        gridData.heightHint = 148;
+        gridData.minimumHeight = 148;
+        gridData.widthHint = 350;
+        gridData.minimumWidth = 350;
+        extendedOperationsTable.setLayoutData( gridData );
+        extendedOperationsTable.addMouseListener( new MouseAdapter()
+        {
+            public void mouseDoubleClick( MouseEvent e )
+            {
+                if ( extendedOperationsTable.getSelectionIndex() != -1 )
+                {
+                    okPressed();
+                }
+            }
+        } );
+
+        extendedOperationsTableViewer = new TableViewer( extendedOperationsTable );
+        extendedOperationsTableViewer.setContentProvider( new ArrayContentProvider() );
+        extendedOperationsTableViewer.setLabelProvider( new LabelProvider()
+        {
+            public Image getImage( Object element )
+            {
+                return ApacheDSConfigurationPlugin.getDefault().getImage(
+                    ApacheDSConfigurationPluginConstants.IMG_EXTENDED_OPERATION );
+            }
+
+
+            public String getText( Object element )
+            {
+                if ( element instanceof ExtendedOperationEnum )
+                {
+                    return ( ( ExtendedOperationEnum ) element ).getName();
+
+                }
+
+                return super.getText( element );
+            }
+        } );
+        extendedOperationsTableViewer.addSelectionChangedListener( new ISelectionChangedListener()
+        {
+            public void selectionChanged( SelectionChangedEvent event )
+            {
+                StructuredSelection selection = ( StructuredSelection ) extendedOperationsTableViewer.getSelection();
+                if ( selection.isEmpty() )
+                {
+                    if ( ( addButton != null ) && ( !addButton.isDisposed() ) )
+                    {
+                        addButton.setEnabled( false );
+                    }
+                }
+                else
+                {
+                    if ( ( addButton != null ) && ( !addButton.isDisposed() ) )
+                    {
+                        addButton.setEnabled( true );
+                    }
+                }
+            }
+        } );
+
+        initFromInput();
+
+        return composite;
+    }
+
+
+    /**
+     * Initializes the UI from the input.
+     */
+    private void initFromInput()
+    {
+        // Creating the available extended operations list
+        availableExtendedOperations = new ArrayList<ExtendedOperationEnum>();
+        if ( !initialExtendedOperations.contains( ExtendedOperationEnum.START_TLS ) )
+        {
+            availableExtendedOperations.add( ExtendedOperationEnum.START_TLS );
+        }
+        if ( !initialExtendedOperations.contains( ExtendedOperationEnum.GRACEFUL_SHUTDOWN ) )
+        {
+            availableExtendedOperations.add( ExtendedOperationEnum.GRACEFUL_SHUTDOWN );
+        }
+        if ( !initialExtendedOperations.contains( ExtendedOperationEnum.LAUNCH_DIAGNOSTIC_UI ) )
+        {
+            availableExtendedOperations.add( ExtendedOperationEnum.LAUNCH_DIAGNOSTIC_UI );
+        }
+
+        // Setting the input
+        extendedOperationsTableViewer.setInput( availableExtendedOperations );
+    }
+
+
+    /* (non-Javadoc)
+     * @see org.eclipse.jface.dialogs.Dialog#createButtonsForButtonBar(org.eclipse.swt.widgets.Composite)
+     */
+    protected void createButtonsForButtonBar( Composite parent )
+    {
+        addButton = createButton( parent, IDialogConstants.OK_ID, "Add", true ); //$NON-NLS-1$
+        createButton( parent, IDialogConstants.CANCEL_ID, IDialogConstants.CANCEL_LABEL, false );
+
+        addButton.setEnabled( false );
+    }
+
+
+    /* (non-Javadoc)
+     * @see org.eclipse.jface.dialogs.Dialog#okPressed()
+     */
+    protected void okPressed()
+    {
+        StructuredSelection selection = ( StructuredSelection ) extendedOperationsTableViewer.getSelection();
+        if ( !selection.isEmpty() )
+        {
+            selectedExtendedOperation = ( ExtendedOperationEnum ) selection.getFirstElement();
+        }
+
+        super.okPressed();
+    }
+
+
+    /**
+     * Gets the extended operation.
+     *
+     * @return
+     *      the extended operation
+     */
+    public ExtendedOperationEnum getExtendedOperation()
+    {
+        return selectedExtendedOperation;
+    }
+}

Added: directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/IndexedAttributeDialog.java
URL: http://svn.apache.org/viewvc/directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/IndexedAttributeDialog.java?rev=926643&view=auto
==============================================================================
--- directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/IndexedAttributeDialog.java (added)
+++ directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/IndexedAttributeDialog.java Tue Mar 23 16:15:26 2010
@@ -0,0 +1,193 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  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. 
+ *  
+ */
+package org.apache.directory.studio.apacheds.configuration.editor.v156.dialogs;
+
+
+import org.apache.directory.studio.apacheds.configuration.model.v156.IndexedAttribute;
+import org.eclipse.jface.dialogs.Dialog;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.ModifyEvent;
+import org.eclipse.swt.events.ModifyListener;
+import org.eclipse.swt.events.VerifyEvent;
+import org.eclipse.swt.events.VerifyListener;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.swt.widgets.Text;
+import org.eclipse.ui.PlatformUI;
+
+
+/**
+ * This class implements the Dialog for Indexed Attribute.
+ *
+ * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
+ * @version $Rev$, $Date$
+ */
+public class IndexedAttributeDialog extends Dialog
+{
+    /** The Indexed Attribute */
+    private IndexedAttribute indexedAttribute;
+
+    /** The dirty flag */
+    private boolean dirty = false;
+
+    // UI Fields
+    private Text attributeIdText;
+    private Text cacheSizeText;
+
+
+    /**
+     * Creates a new instance of IndexedAttributeDialog.
+     */
+    public IndexedAttributeDialog( IndexedAttribute indexedAttribute )
+    {
+        super( PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell() );
+        this.indexedAttribute = indexedAttribute;
+    }
+
+
+    /* (non-Javadoc)
+     * @see org.eclipse.jface.window.Window#configureShell(org.eclipse.swt.widgets.Shell)
+     */
+    protected void configureShell( Shell newShell )
+    {
+        super.configureShell( newShell );
+        newShell.setText( Messages.getString( "IndexedAttributeDialog.IndexedAttributeDialog" ) ); //$NON-NLS-1$
+    }
+
+
+    /* (non-Javadoc)
+     * @see org.eclipse.jface.dialogs.Dialog#createDialogArea(org.eclipse.swt.widgets.Composite)
+     */
+    protected Control createDialogArea( Composite parent )
+    {
+        Composite composite = new Composite( parent, SWT.NONE );
+        GridLayout layout = new GridLayout( 2, false );
+        composite.setLayout( layout );
+        composite.setLayoutData( new GridData( GridData.FILL, GridData.FILL, true, true ) );
+
+        Label attributeIdLabel = new Label( composite, SWT.NONE );
+        attributeIdLabel.setText( Messages.getString( "IndexedAttributeDialog.AttributeID" ) ); //$NON-NLS-1$
+
+        attributeIdText = new Text( composite, SWT.BORDER );
+        attributeIdText.setLayoutData( new GridData( SWT.FILL, SWT.NONE, true, false ) );
+
+        Label cacheSizeLabel = new Label( composite, SWT.NONE );
+        cacheSizeLabel.setText( Messages.getString( "IndexedAttributeDialog.CacheSize" ) ); //$NON-NLS-1$
+
+        cacheSizeText = new Text( composite, SWT.BORDER );
+        cacheSizeText.addVerifyListener( new VerifyListener()
+        {
+            public void verifyText( VerifyEvent e )
+            {
+                if ( !e.text.matches( "[0-9]*" ) ) //$NON-NLS-1$
+                {
+                    e.doit = false;
+                }
+            }
+        } );
+        cacheSizeText.setLayoutData( new GridData( SWT.FILL, SWT.NONE, true, false ) );
+
+        initFromInput();
+        addListeners();
+
+        return composite;
+    }
+
+
+    /**
+     * Initializes the UI from the input.
+     */
+    private void initFromInput()
+    {
+        String attributeId = indexedAttribute.getAttributeId();
+        attributeIdText.setText( ( attributeId == null ) ? "" : attributeId ); //$NON-NLS-1$
+        cacheSizeText.setText( "" + indexedAttribute.getCacheSize() ); //$NON-NLS-1$
+    }
+
+
+    /**
+     * Adds listeners to the UI Fields.
+     */
+    private void addListeners()
+    {
+        attributeIdText.addModifyListener( new ModifyListener()
+        {
+            public void modifyText( ModifyEvent e )
+            {
+                dirty = true;
+            }
+        } );
+
+        cacheSizeText.addModifyListener( new ModifyListener()
+        {
+            public void modifyText( ModifyEvent e )
+            {
+                dirty = true;
+            }
+        } );
+    }
+
+
+    /* (non-Javadoc)
+     * @see org.eclipse.jface.dialogs.Dialog#okPressed()
+     */
+    protected void okPressed()
+    {
+        indexedAttribute.setAttributeId( attributeIdText.getText() );
+        try
+        {
+            indexedAttribute.setCacheSize( Integer.parseInt( cacheSizeText.getText() ) );
+        }
+        catch ( NumberFormatException e )
+        {
+            // Nothing to do, it won't happen
+        }
+
+        super.okPressed();
+    }
+
+
+    /**
+     * Gets the Indexed Attribute.
+     *
+     * @return
+     *      the Indexed Attribute
+     */
+    public IndexedAttribute getIndexedAttribute()
+    {
+        return indexedAttribute;
+    }
+
+
+    /**
+     * Returns the dirty flag of the dialog.
+     *
+     * @return
+     *      the dirty flag of the dialog
+     */
+    public boolean isDirty()
+    {
+        return dirty;
+    }
+}

Added: directory/studio/trunk/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/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/InterceptorDialog.java?rev=926643&view=auto
==============================================================================
--- directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/InterceptorDialog.java (added)
+++ directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/InterceptorDialog.java Tue Mar 23 16:15:26 2010
@@ -0,0 +1,277 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  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. 
+ *  
+ */
+package org.apache.directory.studio.apacheds.configuration.editor.v156.dialogs;
+
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.apache.directory.studio.apacheds.configuration.ApacheDSConfigurationPlugin;
+import org.apache.directory.studio.apacheds.configuration.ApacheDSConfigurationPluginConstants;
+import org.apache.directory.studio.apacheds.configuration.model.v156.InterceptorEnum;
+import org.eclipse.jface.dialogs.Dialog;
+import org.eclipse.jface.dialogs.IDialogConstants;
+import org.eclipse.jface.viewers.ArrayContentProvider;
+import org.eclipse.jface.viewers.ISelectionChangedListener;
+import org.eclipse.jface.viewers.LabelProvider;
+import org.eclipse.jface.viewers.SelectionChangedEvent;
+import org.eclipse.jface.viewers.StructuredSelection;
+import org.eclipse.jface.viewers.TableViewer;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.MouseAdapter;
+import org.eclipse.swt.events.MouseEvent;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.swt.widgets.Table;
+import org.eclipse.ui.PlatformUI;
+
+
+/**
+ * This class implements the Dialog for Interceptor.
+ *
+ * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
+ * @version $Rev$, $Date$
+ */
+public class InterceptorDialog extends Dialog
+{
+    /** The initial interceptors list */
+    private List<InterceptorEnum> initialInterceptors;
+
+    /** The available interceptors list */
+    private List<InterceptorEnum> availableInterceptors;
+
+    /** The selected interceptor */
+    private InterceptorEnum selectedInterceptor;
+
+    // UI Fields
+    private Table interceptorsTable;
+    private TableViewer interceptorsTableViewer;
+    private Button addButton;
+
+
+    /**
+     * Creates a new instance of InterceptorDialog.
+     */
+    public InterceptorDialog( List<InterceptorEnum> interceptors )
+    {
+        super( PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell() );
+        this.initialInterceptors = interceptors;
+    }
+
+
+    /* (non-Javadoc)
+     * @see org.eclipse.jface.window.Window#configureShell(org.eclipse.swt.widgets.Shell)
+     */
+    protected void configureShell( Shell newShell )
+    {
+        super.configureShell( newShell );
+        newShell.setText( Messages.getString( "InterceptorDialog.AddAnInterceptor" ) ); //$NON-NLS-1$
+    }
+
+
+    /* (non-Javadoc)
+     * @see org.eclipse.jface.dialogs.Dialog#createDialogArea(org.eclipse.swt.widgets.Composite)
+     */
+    protected Control createDialogArea( Composite parent )
+    {
+        Composite composite = new Composite( parent, SWT.NONE );
+        composite.setLayout( new GridLayout() );
+        composite.setLayoutData( new GridData( GridData.FILL, GridData.FILL, true, true ) );
+
+        // Choose Label
+        Label chooseLabel = new Label( composite, SWT.NONE );
+        chooseLabel.setText( Messages.getString( "InterceptorDialog.ChooseAnInterceptor" ) ); //$NON-NLS-1$
+        chooseLabel.setLayoutData( new GridData( SWT.FILL, SWT.NONE, true, false ) );
+
+        // Interceptors Table Viewer
+        interceptorsTable = new Table( composite, SWT.SINGLE | SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL
+            | SWT.FULL_SELECTION | SWT.HIDE_SELECTION );
+        GridData gridData = new GridData( SWT.FILL, SWT.FILL, true, true );
+        gridData.heightHint = 148;
+        gridData.minimumHeight = 148;
+        gridData.widthHint = 350;
+        gridData.minimumWidth = 350;
+        interceptorsTable.setLayoutData( gridData );
+        interceptorsTable.addMouseListener( new MouseAdapter()
+        {
+            public void mouseDoubleClick( MouseEvent e )
+            {
+                if ( interceptorsTable.getSelectionIndex() != -1 )
+                {
+                    okPressed();
+                }
+            }
+        } );
+
+        interceptorsTableViewer = new TableViewer( interceptorsTable );
+        interceptorsTableViewer.setContentProvider( new ArrayContentProvider() );
+        interceptorsTableViewer.setLabelProvider( new LabelProvider()
+        {
+            public Image getImage( Object element )
+            {
+                return ApacheDSConfigurationPlugin.getDefault().getImage(
+                    ApacheDSConfigurationPluginConstants.IMG_INTERCEPTOR );
+            }
+
+
+            public String getText( Object element )
+            {
+                if ( element instanceof InterceptorEnum )
+                {
+                    return ( ( InterceptorEnum ) element ).getName();
+
+                }
+
+                return super.getText( element );
+            }
+        } );
+        interceptorsTableViewer.addSelectionChangedListener( new ISelectionChangedListener()
+        {
+            public void selectionChanged( SelectionChangedEvent event )
+            {
+                StructuredSelection selection = ( StructuredSelection ) interceptorsTableViewer.getSelection();
+                if ( selection.isEmpty() )
+                {
+                    if ( ( addButton != null ) && ( !addButton.isDisposed() ) )
+                    {
+                        addButton.setEnabled( false );
+                    }
+                }
+                else
+                {
+                    if ( ( addButton != null ) && ( !addButton.isDisposed() ) )
+                    {
+                        addButton.setEnabled( true );
+                    }
+                }
+            }
+        } );
+
+        initFromInput();
+
+        return composite;
+    }
+
+
+    /**
+     * Initializes the UI from the input.
+     */
+    private void initFromInput()
+    {
+        // Creating the available interceptors list
+        availableInterceptors = new ArrayList<InterceptorEnum>();
+        if ( !initialInterceptors.contains( InterceptorEnum.NORMALIZATION ) )
+        {
+            availableInterceptors.add( InterceptorEnum.NORMALIZATION );
+        }
+        if ( !initialInterceptors.contains( InterceptorEnum.AUTHENTICATION ) )
+        {
+            availableInterceptors.add( InterceptorEnum.AUTHENTICATION );
+        }
+        if ( !initialInterceptors.contains( InterceptorEnum.ACI_AUTHORIZATION ) )
+        {
+            availableInterceptors.add( InterceptorEnum.ACI_AUTHORIZATION );
+        }
+        if ( !initialInterceptors.contains( InterceptorEnum.DEFAULT_AUTHORIZATION ) )
+        {
+            availableInterceptors.add( InterceptorEnum.DEFAULT_AUTHORIZATION );
+        }
+        if ( !initialInterceptors.contains( InterceptorEnum.EXCEPTION ) )
+        {
+            availableInterceptors.add( InterceptorEnum.EXCEPTION );
+        }
+        if ( !initialInterceptors.contains( InterceptorEnum.OPERATIONAL_ATTRIBUTE ) )
+        {
+            availableInterceptors.add( InterceptorEnum.OPERATIONAL_ATTRIBUTE );
+        }
+        if ( !initialInterceptors.contains( InterceptorEnum.SCHEMA ) )
+        {
+            availableInterceptors.add( InterceptorEnum.SCHEMA );
+        }
+        if ( !initialInterceptors.contains( InterceptorEnum.SUBENTRY ) )
+        {
+            availableInterceptors.add( InterceptorEnum.SUBENTRY );
+        }
+        if ( !initialInterceptors.contains( InterceptorEnum.COLLECTIVE_ATTRIBUTE ) )
+        {
+            availableInterceptors.add( InterceptorEnum.COLLECTIVE_ATTRIBUTE );
+        }
+        if ( !initialInterceptors.contains( InterceptorEnum.EVENT ) )
+        {
+            availableInterceptors.add( InterceptorEnum.EVENT );
+        }
+        if ( !initialInterceptors.contains( InterceptorEnum.TRIGGER ) )
+        {
+            availableInterceptors.add( InterceptorEnum.TRIGGER );
+        }
+        if ( !initialInterceptors.contains( InterceptorEnum.REPLICATION ) )
+        {
+            availableInterceptors.add( InterceptorEnum.REPLICATION );
+        }
+
+        // Setting the input
+        interceptorsTableViewer.setInput( availableInterceptors );
+    }
+
+
+    /* (non-Javadoc)
+     * @see org.eclipse.jface.dialogs.Dialog#createButtonsForButtonBar(org.eclipse.swt.widgets.Composite)
+     */
+    protected void createButtonsForButtonBar( Composite parent )
+    {
+        addButton = createButton( parent, IDialogConstants.OK_ID, "Add", true ); //$NON-NLS-1$
+        createButton( parent, IDialogConstants.CANCEL_ID, IDialogConstants.CANCEL_LABEL, false );
+
+        addButton.setEnabled( false );
+    }
+
+
+    /* (non-Javadoc)
+     * @see org.eclipse.jface.dialogs.Dialog#okPressed()
+     */
+    protected void okPressed()
+    {
+        StructuredSelection selection = ( StructuredSelection ) interceptorsTableViewer.getSelection();
+        if ( !selection.isEmpty() )
+        {
+            selectedInterceptor = ( InterceptorEnum ) selection.getFirstElement();
+        }
+
+        super.okPressed();
+    }
+
+
+    /**
+     * Gets the interceptor.
+     *
+     * @return
+     *      the interceptor
+     */
+    public InterceptorEnum getInterceptor()
+    {
+        return selectedInterceptor;
+    }
+}

Added: directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/Messages.java
URL: http://svn.apache.org/viewvc/directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/Messages.java?rev=926643&view=auto
==============================================================================
--- directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/Messages.java (added)
+++ directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/Messages.java Tue Mar 23 16:15:26 2010
@@ -0,0 +1,50 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  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. 
+ *  
+ */
+package org.apache.directory.studio.apacheds.configuration.editor.v156.dialogs;
+
+
+import java.util.MissingResourceException;
+import java.util.ResourceBundle;
+
+
+public class Messages
+{
+    private static final String BUNDLE_NAME = "org.apache.directory.studio.apacheds.configuration.editor.v154.dialogs.messages"; //$NON-NLS-1$
+
+    private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle.getBundle( BUNDLE_NAME );
+
+
+    private Messages()
+    {
+    }
+
+
+    public static String getString( String key )
+    {
+        try
+        {
+            return RESOURCE_BUNDLE.getString( key );
+        }
+        catch ( MissingResourceException e )
+        {
+            return '!' + key + '!';
+        }
+    }
+}

Added: directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/NtlmProviderDialog.java
URL: http://svn.apache.org/viewvc/directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/NtlmProviderDialog.java?rev=926643&view=auto
==============================================================================
--- directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/NtlmProviderDialog.java (added)
+++ directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/NtlmProviderDialog.java Tue Mar 23 16:15:26 2010
@@ -0,0 +1,158 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  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. 
+ *  
+ */
+package org.apache.directory.studio.apacheds.configuration.editor.v156.dialogs;
+
+
+import org.eclipse.jface.dialogs.Dialog;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.ModifyEvent;
+import org.eclipse.swt.events.ModifyListener;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.swt.widgets.Text;
+import org.eclipse.ui.PlatformUI;
+
+
+/**
+ * This class implements the Dialog for NTML Provider.
+ *
+ * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
+ * @version $Rev$, $Date$
+ */
+public class NtlmProviderDialog extends Dialog
+{
+    /** The initial value */
+    private String initialValue;
+
+    /** The return value */
+    private String returnValue;
+
+    /** The dirty flag */
+    private boolean dirty = false;
+
+    // UI Fields
+    private Text ntlmProviderText;
+
+
+    /**
+     * Creates a new instance of SaslRealmDialog.
+     */
+    public NtlmProviderDialog( String initialValue )
+    {
+        super( PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell() );
+        this.initialValue = initialValue;
+    }
+
+
+    /* (non-Javadoc)
+     * @see org.eclipse.jface.window.Window#configureShell(org.eclipse.swt.widgets.Shell)
+     */
+    protected void configureShell( Shell newShell )
+    {
+        super.configureShell( newShell );
+        newShell.setText( Messages.getString( "NtlmProviderDialog.NtlmProviderDialog" ) ); //$NON-NLS-1$
+    }
+
+
+    /* (non-Javadoc)
+     * @see org.eclipse.jface.dialogs.Dialog#createDialogArea(org.eclipse.swt.widgets.Composite)
+     */
+    protected Control createDialogArea( Composite parent )
+    {
+        Composite composite = new Composite( parent, SWT.NONE );
+        GridLayout layout = new GridLayout( 2, false );
+        composite.setLayout( layout );
+        composite.setLayoutData( new GridData( GridData.FILL, GridData.FILL, true, true ) );
+
+        Label ntlmProviderLabel = new Label( composite, SWT.NONE );
+        ntlmProviderLabel.setText( Messages.getString( "NtlmProviderDialog.NtlmProvider" ) ); //$NON-NLS-1$
+
+        ntlmProviderText = new Text( composite, SWT.BORDER );
+        ntlmProviderText.setLayoutData( new GridData( SWT.FILL, SWT.NONE, true, false ) );
+
+        initFromInput();
+        addListeners();
+
+        return composite;
+    }
+
+
+    /**
+     * Initializes the UI from the input.
+     */
+    private void initFromInput()
+    {
+        ntlmProviderText.setText( ( initialValue == null ) ? "" : initialValue ); //$NON-NLS-1$
+    }
+
+
+    /**
+     * Adds listeners to the UI Fields.
+     */
+    private void addListeners()
+    {
+        ntlmProviderText.addModifyListener( new ModifyListener()
+        {
+            public void modifyText( ModifyEvent e )
+            {
+                dirty = true;
+            }
+        } );
+    }
+
+
+    /* (non-Javadoc)
+     * @see org.eclipse.jface.dialogs.Dialog#okPressed()
+     */
+    protected void okPressed()
+    {
+        returnValue = ntlmProviderText.getText();
+
+        super.okPressed();
+    }
+
+
+    /**
+     * Gets the NTLM Provider.
+     *
+     * @return
+     *      the NTLM Provider
+     */
+    public String getNtlmProvider()
+    {
+        return returnValue;
+    }
+
+
+    /**
+     * Returns the dirty flag of the dialog.
+     *
+     * @return
+     *      the dirty flag of the dialog
+     */
+    public boolean isDirty()
+    {
+        return dirty;
+    }
+}

Added: directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/SaslRealmDialog.java
URL: http://svn.apache.org/viewvc/directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/SaslRealmDialog.java?rev=926643&view=auto
==============================================================================
--- directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/SaslRealmDialog.java (added)
+++ directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/SaslRealmDialog.java Tue Mar 23 16:15:26 2010
@@ -0,0 +1,158 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  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. 
+ *  
+ */
+package org.apache.directory.studio.apacheds.configuration.editor.v156.dialogs;
+
+
+import org.eclipse.jface.dialogs.Dialog;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.ModifyEvent;
+import org.eclipse.swt.events.ModifyListener;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.swt.widgets.Text;
+import org.eclipse.ui.PlatformUI;
+
+
+/**
+ * This class implements the Dialog for SASL Realm.
+ *
+ * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
+ * @version $Rev$, $Date$
+ */
+public class SaslRealmDialog extends Dialog
+{
+    /** The initial value */
+    private String initialValue;
+
+    /** The return value */
+    private String returnValue;
+
+    /** The dirty flag */
+    private boolean dirty = false;
+
+    // UI Fields
+    private Text saslRealmText;
+
+
+    /**
+     * Creates a new instance of SaslRealmDialog.
+     */
+    public SaslRealmDialog( String initialValue )
+    {
+        super( PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell() );
+        this.initialValue = initialValue;
+    }
+
+
+    /* (non-Javadoc)
+     * @see org.eclipse.jface.window.Window#configureShell(org.eclipse.swt.widgets.Shell)
+     */
+    protected void configureShell( Shell newShell )
+    {
+        super.configureShell( newShell );
+        newShell.setText( Messages.getString( "SaslRealmDialog.SaslRealmDialog" ) ); //$NON-NLS-1$
+    }
+
+
+    /* (non-Javadoc)
+     * @see org.eclipse.jface.dialogs.Dialog#createDialogArea(org.eclipse.swt.widgets.Composite)
+     */
+    protected Control createDialogArea( Composite parent )
+    {
+        Composite composite = new Composite( parent, SWT.NONE );
+        GridLayout layout = new GridLayout( 2, false );
+        composite.setLayout( layout );
+        composite.setLayoutData( new GridData( GridData.FILL, GridData.FILL, true, true ) );
+
+        Label saslRealmLabel = new Label( composite, SWT.NONE );
+        saslRealmLabel.setText( Messages.getString( "SaslRealmDialog.SaslRealm" ) ); //$NON-NLS-1$
+
+        saslRealmText = new Text( composite, SWT.BORDER );
+        saslRealmText.setLayoutData( new GridData( SWT.FILL, SWT.NONE, true, false ) );
+
+        initFromInput();
+        addListeners();
+
+        return composite;
+    }
+
+
+    /**
+     * Initializes the UI from the input.
+     */
+    private void initFromInput()
+    {
+        saslRealmText.setText( ( initialValue == null ) ? "" : initialValue ); //$NON-NLS-1$
+    }
+
+
+    /**
+     * Adds listeners to the UI Fields.
+     */
+    private void addListeners()
+    {
+        saslRealmText.addModifyListener( new ModifyListener()
+        {
+            public void modifyText( ModifyEvent e )
+            {
+                dirty = true;
+            }
+        } );
+    }
+
+
+    /* (non-Javadoc)
+     * @see org.eclipse.jface.dialogs.Dialog#okPressed()
+     */
+    protected void okPressed()
+    {
+        returnValue = saslRealmText.getText();
+
+        super.okPressed();
+    }
+
+
+    /**
+     * Gets the SASL Realm.
+     *
+     * @return
+     *      the SASL Realm
+     */
+    public String getSaslRealm()
+    {
+        return returnValue;
+    }
+
+
+    /**
+     * Returns the dirty flag of the dialog.
+     *
+     * @return
+     *      the dirty flag of the dialog
+     */
+    public boolean isDirty()
+    {
+        return dirty;
+    }
+}

Added: directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/messages.properties
URL: http://svn.apache.org/viewvc/directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/messages.properties?rev=926643&view=auto
==============================================================================
--- directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/messages.properties (added)
+++ directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/messages.properties Tue Mar 23 16:15:26 2010
@@ -0,0 +1,31 @@
+#  Licensed to the Apache Software Foundation (ASF) under one
+#  or more contributor license agreements.  See the NOTICE file
+#  distributed with this work for additional information
+#  regarding copyright ownership.  The ASF licenses this file
+#  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.
+
+AttributeValueDialog.Attribute=Attribute:
+AttributeValueDialog.AttributeValueDialog=Attribute Value Dialog
+AttributeValueDialog.Value=Value:
+ExtendedOperationDialog.AddAnExtendedOperation=Add An Extended Operation
+ExtendedOperationDialog.ChooseAnExtendedOperation=Choose an extended operation:
+IndexedAttributeDialog.AttributeID=Attribute ID:
+IndexedAttributeDialog.CacheSize=Cache Size:
+IndexedAttributeDialog.IndexedAttributeDialog=Indexed Attribute Dialog
+InterceptorDialog.AddAnInterceptor=Add An Interceptor
+InterceptorDialog.ChooseAnInterceptor=Choose an interceptor:
+NtlmProviderDialog.NtlmProvider=NTLM Provider:
+NtlmProviderDialog.NtlmProviderDialog=NTLM Provider Dialog
+SaslRealmDialog.SaslRealm=SASL Realm:
+SaslRealmDialog.SaslRealmDialog=SASL Realm Dialog

Added: directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/messages_de.properties
URL: http://svn.apache.org/viewvc/directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/messages_de.properties?rev=926643&view=auto
==============================================================================
--- directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/messages_de.properties (added)
+++ directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/messages_de.properties Tue Mar 23 16:15:26 2010
@@ -0,0 +1,31 @@
+#  Licensed to the Apache Software Foundation (ASF) under one
+#  or more contributor license agreements.  See the NOTICE file
+#  distributed with this work for additional information
+#  regarding copyright ownership.  The ASF licenses this file
+#  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.
+
+AttributeValueDialog.Attribute=Attribut:
+AttributeValueDialog.AttributeValueDialog=Attribut Wert
+AttributeValueDialog.Value=Wert:
+ExtendedOperationDialog.AddAnExtendedOperation=Erweiterte Operation hinzuf\u00FCgen
+ExtendedOperationDialog.ChooseAnExtendedOperation=Erweiterete Operation ausw\u00E4hlen
+IndexedAttributeDialog.AttributeID=Attribut ID:
+IndexedAttributeDialog.CacheSize=Cachegr\u00F6\u00DFe:
+IndexedAttributeDialog.IndexedAttributeDialog=Indiziertes Attribut
+InterceptorDialog.AddAnInterceptor=Einen Interceptor hinzuf\u00FCgen
+InterceptorDialog.ChooseAnInterceptor=Interceptor ausw\u00E4hlen:
+NtlmProviderDialog.NtlmProvider=NTLM Provider:
+NtlmProviderDialog.NtlmProviderDialog=NTLM Provider
+SaslRealmDialog.SaslRealm=SASL Realm:
+SaslRealmDialog.SaslRealmDialog=SASL Realm

Added: directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/messages_fr.properties
URL: http://svn.apache.org/viewvc/directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/messages_fr.properties?rev=926643&view=auto
==============================================================================
--- directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/messages_fr.properties (added)
+++ directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/dialogs/messages_fr.properties Tue Mar 23 16:15:26 2010
@@ -0,0 +1,31 @@
+#  Licensed to the Apache Software Foundation (ASF) under one
+#  or more contributor license agreements.  See the NOTICE file
+#  distributed with this work for additional information
+#  regarding copyright ownership.  The ASF licenses this file
+#  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.
+
+AttributeValueDialog.Attribute=Attribut:
+AttributeValueDialog.AttributeValueDialog=Dialogue d'attribut-valeur
+AttributeValueDialog.Value=Valeur:
+ExtendedOperationDialog.AddAnExtendedOperation=Ajouter une op\u00E9ration \u00E9tendue
+ExtendedOperationDialog.ChooseAnExtendedOperation=Choisissez une op\u00E9ration \u00E9tendue:
+IndexedAttributeDialog.AttributeID=ID de l'attribut:
+IndexedAttributeDialog.CacheSize=Taille du cache:
+IndexedAttributeDialog.IndexedAttributeDialog=Dialogue d'attribut index\u00E9
+InterceptorDialog.AddAnInterceptor=Ajouter un intercepteur
+InterceptorDialog.ChooseAnInterceptor=Choisissez un intercepteur:
+NtlmProviderDialog.NtlmProvider=Fournisseur NTLM:
+NtlmProviderDialog.NtlmProviderDialog=Dialogue de fournisseur NTLM
+SaslRealmDialog.SaslRealm=Realm SASL:
+SaslRealmDialog.SaslRealmDialog=Dialogue de realm SASL

Added: directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/messages.properties
URL: http://svn.apache.org/viewvc/directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/messages.properties?rev=926643&view=auto
==============================================================================
--- directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/messages.properties (added)
+++ directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/messages.properties Tue Mar 23 16:15:26 2010
@@ -0,0 +1,80 @@
+#  Licensed to the Apache Software Foundation (ASF) under one
+#  or more contributor license agreements.  See the NOTICE file
+#  distributed with this work for additional information
+#  regarding copyright ownership.  The ASF licenses this file
+#  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.
+
+AuthenticationPage.Add=Add...
+AuthenticationPage.Authentication=Authentication
+AuthenticationPage.Delete=Delete
+AuthenticationPage.DeselectAll=Deselect All
+AuthenticationPage.Edit=Edit...
+AuthenticationPage.SaslHost=SASL Host:
+AuthenticationPage.SaslPrincipal=SASL Principal:
+AuthenticationPage.SaslQualityOfProtection=SASL Quality Of Protection
+AuthenticationPage.SaslRealms=SASL Realms
+AuthenticationPage.SaslSettings=SASL Settings
+AuthenticationPage.SearchBaseDN=Search Base DN:
+AuthenticationPage.SelectAll=Select All
+AuthenticationPage.SupportedAuthenticationMechanisms=Supported Authentication Mechanisms
+ExtendedOperationDetailsPage.Description=Description:
+ExtendedOperationDetailsPage.Name=Name:
+ExtendedOperationsMasterDetailsBlock.Add=Add...
+ExtendedOperationsMasterDetailsBlock.AllExtendedOperations=All Extended Operations
+ExtendedOperationsMasterDetailsBlock.Delete=Delete
+ExtendedOperationsPage.ExtendedOperations=Extended Operations
+GeneralPage.AllowAnonymousAccess=Allow Anonymous Access
+GeneralPage.DenormalizeOperationalAttributes=Denormalize Operational Attributes
+GeneralPage.EnableAccessControl=Enable Access Control
+GeneralPage.EnableChangePassword=Enable Change Password
+GeneralPage.EnableDNS=Enable DNS
+GeneralPage.EnableKerberos=Enable Kerberos
+GeneralPage.EnableLDAP=Enable LDAP
+GeneralPage.EnableLDAPS=Enable LDAPS
+GeneralPage.EnableNTP=Enable NTP
+GeneralPage.General=General
+GeneralPage.Limits=Limits
+GeneralPage.MaxSizeLimit=Max. Size Limit:
+GeneralPage.MaxThreads=Max. Threads:
+GeneralPage.MaxTimeLimit=Max. Time Limit:
+GeneralPage.Options=Options
+GeneralPage.Port=Port:
+GeneralPage.Protocols=Protocols
+GeneralPage.SyncPeriod=Synchronization Period:
+InterceptorDetailsPage.Description=Description:
+InterceptorDetailsPage.Name=Name:
+InterceptorsMasterDetailsBlock.Add=Add...
+InterceptorsMasterDetailsBlock.AllInterceptors=All Interceptors
+InterceptorsMasterDetailsBlock.Delete=Delete
+InterceptorsMasterDetailsBlock.Down=Down
+InterceptorsMasterDetailsBlock.SetTheInterceptorsDescription=\ Set the Interceptors used in the server. Use the "Up" and "Down" buttons to change the order.
+InterceptorsMasterDetailsBlock.Up=Up
+InterceptorsPage.Interceptors=Interceptors
+PartitionDetailsPage.Add=Add...
+PartitionDetailsPage.CacheSize=Cache Size:
+PartitionDetailsPage.Delete=Delete
+PartitionDetailsPage.Edit=Edit...
+PartitionDetailsPage.EnableOptimizer=Enable optimizer
+PartitionDetailsPage.ID=ID:
+PartitionDetailsPage.IndexedAttributes=Indexed Attributes
+PartitionDetailsPage.IndexedAttributesDescription=Set the indexed attributes of the partition.
+PartitionDetailsPage.PartitionDetails=Partition Details
+PartitionDetailsPage.PartitionsDetailsDescription=Set the properties of the partition.
+PartitionDetailsPage.Suffix=Suffix:
+PartitionDetailsPage.SynchronizationOnWrite=Synchronization on write
+PartitionsMasterDetailsBlock.Add=Add...
+PartitionsMasterDetailsBlock.AllPartitions=All Partitions
+PartitionsMasterDetailsBlock.Delete=Delete
+PartitionsMasterDetailsBlock.NewPartition=New Partition 
+PartitionsPage.Partitions=Partitions

Added: directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/messages_de.properties
URL: http://svn.apache.org/viewvc/directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/messages_de.properties?rev=926643&view=auto
==============================================================================
--- directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/messages_de.properties (added)
+++ directory/studio/trunk/apacheds-configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/v156/messages_de.properties Tue Mar 23 16:15:26 2010
@@ -0,0 +1,80 @@
+#  Licensed to the Apache Software Foundation (ASF) under one
+#  or more contributor license agreements.  See the NOTICE file
+#  distributed with this work for additional information
+#  regarding copyright ownership.  The ASF licenses this file
+#  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.
+
+AuthenticationPage.Add=Hinzuf\u00FCgen...
+AuthenticationPage.Authentication=Authentifizierung
+AuthenticationPage.Delete=L\u00F6schen
+AuthenticationPage.DeselectAll=Alle abw\u00E4hlen
+AuthenticationPage.Edit=Bearbeiten...
+AuthenticationPage.SaslHost=SASL Host:
+AuthenticationPage.SaslPrincipal=SASL Principal:
+AuthenticationPage.SaslQualityOfProtection=SASL Quality Of Protection
+AuthenticationPage.SaslRealms=SASL Realms
+AuthenticationPage.SaslSettings=SASL Einstellungen
+AuthenticationPage.SearchBaseDN=Basis-DN f\u00FCr Suche:
+AuthenticationPage.SelectAll=Alle ausw\u00E4hlen
+AuthenticationPage.SupportedAuthenticationMechanisms=Unterst\u00FCtzte Authentifizierungsmechanismen
+ExtendedOperationDetailsPage.Description=Beschreibung:
+ExtendedOperationDetailsPage.Name=Name:
+ExtendedOperationsMasterDetailsBlock.Add=Hinzuf\u00FCgen...
+ExtendedOperationsMasterDetailsBlock.AllExtendedOperations=Alle erweiterten Operationen
+ExtendedOperationsMasterDetailsBlock.Delete=L\u00F6schen
+ExtendedOperationsPage.ExtendedOperations=Erweiterte Operationen
+GeneralPage.AllowAnonymousAccess=Anonymen Zugriff erlauben
+GeneralPage.DenormalizeOperationalAttributes=Operationale Attribute denormalisieren
+GeneralPage.EnableAccessControl=Zugriffskontrolle aktivieren
+GeneralPage.EnableChangePassword=Change Password aktivieren
+GeneralPage.EnableDNS=DNS aktivieren
+GeneralPage.EnableKerberos=Kerberos aktivieren
+GeneralPage.EnableLDAP=LDAP aktivieren
+GeneralPage.EnableLDAPS=LDAPS aktivieren
+GeneralPage.EnableNTP=NTP aktivieren
+GeneralPage.General=Allgemein
+GeneralPage.Limits=Limits
+GeneralPage.MaxSizeLimit=Max. Anzahl Limit:
+GeneralPage.MaxThreads=Max. Threads:
+GeneralPage.MaxTimeLimit=Max. Zeit Limit:
+GeneralPage.Options=Optionen
+GeneralPage.Port=Port:
+GeneralPage.Protocols=Protokolle
+GeneralPage.SyncPeriod=Synchronisation Abstand:
+InterceptorDetailsPage.Description=Beschreibung:
+InterceptorDetailsPage.Name=Name:
+InterceptorsMasterDetailsBlock.Add=Hinzuf\u00FCgen...
+InterceptorsMasterDetailsBlock.AllInterceptors=Alle Interceptoren
+InterceptorsMasterDetailsBlock.Delete=L\u00F6schen
+InterceptorsMasterDetailsBlock.Down=Ab
+InterceptorsMasterDetailsBlock.SetTheInterceptorsDescription=\ Setzen der genutzen Interceptoren im Server. "Ab" und "Auf" ver\u00E4ndert die Reihenfolge.
+InterceptorsMasterDetailsBlock.Up=Auf
+InterceptorsPage.Interceptors=Interceptoren
+PartitionDetailsPage.Add=Hinzuf\u00FCgen...
+PartitionDetailsPage.CacheSize=Cache Gr\u00F6\u00DFe:
+PartitionDetailsPage.Delete=L\u00F6schen
+PartitionDetailsPage.Edit=Bearbeiten...
+PartitionDetailsPage.EnableOptimizer=Optimierer aktivieren
+PartitionDetailsPage.ID=ID:
+PartitionDetailsPage.IndexedAttributes=Indizierte Attribute
+PartitionDetailsPage.IndexedAttributesDescription=Indizierte Attribute der Partition.
+PartitionDetailsPage.PartitionDetails=Partitions-Details
+PartitionDetailsPage.PartitionsDetailsDescription=Eigenschaften der Partition
+PartitionDetailsPage.Suffix=Suffix:
+PartitionDetailsPage.SynchronizationOnWrite=Beim Schreiben synchronisieren
+PartitionsMasterDetailsBlock.Add=Hinzuf\u00FCgen...
+PartitionsMasterDetailsBlock.AllPartitions=Alle Partitionen
+PartitionsMasterDetailsBlock.Delete=L\u00F6schen
+PartitionsMasterDetailsBlock.NewPartition=Neue Partition 
+PartitionsPage.Partitions=Partitionen