diff options
| author | Shireesh Anjal <shireesh@gluster.com> | 2011-08-22 21:11:03 +0530 |
|---|---|---|
| committer | Shireesh Anjal <shireesh@gluster.com> | 2011-08-22 21:11:03 +0530 |
| commit | a0b54af940a2babca938b40b0e7568e6fd530d11 (patch) | |
| tree | 572a0802bc54d8f1fa5cd9f47b2f7ca8633dc4af /src | |
| parent | 847bb5d1ee2e64427ba8a34275de826270ea12af (diff) | |
Modified ServerUtil#fetchServerDetails to mark server as online if there is a problem connecting to it.
Diffstat (limited to 'src')
3 files changed, 12 insertions, 16 deletions
diff --git a/src/com.gluster.storage.management.gateway/src/com/gluster/storage/management/gateway/services/ClusterService.java b/src/com.gluster.storage.management.gateway/src/com/gluster/storage/management/gateway/services/ClusterService.java index 76c8aca8..852d7365 100644 --- a/src/com.gluster.storage.management.gateway/src/com/gluster/storage/management/gateway/services/ClusterService.java +++ b/src/com.gluster.storage.management.gateway/src/com/gluster/storage/management/gateway/services/ClusterService.java @@ -167,7 +167,7 @@ public class ClusterService { for(GlusterServer glusterServer : glusterServers) { String serverName = glusterServer.getName(); - glusterServerService.fetchServerDetails(glusterServer); + serverUtil.fetchServerDetails(glusterServer); if(glusterServer.isOnline()) { checkAndSetupPublicKey(serverName); } diff --git a/src/com.gluster.storage.management.gateway/src/com/gluster/storage/management/gateway/services/GlusterServerService.java b/src/com.gluster.storage.management.gateway/src/com/gluster/storage/management/gateway/services/GlusterServerService.java index f69b4a75..f80d68ac 100644 --- a/src/com.gluster.storage.management.gateway/src/com/gluster/storage/management/gateway/services/GlusterServerService.java +++ b/src/com.gluster.storage.management.gateway/src/com/gluster/storage/management/gateway/services/GlusterServerService.java @@ -34,7 +34,6 @@ import com.gluster.storage.management.core.exceptions.GlusterRuntimeException; import com.gluster.storage.management.core.exceptions.GlusterValidationException; import com.gluster.storage.management.core.model.GlusterServer; import com.gluster.storage.management.core.model.Server; -import com.gluster.storage.management.core.model.Server.SERVER_STATUS; import com.gluster.storage.management.core.utils.GlusterCoreUtil; import com.gluster.storage.management.core.utils.ProcessUtil; import com.gluster.storage.management.gateway.data.ClusterInfo; @@ -68,15 +67,6 @@ public class GlusterServerService { private static final Logger logger = Logger.getLogger(GlusterServerService.class); - public void fetchServerDetails(GlusterServer server) { - try { - server.setStatus(SERVER_STATUS.ONLINE); - serverUtil.fetchServerDetails(server); - } catch (ConnectionException e) { - server.setStatus(SERVER_STATUS.OFFLINE); - } - } - public List<GlusterServer> getGlusterServers(String clusterName, boolean fetchDetails, Integer maxCount, String previousServerName) { List<GlusterServer> glusterServers; @@ -213,7 +203,7 @@ public class GlusterServerService { public void run() { try { logger.info("fetching details of server [" + server.getName() + "] - start"); - fetchServerDetails(server); + serverUtil.fetchServerDetails(server); logger.info("fetching details of server [" + server.getName() + "] - end"); } catch (Exception e) { logger.error("fetching details of server [" + server.getName() + "] - error", e); @@ -264,7 +254,7 @@ public class GlusterServerService { } if (fetchDetails && server.isOnline()) { - fetchServerDetails(server); + serverUtil.fetchServerDetails(server); } return server; } diff --git a/src/com.gluster.storage.management.gateway/src/com/gluster/storage/management/gateway/utils/ServerUtil.java b/src/com.gluster.storage.management.gateway/src/com/gluster/storage/management/gateway/utils/ServerUtil.java index f762baf5..d31411ec 100644 --- a/src/com.gluster.storage.management.gateway/src/com/gluster/storage/management/gateway/utils/ServerUtil.java +++ b/src/com.gluster.storage.management.gateway/src/com/gluster/storage/management/gateway/utils/ServerUtil.java @@ -37,9 +37,11 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import com.gluster.storage.management.core.constants.CoreConstants; +import com.gluster.storage.management.core.exceptions.ConnectionException; import com.gluster.storage.management.core.exceptions.GlusterRuntimeException; import com.gluster.storage.management.core.model.Server; import com.gluster.storage.management.core.model.Status; +import com.gluster.storage.management.core.model.Server.SERVER_STATUS; import com.gluster.storage.management.core.utils.ProcessResult; import com.gluster.storage.management.core.utils.ProcessUtil; @@ -95,9 +97,13 @@ public class ServerUtil { * Server whose details are to be fetched */ public void fetchServerDetails(Server server) { - Object response = fetchServerDetails(server.getName()); - server.copyFrom((Server) response); // Update the details in <Server> object - server.setDisks(((Server) response).getDisks()); + try { + Server serverDetails = (Server)fetchServerDetails(server.getName()); + server.copyFrom(serverDetails); // Update the details in <Server> object + server.setDisks(serverDetails.getDisks()); + } catch (ConnectionException e) { + server.setStatus(SERVER_STATUS.OFFLINE); + } } public boolean isServerOnline(Server server) { |
