| /* |
| * 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.ldapbrowser.common.dialogs.preferences; |
| |
| |
| import java.util.ArrayList; |
| import java.util.Arrays; |
| import java.util.Collection; |
| import java.util.List; |
| import java.util.SortedMap; |
| import java.util.TreeMap; |
| |
| import org.apache.directory.api.ldap.model.schema.AttributeType; |
| import org.apache.directory.api.ldap.model.schema.LdapSyntax; |
| import org.apache.directory.studio.common.ui.widgets.BaseWidgetUtils; |
| import org.apache.directory.studio.connection.core.Utils; |
| import org.apache.directory.studio.ldapbrowser.core.BrowserConnectionManager; |
| import org.apache.directory.studio.ldapbrowser.core.BrowserCorePlugin; |
| import org.apache.directory.studio.ldapbrowser.core.model.IBrowserConnection; |
| import org.apache.directory.studio.ldapbrowser.core.model.schema.BinaryAttribute; |
| import org.apache.directory.studio.ldapbrowser.core.model.schema.BinarySyntax; |
| import org.apache.directory.studio.ldapbrowser.core.model.schema.Schema; |
| import org.apache.directory.studio.ldapbrowser.core.model.schema.SchemaUtils; |
| import org.eclipse.jface.preference.PreferencePage; |
| import org.eclipse.jface.viewers.ArrayContentProvider; |
| import org.eclipse.jface.viewers.DoubleClickEvent; |
| import org.eclipse.jface.viewers.IDoubleClickListener; |
| import org.eclipse.jface.viewers.ISelectionChangedListener; |
| import org.eclipse.jface.viewers.ITableLabelProvider; |
| 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.widgets.Button; |
| import org.eclipse.swt.widgets.Composite; |
| import org.eclipse.swt.widgets.Control; |
| import org.eclipse.swt.widgets.Table; |
| import org.eclipse.swt.widgets.TableColumn; |
| import org.eclipse.ui.IWorkbench; |
| import org.eclipse.ui.IWorkbenchPreferencePage; |
| |
| |
| /** |
| * The BinaryAttributesAndSyntaxesPreferencePage is used to specify |
| * binary attributes and syntaxes. |
| * |
| * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a> |
| */ |
| public class BinaryAttributesAndSyntaxesPreferencePage extends PreferencePage implements IWorkbenchPreferencePage |
| { |
| |
| /** Map with attribute OID => attribute type description */ |
| private SortedMap<String, AttributeType> attributeOid2AtdMap; |
| |
| /** Map with attribute name => attribute type description */ |
| private SortedMap<String, AttributeType> attributeNames2AtdMap; |
| |
| /** The attribute names and OIDs. */ |
| private String[] attributeNamesAndOids; |
| |
| /** Map with syntax OID => syntax description */ |
| private SortedMap<String, LdapSyntax> syntaxOid2LsdMap; |
| |
| /** Map with syntax DESC => syntax description */ |
| private SortedMap<String, LdapSyntax> syntaxDesc2LsdMap; |
| |
| /** The syntax OIDs. */ |
| private String[] syntaxOids; |
| |
| /** The attribute list. */ |
| private List<BinaryAttribute> attributeList; |
| |
| /** The attribute viewer. */ |
| private TableViewer attributeViewer; |
| |
| /** The attribute add button. */ |
| private Button attributeAddButton; |
| |
| /** The attribute edit button. */ |
| private Button attributeEditButton; |
| |
| /** The attribute remove button. */ |
| private Button attributeRemoveButton; |
| |
| /** The syntax list. */ |
| private List<BinarySyntax> syntaxList; |
| |
| /** The syntax viewer. */ |
| private TableViewer syntaxViewer; |
| |
| /** The syntax add button. */ |
| private Button syntaxAddButton; |
| |
| /** The syntax edit button. */ |
| private Button syntaxEditButton; |
| |
| /** The syntax remove button. */ |
| private Button syntaxRemoveButton; |
| |
| |
| /** |
| * Creates a new instance of BinaryAttributesAndSyntaxesPreferencePage. |
| */ |
| public BinaryAttributesAndSyntaxesPreferencePage() |
| { |
| super( Messages.getString( "BinaryAttributesAndSyntaxesPreferencePage.BinaryAttributes" ) ); //$NON-NLS-1$ |
| super.setDescription( Messages |
| .getString( "BinaryAttributesAndSyntaxesPreferencePage.BinaryAttributesDescription" ) ); //$NON-NLS-1$ |
| } |
| |
| |
| /** |
| * {@inheritDoc} |
| */ |
| public void init( IWorkbench workbench ) |
| { |
| } |
| |
| |
| /** |
| * {@inheritDoc} |
| */ |
| protected Control createContents( Composite parent ) |
| { |
| Composite composite = BaseWidgetUtils.createColumnContainer( parent, 1, 1 ); |
| composite.setLayoutData( new GridData( GridData.FILL_BOTH ) ); |
| |
| // init available attribute types |
| attributeNames2AtdMap = new TreeMap<String, AttributeType>(); |
| attributeOid2AtdMap = new TreeMap<String, AttributeType>(); |
| BrowserConnectionManager cm = BrowserCorePlugin.getDefault().getConnectionManager(); |
| IBrowserConnection[] connections = cm.getBrowserConnections(); |
| for ( IBrowserConnection browserConnection : connections ) |
| { |
| Schema schema = browserConnection.getSchema(); |
| createAttributeMaps( schema ); |
| } |
| createAttributeMaps( Schema.DEFAULT_SCHEMA ); |
| attributeNamesAndOids = new String[attributeNames2AtdMap.size() + attributeOid2AtdMap.size()]; |
| System.arraycopy( attributeNames2AtdMap.keySet().toArray(), 0, attributeNamesAndOids, 0, attributeNames2AtdMap |
| .size() ); |
| System.arraycopy( attributeOid2AtdMap.keySet().toArray(), 0, attributeNamesAndOids, attributeNames2AtdMap |
| .size(), attributeOid2AtdMap.size() ); |
| |
| // init available syntaxes |
| syntaxOid2LsdMap = new TreeMap<String, LdapSyntax>(); |
| syntaxDesc2LsdMap = new TreeMap<String, LdapSyntax>(); |
| for ( IBrowserConnection browserConnection : connections ) |
| { |
| Schema schema = browserConnection.getSchema(); |
| createSyntaxMaps( schema ); |
| } |
| createSyntaxMaps( Schema.DEFAULT_SCHEMA ); |
| syntaxOids = new String[syntaxOid2LsdMap.size()]; |
| System.arraycopy( syntaxOid2LsdMap.keySet().toArray(), 0, syntaxOids, 0, syntaxOid2LsdMap.size() ); |
| |
| // create attribute contents |
| BaseWidgetUtils.createSpacer( composite, 1 ); |
| BaseWidgetUtils.createSpacer( composite, 1 ); |
| createAttributeContents( composite ); |
| attributeList = new ArrayList<BinaryAttribute>( Arrays.asList( BrowserCorePlugin.getDefault() |
| .getCorePreferences().getBinaryAttributes() ) ); |
| attributeViewer.setInput( attributeList ); |
| attributeViewer.getTable().getColumn( 0 ).pack(); |
| |
| // create syntax contents |
| BaseWidgetUtils.createSpacer( composite, 1 ); |
| BaseWidgetUtils.createSpacer( composite, 1 ); |
| createSyntaxContents( composite ); |
| syntaxList = new ArrayList<BinarySyntax>( Arrays.asList( BrowserCorePlugin.getDefault().getCorePreferences() |
| .getBinarySyntaxes() ) ); |
| syntaxViewer.setInput( syntaxList ); |
| syntaxViewer.getTable().getColumn( 0 ).pack(); |
| syntaxViewer.getTable().pack(); |
| |
| return composite; |
| } |
| |
| |
| private void createAttributeMaps( Schema schema ) |
| { |
| Collection<AttributeType> atds = schema.getAttributeTypeDescriptions(); |
| for ( AttributeType atd : atds ) |
| { |
| attributeOid2AtdMap.put( atd.getOid(), atd ); |
| for ( String name : atd.getNames() ) |
| { |
| attributeNames2AtdMap.put( name, atd ); |
| } |
| } |
| } |
| |
| |
| private void createSyntaxMaps( Schema schema ) |
| { |
| Collection<LdapSyntax> lsds = schema.getLdapSyntaxDescriptions(); |
| for ( LdapSyntax lsd : lsds ) |
| { |
| syntaxOid2LsdMap.put( lsd.getOid(), lsd ); |
| |
| if ( lsd.getDescription() != null ) |
| { |
| syntaxDesc2LsdMap.put( lsd.getDescription(), lsd ); |
| } |
| } |
| } |
| |
| |
| private void createAttributeContents( Composite parent ) |
| { |
| BaseWidgetUtils.createLabel( parent, Messages |
| .getString( "BinaryAttributesAndSyntaxesPreferencePage.BinaryAttributes" ), 1 ); //$NON-NLS-1$ |
| |
| Composite composite = BaseWidgetUtils.createColumnContainer( parent, 2, 1 ); |
| composite.setLayoutData( new GridData( GridData.FILL_BOTH ) ); |
| Composite listComposite = BaseWidgetUtils.createColumnContainer( composite, 1, 1 ); |
| listComposite.setLayoutData( new GridData( GridData.FILL_BOTH ) ); |
| Composite buttonComposite = BaseWidgetUtils.createColumnContainer( composite, 1, 1 ); |
| buttonComposite.setLayoutData( new GridData( GridData.VERTICAL_ALIGN_BEGINNING ) ); |
| |
| Table table = new Table( listComposite, SWT.SINGLE | SWT.BORDER | SWT.H_SCROLL | SWT.FULL_SELECTION ); |
| GridData data = new GridData( GridData.FILL_BOTH ); |
| data.widthHint = 360; |
| data.heightHint = convertHeightInCharsToPixels( 10 ); |
| table.setLayoutData( data ); |
| table.setHeaderVisible( true ); |
| table.setLinesVisible( true ); |
| attributeViewer = new TableViewer( table ); |
| |
| TableColumn c1 = new TableColumn( table, SWT.NONE ); |
| c1.setText( Messages.getString( "BinaryAttributesAndSyntaxesPreferencePage.Attribute" ) ); //$NON-NLS-1$ |
| c1.setWidth( 300 ); |
| TableColumn c2 = new TableColumn( table, SWT.NONE ); |
| c2.setText( Messages.getString( "BinaryAttributesAndSyntaxesPreferencePage.Alias" ) ); //$NON-NLS-1$ |
| c2.setWidth( 60 ); |
| |
| attributeViewer.setColumnProperties( new String[] |
| { Messages.getString( "BinaryAttributesAndSyntaxesPreferencePage.Attribute" ) } ); //$NON-NLS-1$ |
| attributeViewer.setContentProvider( new ArrayContentProvider() ); |
| attributeViewer.setLabelProvider( new AttributeLabelProvider() ); |
| |
| attributeViewer.addDoubleClickListener( new IDoubleClickListener() |
| { |
| public void doubleClick( DoubleClickEvent event ) |
| { |
| editAttribute(); |
| } |
| } ); |
| |
| attributeViewer.addSelectionChangedListener( new ISelectionChangedListener() |
| { |
| public void selectionChanged( SelectionChangedEvent event ) |
| { |
| attributeEditButton.setEnabled( !attributeViewer.getSelection().isEmpty() ); |
| attributeRemoveButton.setEnabled( !attributeViewer.getSelection().isEmpty() ); |
| } |
| } ); |
| |
| attributeAddButton = BaseWidgetUtils.createButton( buttonComposite, Messages |
| .getString( "BinaryAttributesAndSyntaxesPreferencePage.Add" ), 1 ); //$NON-NLS-1$ |
| attributeAddButton.addSelectionListener( new SelectionAdapter() |
| { |
| public void widgetSelected( SelectionEvent e ) |
| { |
| addAttribute(); |
| } |
| } ); |
| attributeEditButton = BaseWidgetUtils.createButton( buttonComposite, Messages |
| .getString( "BinaryAttributesAndSyntaxesPreferencePage.Edit" ), 1 ); //$NON-NLS-1$ |
| attributeEditButton.setEnabled( false ); |
| attributeEditButton.addSelectionListener( new SelectionAdapter() |
| { |
| public void widgetSelected( SelectionEvent e ) |
| { |
| editAttribute(); |
| } |
| } ); |
| attributeRemoveButton = BaseWidgetUtils.createButton( buttonComposite, Messages |
| .getString( "BinaryAttributesAndSyntaxesPreferencePage.Remove" ), 1 ); //$NON-NLS-1$ |
| attributeRemoveButton.setEnabled( false ); |
| attributeRemoveButton.addSelectionListener( new SelectionAdapter() |
| { |
| public void widgetSelected( SelectionEvent e ) |
| { |
| removeAttribute(); |
| } |
| } ); |
| } |
| |
| |
| private void createSyntaxContents( Composite parent ) |
| { |
| BaseWidgetUtils.createLabel( parent, Messages |
| .getString( "BinaryAttributesAndSyntaxesPreferencePage.BinarySyntaxes" ), 1 ); //$NON-NLS-1$ |
| |
| Composite composite = BaseWidgetUtils.createColumnContainer( parent, 2, 1 ); |
| composite.setLayoutData( new GridData( GridData.FILL_BOTH ) ); |
| Composite listComposite = BaseWidgetUtils.createColumnContainer( composite, 1, 1 ); |
| listComposite.setLayoutData( new GridData( GridData.FILL_BOTH ) ); |
| Composite buttonComposite = BaseWidgetUtils.createColumnContainer( composite, 1, 1 ); |
| buttonComposite.setLayoutData( new GridData( GridData.VERTICAL_ALIGN_BEGINNING ) ); |
| |
| Table table = new Table( listComposite, SWT.SINGLE | SWT.BORDER | SWT.H_SCROLL | SWT.FULL_SELECTION ); |
| GridData data = new GridData( GridData.FILL_BOTH ); |
| data.widthHint = 360; |
| data.heightHint = convertHeightInCharsToPixels( 10 ); |
| table.setLayoutData( data ); |
| table.setHeaderVisible( true ); |
| table.setLinesVisible( true ); |
| syntaxViewer = new TableViewer( table ); |
| |
| TableColumn c1 = new TableColumn( table, SWT.NONE ); |
| c1.setText( Messages.getString( "BinaryAttributesAndSyntaxesPreferencePage.Syntax" ) ); //$NON-NLS-1$ |
| c1.setWidth( 300 ); |
| TableColumn c2 = new TableColumn( table, SWT.NONE ); |
| c2.setText( Messages.getString( "BinaryAttributesAndSyntaxesPreferencePage.Desc" ) ); //$NON-NLS-1$ |
| c2.setWidth( 60 ); |
| |
| syntaxViewer.setColumnProperties( new String[] |
| { Messages.getString( "BinaryAttributesAndSyntaxesPreferencePage.Syntax" ) } ); //$NON-NLS-1$ |
| syntaxViewer.setContentProvider( new ArrayContentProvider() ); |
| syntaxViewer.setLabelProvider( new SyntaxLabelProvider() ); |
| |
| syntaxViewer.addDoubleClickListener( new IDoubleClickListener() |
| { |
| public void doubleClick( DoubleClickEvent event ) |
| { |
| editSyntax(); |
| } |
| } ); |
| |
| syntaxViewer.addSelectionChangedListener( new ISelectionChangedListener() |
| { |
| public void selectionChanged( SelectionChangedEvent event ) |
| { |
| syntaxEditButton.setEnabled( !syntaxViewer.getSelection().isEmpty() ); |
| syntaxRemoveButton.setEnabled( !syntaxViewer.getSelection().isEmpty() ); |
| } |
| } ); |
| |
| syntaxAddButton = BaseWidgetUtils.createButton( buttonComposite, Messages |
| .getString( "BinaryAttributesAndSyntaxesPreferencePage.Add" ), 1 ); //$NON-NLS-1$ |
| syntaxAddButton.addSelectionListener( new SelectionAdapter() |
| { |
| public void widgetSelected( SelectionEvent e ) |
| { |
| addSyntax(); |
| } |
| } ); |
| syntaxEditButton = BaseWidgetUtils.createButton( buttonComposite, Messages |
| .getString( "BinaryAttributesAndSyntaxesPreferencePage.Edit" ), 1 ); //$NON-NLS-1$ |
| syntaxEditButton.setEnabled( false ); |
| syntaxEditButton.addSelectionListener( new SelectionAdapter() |
| { |
| public void widgetSelected( SelectionEvent e ) |
| { |
| editSyntax(); |
| } |
| } ); |
| syntaxRemoveButton = BaseWidgetUtils.createButton( buttonComposite, Messages |
| .getString( "BinaryAttributesAndSyntaxesPreferencePage.Remove" ), 1 ); //$NON-NLS-1$ |
| syntaxRemoveButton.setEnabled( false ); |
| syntaxRemoveButton.addSelectionListener( new SelectionAdapter() |
| { |
| public void widgetSelected( SelectionEvent e ) |
| { |
| removeSyntax(); |
| } |
| } ); |
| } |
| |
| |
| private void addAttribute() |
| { |
| AttributeDialog dialog = new AttributeDialog( getShell(), null, attributeNamesAndOids ); |
| if ( dialog.open() == AttributeValueEditorDialog.OK ) |
| { |
| BinaryAttribute attribute = dialog.getAttribute(); |
| |
| // Ensuring we use OID for consistency in the table viewer |
| if ( attributeNames2AtdMap.containsKey( attribute.getAttributeNumericOidOrName() ) ) |
| { |
| attribute = new BinaryAttribute( attributeNames2AtdMap.get( attribute.getAttributeNumericOidOrName() ) |
| .getOid() ); |
| } |
| else if ( attributeOid2AtdMap.containsKey( attribute.getAttributeNumericOidOrName() ) ) |
| { |
| attribute = new BinaryAttribute( attributeOid2AtdMap.get( attribute.getAttributeNumericOidOrName() ) |
| .getOid() ); |
| } |
| |
| attributeList.add( attribute ); |
| attributeViewer.refresh(); |
| } |
| } |
| |
| |
| private void removeAttribute() |
| { |
| Object o = ( ( StructuredSelection ) attributeViewer.getSelection() ).getFirstElement(); |
| attributeList.remove( o ); |
| attributeViewer.refresh(); |
| } |
| |
| |
| private void editAttribute() |
| { |
| StructuredSelection sel = ( StructuredSelection ) attributeViewer.getSelection(); |
| if ( !sel.isEmpty() ) |
| { |
| BinaryAttribute attribute = ( BinaryAttribute ) sel.getFirstElement(); |
| AttributeDialog dialog = new AttributeDialog( getShell(), attribute, attributeNamesAndOids ); |
| if ( dialog.open() == AttributeValueEditorDialog.OK ) |
| { |
| int index = attributeList.indexOf( attribute ); |
| attributeList.set( index, dialog.getAttribute() ); |
| attributeViewer.refresh(); |
| } |
| } |
| } |
| |
| |
| private void addSyntax() |
| { |
| SyntaxDialog dialog = new SyntaxDialog( getShell(), null, syntaxOids ); |
| if ( dialog.open() == SyntaxValueEditorDialog.OK ) |
| { |
| syntaxList.add( dialog.getSyntax() ); |
| syntaxViewer.refresh(); |
| } |
| } |
| |
| |
| private void removeSyntax() |
| { |
| Object o = ( ( StructuredSelection ) syntaxViewer.getSelection() ).getFirstElement(); |
| syntaxList.remove( o ); |
| syntaxViewer.refresh(); |
| } |
| |
| |
| private void editSyntax() |
| { |
| StructuredSelection sel = ( StructuredSelection ) syntaxViewer.getSelection(); |
| if ( !sel.isEmpty() ) |
| { |
| BinarySyntax syntax = ( BinarySyntax ) sel.getFirstElement(); |
| SyntaxDialog dialog = new SyntaxDialog( getShell(), syntax, syntaxOids ); |
| if ( dialog.open() == SyntaxValueEditorDialog.OK ) |
| { |
| int index = syntaxList.indexOf( syntax ); |
| syntaxList.set( index, dialog.getSyntax() ); |
| syntaxViewer.refresh(); |
| } |
| } |
| } |
| |
| |
| /** |
| * {@inheritDoc} |
| */ |
| public boolean performOk() |
| { |
| BinaryAttribute[] attributes = attributeList.toArray( new BinaryAttribute[attributeList.size()] ); |
| BrowserCorePlugin.getDefault().getCorePreferences().setBinaryAttributes( attributes ); |
| |
| BinarySyntax[] syntaxes = syntaxList.toArray( new BinarySyntax[syntaxList.size()] ); |
| BrowserCorePlugin.getDefault().getCorePreferences().setBinarySyntaxes( syntaxes ); |
| |
| return true; |
| } |
| |
| |
| /** |
| * {@inheritDoc} |
| */ |
| protected void performDefaults() |
| { |
| attributeList.clear(); |
| attributeList.addAll( Arrays.asList( BrowserCorePlugin.getDefault().getCorePreferences() |
| .getDefaultBinaryAttributes() ) ); |
| attributeViewer.refresh(); |
| |
| syntaxList.clear(); |
| syntaxList.addAll( Arrays.asList( BrowserCorePlugin.getDefault().getCorePreferences() |
| .getDefaultBinarySyntaxes() ) ); |
| syntaxViewer.refresh(); |
| |
| super.performDefaults(); |
| } |
| |
| class AttributeLabelProvider extends LabelProvider implements ITableLabelProvider |
| { |
| public String getColumnText( Object obj, int index ) |
| { |
| if ( obj instanceof BinaryAttribute ) |
| { |
| BinaryAttribute attribute = ( BinaryAttribute ) obj; |
| if ( index == 0 ) |
| { |
| return attribute.getAttributeNumericOidOrName(); |
| } |
| else if ( index == 1 ) |
| { |
| if ( attribute.getAttributeNumericOidOrName() != null ) |
| { |
| if ( attributeNames2AtdMap.containsKey( attribute.getAttributeNumericOidOrName() ) ) |
| { |
| AttributeType atd = attributeNames2AtdMap.get( attribute.getAttributeNumericOidOrName() ); |
| String s = atd.getOid(); |
| for ( String attributeName : atd.getNames() ) |
| { |
| if ( !attribute.getAttributeNumericOidOrName().equals( attributeName ) ) |
| { |
| s += ", " + attributeName; //$NON-NLS-1$ |
| } |
| } |
| return s; |
| } |
| else if ( attributeOid2AtdMap.containsKey( attribute.getAttributeNumericOidOrName() ) ) |
| { |
| AttributeType atd = attributeOid2AtdMap.get( attribute.getAttributeNumericOidOrName() ); |
| return SchemaUtils.toString( atd ); |
| } |
| else if ( Utils.getOidDescription( attribute.getAttributeNumericOidOrName() ) != null ) |
| { |
| return Utils.getOidDescription( attribute.getAttributeNumericOidOrName() ); |
| } |
| } |
| } |
| } |
| return null; |
| } |
| |
| |
| public Image getColumnImage( Object obj, int index ) |
| { |
| return null; |
| } |
| } |
| |
| class SyntaxLabelProvider extends LabelProvider implements ITableLabelProvider |
| { |
| public String getColumnText( Object obj, int index ) |
| { |
| if ( obj instanceof BinarySyntax ) |
| { |
| BinarySyntax syntax = ( BinarySyntax ) obj; |
| if ( index == 0 ) |
| { |
| return syntax.getSyntaxNumericOid(); |
| } |
| else if ( index == 1 ) |
| { |
| if ( syntax.getSyntaxNumericOid() != null ) |
| { |
| if ( syntaxOid2LsdMap.containsKey( syntax.getSyntaxNumericOid() ) ) |
| { |
| LdapSyntax lsd = ( LdapSyntax ) syntaxOid2LsdMap.get( syntax |
| .getSyntaxNumericOid() ); |
| return SchemaUtils.toString( lsd ); |
| } |
| else if ( Utils.getOidDescription( syntax.getSyntaxNumericOid() ) != null ) |
| { |
| return Utils.getOidDescription( syntax.getSyntaxNumericOid() ); |
| } |
| } |
| } |
| } |
| return null; |
| } |
| |
| |
| public Image getColumnImage( Object obj, int index ) |
| { |
| return null; |
| } |
| } |
| } |