diff options
author | Shireesh Anjal <shireesh@gluster.com> | 2011-08-04 21:11:42 +0530 |
---|---|---|
committer | Shireesh Anjal <shireesh@gluster.com> | 2011-08-04 21:12:21 +0530 |
commit | e655257be1ce29eaecd64783f5139222a6209c6d (patch) | |
tree | 6db9cbfd66d6976ce943f394ada24f6e2e3aeeec /src/com.gluster.storage.management.gateway/src/com/gluster/storage/management/gateway/services/GlusterServerService.java | |
parent | 4c71d851c5d773375c6a67cdcf4c3f03a207bedb (diff) |
Fixed Bug 3284 - Landing page throws null pointer exception
Diffstat (limited to 'src/com.gluster.storage.management.gateway/src/com/gluster/storage/management/gateway/services/GlusterServerService.java')
-rw-r--r-- | src/com.gluster.storage.management.gateway/src/com/gluster/storage/management/gateway/services/GlusterServerService.java | 12 |
1 files changed, 8 insertions, 4 deletions
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 45c06b99..cbb8043f 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 @@ -27,8 +27,10 @@ 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.exceptions.GlusterValidationException; +import com.gluster.storage.management.core.model.Entity; import com.gluster.storage.management.core.model.GlusterServer; import com.gluster.storage.management.core.model.Server.SERVER_STATUS; +import com.gluster.storage.management.core.utils.GlusterCoreUtil; import com.gluster.storage.management.gateway.data.ClusterInfo; import com.gluster.storage.management.gateway.utils.GlusterUtil; import com.gluster.storage.management.gateway.utils.ServerUtil; @@ -66,22 +68,24 @@ public class GlusterServerService { } try { - glusterServers = getGlusterServers(clusterName, onlineServer, fetchDetails); + glusterServers = getGlusterServers(clusterName, onlineServer, fetchDetails, maxCount, previousServerName); } catch (ConnectionException e) { // online server has gone offline! try with a different one. onlineServer = clusterService.getNewOnlineServer(clusterName); if (onlineServer == null) { throw new GlusterRuntimeException("No online servers found in cluster [" + clusterName + "]"); } - glusterServers = getGlusterServers(clusterName, onlineServer, fetchDetails); + glusterServers = getGlusterServers(clusterName, onlineServer, fetchDetails, maxCount, previousServerName); } return glusterServers; } - private List<GlusterServer> getGlusterServers(String clusterName, GlusterServer onlineServer, boolean fetchDetails) { + private List<GlusterServer> getGlusterServers(String clusterName, GlusterServer onlineServer, boolean fetchDetails, + Integer maxCount, String previousServerName) { List<GlusterServer> glusterServers; try { glusterServers = glusterUtil.getGlusterServers(onlineServer); + return GlusterCoreUtil.skipEntities(glusterServers, maxCount, previousServerName); } catch (ConnectionException e) { // online server has gone offline! try with a different one. onlineServer = clusterService.getNewOnlineServer(clusterName); @@ -100,7 +104,7 @@ public class GlusterServerService { } return glusterServers; } - + private String fetchDetailsOfServers(List<GlusterServer> glusterServers, GlusterServer onlineServer) { String errMsg = ""; |