if ( result == Window.OK ) { stack.commit(); refreshVisuals(); } else { stack.rollback(); }
CommandStack stack = SessionHandleAdapter.getInstance( ) .getCommandStack( ); final String transName = Messages.getFormattedString( "ExtendedEditPart.edit", new Object[]{getExtendedItemHandle( ).getExtensionName( )} );  stack.startTrans( transName ); int result = Window.CANCEL; try { result = builder.open( getExtendedItemHandle( ) ); } catch ( RuntimeException e ) { ExceptionHandler.handle( e ); stack.rollback( ); return; }  if ( result == Window.OK ) { stack.commit( ); refreshVisuals( ); } else { stack.rollback( ); }
	public void performDirectEdit( )	{		IReportItemBuilderUI builder = ExtensionPointManager.getInstance( )				.getExtendedElementPoint( ( (ExtendedItemHandle) getModel( ) ).getExtensionName( ) )				.getReportItemBuilderUI( );							if ( builder != null )		{		    // Start a transaction before opening builder		    		    CommandStack stack = SessionHandleAdapter.getInstance( ).getCommandStack( );			final String transName = Messages.getFormattedString( "ExtendedEditPart.edit", new Object[] { getExtendedItemHandle( ).getExtensionName( ) } ); //$NON-NLS-1$		               stack.startTrans( transName );            int result = Window.CANCEL;            try            {                result = builder.open( getExtendedItemHandle() );            }            catch ( RuntimeException e )            {                ExceptionHandler.handle( e );                stack.rollback();                return;            }            if ( result == Window.OK )            {                stack.commit();                refreshVisuals();            }            else            {                stack.rollback();            }           		}	}