[jbosstools-commits] JBoss Tools SVN: r42682 - branches/jbosstools-3.3.x/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/v7.
jbosstools-commits at lists.jboss.org
jbosstools-commits at lists.jboss.org
Tue Jul 24 00:04:41 EDT 2012
Author: rob.stryker at jboss.com
Date: 2012-07-24 00:04:40 -0400 (Tue, 24 Jul 2012)
New Revision: 42682
Modified:
branches/jbosstools-3.3.x/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/v7/JBoss7ManagerServicePoller.java
Log:
JBIDE_12216 missed file to branch
Modified: branches/jbosstools-3.3.x/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/v7/JBoss7ManagerServicePoller.java
===================================================================
--- branches/jbosstools-3.3.x/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/v7/JBoss7ManagerServicePoller.java 2012-07-24 04:03:57 UTC (rev 42681)
+++ branches/jbosstools-3.3.x/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/v7/JBoss7ManagerServicePoller.java 2012-07-24 04:04:40 UTC (rev 42682)
@@ -99,15 +99,17 @@
}
private String[] handleAsynchCallbacks(String[] prompts) {
- List<String> tmp = new ArrayList<String>();
- tmp.addAll(Arrays.asList(prompts));
- setRequiredProperties(tmp);
- RequiresInfoException e2 = new RequiresInfoException("Requires proper credentials"); //$NON-NLS-1$
- setRequiredInfoException(e2);
- while( !getDone() && !getCanceled() && getRequiredPropertiesReturned() == null ) {
- try {
- Thread.sleep(500);
- } catch(InterruptedException ie) {/* Do nothing */}
+ if( getRequiredPropertiesReturned() == null ) {
+ List<String> tmp = new ArrayList<String>();
+ tmp.addAll(Arrays.asList(prompts));
+ setRequiredProperties(tmp);
+ RequiresInfoException e2 = new RequiresInfoException("Requires proper credentials"); //$NON-NLS-1$
+ setRequiredInfoException(e2);
+ while( !getDone() && !getCanceled() && getRequiredPropertiesReturned() == null ) {
+ try {
+ Thread.sleep(500);
+ } catch(InterruptedException ie) {/* Do nothing */}
+ }
}
if( getDone() || getCanceled() )
@@ -119,6 +121,7 @@
// If not cleared then it will keep asking for username/password
setRequiredInfoException(null);
+ setRequiredProperties(null);
return retPrompts;
}
@@ -184,9 +187,21 @@
serverState = service.getServerState(managementDetails);
return serverState == JBoss7ServerState.RUNNING;
} catch (Exception e) {
+ Throwable root = getRootException(e);
+ // If the exception is one that autnentication failed, re-prompt.
+ if(root != null && root.getMessage() != null && root.getMessage().startsWith("Authentication failed:")) //$NON-NLS-1$
+ provideCredentials(null);
+ // Otherwise, keep trying.
return false;
}
}
+
+ private Throwable getRootException(Throwable e) {
+ Throwable cause = e.getCause();
+ if( cause != e && cause != null )
+ return getRootException(cause);
+ return cause == null ? e : cause;
+ }
private boolean checkShutdown(IJBoss7ManagerService service) {
try {
More information about the jbosstools-commits
mailing list