Author: adietish
Date: 2011-07-19 11:19:54 -0400 (Tue, 19 Jul 2011)
New Revision: 33043
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/v7/JBoss7ManagerServicePoller.java
Log:
[JBIDE-9369] corrected NPE when using the service instance variable which is not
instantiated when using the #getCurrentStateSynchronous (the normal life-cycle start with
#beginPolling which initializes all instance variables. if you use
#getCurrentStateSynchronous directly these instance vars are not initialized yet!)
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/v7/JBoss7ManagerServicePoller.java
===================================================================
---
trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/v7/JBoss7ManagerServicePoller.java 2011-07-19
13:58:24 UTC (rev 33042)
+++
trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/v7/JBoss7ManagerServicePoller.java 2011-07-19
15:19:54 UTC (rev 33043)
@@ -56,10 +56,10 @@
return server;
}
- private int getManagementPort() {
- JBoss7Server server = (JBoss7Server)getServer().loadAdapter(JBoss7Server.class, new
NullProgressMonitor());
+ private int getManagementPort(IServer server) {
+ JBoss7Server jbossServer = (JBoss7Server) server.loadAdapter(JBoss7Server.class, new
NullProgressMonitor());
if( server != null )
- return server.getManagementPort();
+ return jbossServer.getManagementPort();
// TODO: provide this default in a single place (currently it is spread across the
// behavior and this poller). This port is already offered as constant in
AS7Manager#MGMT_PORT
return 9999;
@@ -81,7 +81,7 @@
try {
JBoss7ServerState serverState = null;
do {
- serverState = service.getServerState(getServer().getHost(), getManagementPort());
+ serverState = service.getServerState(getServer().getHost(),
getManagementPort(getServer()));
} while (serverState == JBoss7ServerState.STARTING);
return serverState == JBoss7ServerState.RUNNING;
} catch (Exception e) {
@@ -93,7 +93,7 @@
try {
JBoss7ServerState serverState = null;
do {
- serverState = service.getServerState(getServer().getHost(), getManagementPort());
+ serverState = service.getServerState(getServer().getHost(),
getManagementPort(getServer()));
} while (serverState == JBoss7ServerState.RUNNING);
return false;
} catch (JBoss7ManangerConnectException e) {
@@ -105,7 +105,7 @@
public boolean getState() throws PollingException, RequiresInfoException {
try {
- JBoss7ServerState serverState = service.getServerState(getServer().getHost(),
getManagementPort());
+ JBoss7ServerState serverState = service.getServerState(getServer().getHost(),
getManagementPort(getServer()));
return serverState == JBoss7ServerState.RUNNING
|| serverState == JBoss7ServerState.RESTART_REQUIRED;
} catch (Exception e) {
@@ -132,10 +132,15 @@
}
public boolean getCurrentStateSynchronous(IServer server) {
+ IJBoss7ManagerService service = null;
try {
- JBoss7ServerState state = service.getServerState(getServer().getHost(),
getManagementPort());
+ service = JBoss7ManagerUtil.getService(server);
+ JBoss7ServerState state = service.getServerState(server.getHost(),
getManagementPort(server));
return state == JBoss7ServerState.RUNNING ? IServerStatePoller.SERVER_UP :
IServerStatePoller.SERVER_DOWN;
} catch(Exception e) {
+ // ignore
+ } finally {
+ service.dispose();
}
return IServerStatePoller.SERVER_DOWN;
}
Show replies by date