[jboss-cvs] jbosside/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server ...

Robert Stryker rawblem at gmail.com
Wed Aug 9 15:27:13 EDT 2006


  User: rawb    
  Date: 06/08/09 15:27:13

  Modified:    as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server  
                        ServerAttributeHelper.java ServerStateChecker.java
  Log:
  UI and Core changes to allow for non-JMX-enabled servers to be 'started' even when I can't verify it. 
  
  Revision  Changes    Path
  1.6       +15 -3     jbosside/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/ServerAttributeHelper.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: ServerAttributeHelper.java
  ===================================================================
  RCS file: /cvsroot/jboss/jbosside/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/ServerAttributeHelper.java,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -b -r1.5 -r1.6
  --- ServerAttributeHelper.java	8 Aug 2006 14:48:29 -0000	1.5
  +++ ServerAttributeHelper.java	9 Aug 2006 19:27:13 -0000	1.6
  @@ -26,6 +26,13 @@
   	public static final String XPATH_CATEGORY2_PREFIX = "_XPATH_CATEGORY2_PREFIX_";
   	public static final String XPATH_PROPERTY_PREFIX = "_XPATH_PROPERTY_PREFIX_";
   	
  +	public static final String START_TIMEOUT = "_START_TIMEOUT_";
  +	public static final String STOP_TIMEOUT = "_STOP_TIMEOUT_";
  +
  +	
  +	public static final String TIMEOUT_BEHAVIOR = "_TIMEOUT_BEHAVIOR_";
  +	public static final boolean TIMEOUT_ABORT = true;
  +	public static final boolean TIMEOUT_IGNORE = false;
   	
   	
   	private ServerWorkingCopy server;
  @@ -89,9 +96,6 @@
   
   	
   	
  -	public static final String START_TIMEOUT = "_START_TIMEOUT_";
  -	public static final String STOP_TIMEOUT = "_STOP_TIMEOUT_";
  -	
   	public int getStartTimeout() {
   		int prop = server.getAttribute(START_TIMEOUT, -1);
   		int max = ((ServerType)server.getServerType()).getStartTimeout();
  @@ -115,6 +119,14 @@
   	}
   	
   	
  +	public void setTimeoutBehavior(boolean bool) {
  +		server.setAttribute(TIMEOUT_BEHAVIOR, bool);
  +	}
  +	public boolean getTimeoutBehavior() {
  +		return server.getAttribute(TIMEOUT_BEHAVIOR, TIMEOUT_ABORT);
  +	}
  +	
  +	
   	public IServerWorkingCopy getServer() {
   		return this.server;
   	}
  
  
  
  1.12      +28 -1     jbosside/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/ServerStateChecker.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: ServerStateChecker.java
  ===================================================================
  RCS file: /cvsroot/jboss/jbosside/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/ServerStateChecker.java,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -b -r1.11 -r1.12
  --- ServerStateChecker.java	27 Jul 2006 15:59:30 -0000	1.11
  +++ ServerStateChecker.java	9 Aug 2006 19:27:13 -0000	1.12
  @@ -121,12 +121,22 @@
   			ent.getEventLog().branchChanged();
   		}
   
  +		// If we canceled, die in that fashion
   		if( canceled ) {
   			dieCanceled();
   			return;
   		}
   		
   		boolean success = (expectedState && twiddleResults == UP) || (!expectedState && twiddleResults == DOWN);
  +		
  +		// If we timed out while trying to start the server, and we failed to start, die that way.
  +		if( current >= max && !success && expectedState) {
  +			dieTimeoutFailure();
  +			return;
  +		}
  +		
  +		
  +		
   		StateCheckerLogEvent finalEvent = new StateCheckerLogEvent(twiddleResults, expectedState);
   		finalEvent.setTime(current);
   		eventLog.addChild(finalEvent, ProcessLogEvent.ADD_END);
  @@ -156,6 +166,21 @@
   		ent.removeSPListener(this);
   	}
   	
  +	private void dieTimeoutFailure() {
  +		ASDebug.p("Timeout on startup", this);
  +		boolean abortOrIgnore = jbServer.getAttributeHelper().getTimeoutBehavior();
  +		if( abortOrIgnore == ServerAttributeHelper.TIMEOUT_ABORT ) {
  +			behavior.setServerState(true, false);;
  +		} else {
  +			behavior.setServerState(true, true);;
  +		}
  +		
  +		eventLog.addChild(new StateCheckerLogEvent(StateCheckerLogEvent.SERVER_STATE_CHANGE_TIMEOUT));
  +		eventLog.setComplete();
  +		ent.getEventLog().branchChanged();
  +		ent.removeSPListener(this);
  +	}
  +	
   	public static class StateCheckerLogEvent extends ProcessLogEvent {
   		public static final String EXPECTED_STATE = "_EXPECTED_STATE_";
   		public static final String CURRENT_STATE = "_CURRENT_STATE_";
  @@ -164,7 +189,7 @@
   		public static final String EVENT_TYPE = "_EVENT_TYPE_";
   		public static final String TIME = "_TIME_";
   		
  -		
  +		public static final int SERVER_STATE_CHANGE_TIMEOUT = 0;
   		public static final int SERVER_STATE_CHANGE_CANCELED = 1;
   		public static final int SERVER_STARTING = 2;
   		public static final int SERVER_STOPPING = 3;
  @@ -208,6 +233,8 @@
   			if( getEventType() == DURING ) return new String[] {CURRENT_STATE, TIME, TwiddleLogEvent.ARGS, TwiddleLogEvent.OUT};
   			if( getEventType() == AFTER ) return new String[] {EXPECTED_STATE, CURRENT_STATE, SUCCESS, TIME};
   			if( getEventType() == SERVER_STATE_CHANGE_CANCELED ) return new String[] {};
  +			if( getEventType() == SERVER_STATE_CHANGE_TIMEOUT ) return new String[] {};
  +			
   			return new String[] {};
   		}
   		
  
  
  



More information about the jboss-cvs-commits mailing list