private void editSelectedContextEntry()
{
StructuredSelection selection = ( StructuredSelection ) contextEntryTableViewer.getSelection();
if ( !selection.isEmpty() )
{
AttributeValueObject attributeValueObject = ( AttributeValueObject ) selection.getFirstElement();
String oldId = attributeValueObject.getAttribute();
String oldValue = attributeValueObject.getValue();
AttributeValueDialog dialog = new AttributeValueDialog( attributeValueObject );
if ( Dialog.OK == dialog.open() && dialog.isDirty() )
{
Attribute attribute = contextEntry.get( oldId );
if ( attribute != null )
{
attribute.remove( oldValue );
}
AttributeValueObject newAttributeValueObject = dialog.getAttributeValueObject();
attribute = contextEntry.get( newAttributeValueObject.getAttribute() );
if ( attribute != null )
{
try
{
attribute.add( newAttributeValueObject.getValue() );
}
catch ( LdapInvalidAttributeValueException liave )
{
// TODO : handle the exception
}
}
else
{
try
{
contextEntry.put( new DefaultAttribute( newAttributeValueObject.getAttribute(),
newAttributeValueObject.getValue() ) );
}
catch ( LdapException e )
{
// Will never occur
}