From e804392391cededbed09208e00eb0ab9312c4b6d Mon Sep 17 00:00:00 2001 From: Shireesh Anjal Date: Thu, 23 Jun 2011 19:50:06 +0530 Subject: REST API Enhancements --- .../management/client/DiscoveredServersClient.java | 37 +++++++++++----------- .../management/client/GlusterDataModelManager.java | 9 +----- 2 files changed, 19 insertions(+), 27 deletions(-) (limited to 'src/com.gluster.storage.management.client') diff --git a/src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/DiscoveredServersClient.java b/src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/DiscoveredServersClient.java index e055a2dd..f35c3e36 100644 --- a/src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/DiscoveredServersClient.java +++ b/src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/DiscoveredServersClient.java @@ -18,13 +18,17 @@ *******************************************************************************/ package com.gluster.storage.management.client; +import static com.gluster.storage.management.core.constants.RESTConstants.QUERY_PARAM_DETAILS; +import static com.gluster.storage.management.core.constants.RESTConstants.RESOURCE_PATH_DISCOVERED_SERVERS; + +import java.util.List; + import javax.ws.rs.core.MultivaluedMap; import com.gluster.storage.management.core.model.Server; import com.gluster.storage.management.core.response.GenericResponse; import com.gluster.storage.management.core.response.ServerListResponse; -import com.gluster.storage.management.core.response.StringListResponse; -import static com.gluster.storage.management.core.constants.RESTConstants.RESOURCE_PATH_DISCOVERED_SERVERS; +import com.gluster.storage.management.core.response.ServerNameListResponse; import com.sun.jersey.core.util.MultivaluedMapImpl; public class DiscoveredServersClient extends AbstractClient { @@ -43,38 +47,33 @@ public class DiscoveredServersClient extends AbstractClient { } @SuppressWarnings("rawtypes") - private Object getDiscoveredServers(Boolean getDetails, Class responseClass) { + private Object getDiscoveredServers(Boolean details, Class responseClass) { MultivaluedMap queryParams = new MultivaluedMapImpl(); - queryParams.putSingle("details", getDetails.toString()); + queryParams.putSingle(QUERY_PARAM_DETAILS, details.toString()); return fetchResource(queryParams, responseClass); } - public StringListResponse getDiscoveredServerNames() { - - return (StringListResponse) getDiscoveredServers(Boolean.FALSE, StringListResponse.class); + public List getDiscoveredServerNames() { + return ((ServerNameListResponse) getDiscoveredServers(Boolean.FALSE, ServerNameListResponse.class)) + .getServerNames(); } - public ServerListResponse getDiscoveredServerDetails() { - return (ServerListResponse) getDiscoveredServers(Boolean.TRUE, ServerListResponse.class); + public List getDiscoveredServerDetails() { + return ((ServerListResponse) getDiscoveredServers(Boolean.TRUE, ServerListResponse.class)).getServers(); } - @SuppressWarnings("unchecked") public Server getServer(String serverName) { - GenericResponse response = (GenericResponse) fetchSubResource(serverName, GenericResponse.class); - return response.getData(); + return (Server) fetchSubResource(serverName, Server.class); } public static void main(String[] args) { UsersClient usersClient = new UsersClient(); if (usersClient.authenticate("gluster", "gluster").isSuccess()) { DiscoveredServersClient serverResource = new DiscoveredServersClient(usersClient.getSecurityToken()); - StringListResponse discoveredServerNames = serverResource.getDiscoveredServerNames(); - System.out.println(discoveredServerNames.getData()); - ServerListResponse discoveredServers = serverResource.getDiscoveredServerDetails(); - System.out.println(discoveredServers.getData()); - - // Server serverDetails = ServerResource.getServer("localhost"); - // System.out.println(serverDetails.getName()); + List discoveredServerNames = serverResource.getDiscoveredServerNames(); + System.out.println(discoveredServerNames); + List discoveredServers = serverResource.getDiscoveredServerDetails(); + System.out.println(discoveredServers); } } } diff --git a/src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/GlusterDataModelManager.java b/src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/GlusterDataModelManager.java index 3c5aedf5..695fae19 100644 --- a/src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/GlusterDataModelManager.java +++ b/src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/GlusterDataModelManager.java @@ -105,14 +105,7 @@ public class GlusterDataModelManager { } private void initializeAutoDiscoveredServers(Cluster cluster) { - ServerListResponse discoveredServerListResponse = new DiscoveredServersClient(securityToken) - .getDiscoveredServerDetails(); - Status status = discoveredServerListResponse.getStatus(); - if (!status.isSuccess() && !status.isPartSuccess()) { - // TODO: Find a way to show warning in case of part success - throw new GlusterRuntimeException(discoveredServerListResponse.getStatus().getMessage()); - } - cluster.setAutoDiscoveredServers(discoveredServerListResponse.getData()); + cluster.setAutoDiscoveredServers(new DiscoveredServersClient(securityToken).getDiscoveredServerDetails()); } private void initializeVolumes(Cluster cluster) { -- cgit