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 2006/11/21 12:06:38 UTC
svn commit: r477624 -
/directory/sandbox/pamarcelot/ldapstudio/ldapstudio-browser/src/main/java/org/apache/directory/ldapstudio/browser/view/views/wrappers/ConnectionWrapper.java
Author: pamarcelot
Date: Tue Nov 21 03:06:38 2006
New Revision: 477624
URL: http://svn.apache.org/viewvc?view=rev&rev=477624
Log:
Updating ConnectionWrapper. An error '-1' was thrown when the Base dn could not be resolved. If a connection was 'in error', we had to click 'refresh' to try to connect again which prevented using a simple double-click. Those 2 bugs are now fixed.
Modified:
directory/sandbox/pamarcelot/ldapstudio/ldapstudio-browser/src/main/java/org/apache/directory/ldapstudio/browser/view/views/wrappers/ConnectionWrapper.java
Modified: directory/sandbox/pamarcelot/ldapstudio/ldapstudio-browser/src/main/java/org/apache/directory/ldapstudio/browser/view/views/wrappers/ConnectionWrapper.java
URL: http://svn.apache.org/viewvc/directory/sandbox/pamarcelot/ldapstudio/ldapstudio-browser/src/main/java/org/apache/directory/ldapstudio/browser/view/views/wrappers/ConnectionWrapper.java?view=diff&rev=477624&r1=477623&r2=477624
==============================================================================
--- directory/sandbox/pamarcelot/ldapstudio/ldapstudio-browser/src/main/java/org/apache/directory/ldapstudio/browser/view/views/wrappers/ConnectionWrapper.java (original)
+++ directory/sandbox/pamarcelot/ldapstudio/ldapstudio-browser/src/main/java/org/apache/directory/ldapstudio/browser/view/views/wrappers/ConnectionWrapper.java Tue Nov 21 03:06:38 2006
@@ -29,6 +29,7 @@
import org.apache.directory.ldapstudio.browser.view.ImageKeys;
import org.apache.directory.ldapstudio.browser.view.views.BrowserView;
import org.apache.directory.shared.ldap.codec.LdapResponse;
+import org.apache.directory.shared.ldap.codec.LdapResult;
import org.apache.directory.shared.ldap.codec.search.SearchResultEntry;
import org.eclipse.jface.dialogs.MessageDialog;
import org.eclipse.swt.graphics.Image;
@@ -133,6 +134,10 @@
{
children = new ArrayList<EntryWrapper>();
+ // Getting the Browser View
+ BrowserView browserView = ( BrowserView ) PlatformUI.getWorkbench().getActiveWorkbenchWindow()
+ .getActivePage().findView( BrowserView.ID );
+
try
{
// Initialization of the DSML Engine and the DSML Response Parser
@@ -158,34 +163,46 @@
if ( ldapResponse instanceof SearchResponse )
{
- // Updating the HasError Flag and updating the UI
- if ( hasError() )
+ SearchResponse searchResponse = ( SearchResponse ) ldapResponse;
+
+ LdapResult ldapResult = searchResponse.getSearchResultDone().getLdapResult();
+
+ if ( ldapResult.getResultCode() == 0 )
{
- setHasError( false );
+ // Updating the HasError Flag and updating the UI
+ if ( hasError() )
+ {
+ setHasError( false );
+
+ browserView.getViewer().update( this, null );
+ }
+
+ // Getting the Base DN
+ SearchResultEntry baseDN = ( ( SearchResponse ) ldapResponse ).getCurrentSearchResultEntry();
+
+ EntryWrapper baseDNWrapper = new EntryWrapper( baseDN );
+ baseDNWrapper.setParent( this );
+ baseDNWrapper.setIsBaseDN( true );
- // Getting the Browser View
- BrowserView browserView = ( BrowserView ) PlatformUI.getWorkbench().getActiveWorkbenchWindow()
- .getActivePage().findView( BrowserView.ID );
- browserView.getViewer().update( this, null );
+ children.add( baseDNWrapper );
}
+ else
+ {
+ // Displaying an error
+ MessageDialog.openError( PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(),
+ "Error !", "An error has ocurred.\n" + ldapResult.getErrorMessage() );
- // Getting the Base DN
- SearchResultEntry baseDN = ( ( SearchResponse ) ldapResponse ).getCurrentSearchResultEntry();
-
- EntryWrapper baseDNWrapper = new EntryWrapper( baseDN );
- baseDNWrapper.setParent( this );
- baseDNWrapper.setIsBaseDN( true );
+ setHasError( true );
+ clearChildren();
- children.add( baseDNWrapper );
+ browserView.getViewer().update( this, null );
+ return null;
+ }
}
else if ( ldapResponse instanceof ErrorResponse )
{
setHasError( true );
clearChildren();
-
- // Getting the Browser View
- BrowserView browserView = ( BrowserView ) PlatformUI.getWorkbench().getActiveWorkbenchWindow()
- .getActivePage().findView( BrowserView.ID );
ErrorResponse errorResponse = ( ErrorResponse ) ldapResponse;
// Displaying an error