diff options
| author | Shireesh Anjal <shireesh@gluster.com> | 2011-02-22 20:33:47 +0530 |
|---|---|---|
| committer | Shireesh Anjal <shireesh@gluster.com> | 2011-02-22 20:33:47 +0530 |
| commit | c95d2ea02cc4126ed5cf33dac5fba5971dcf88c6 (patch) | |
| tree | 83b4477ed38636a59360409f342d493c0d91fb3b /com.gluster.storage.management.client/src/com/gluster | |
| parent | 3b50aecc54645135f31ae9f1f963ada100c316f3 (diff) | |
new resource GlusterServersResource and it's client
Diffstat (limited to 'com.gluster.storage.management.client/src/com/gluster')
| -rw-r--r-- | com.gluster.storage.management.client/src/com/gluster/storage/management/client/GlusterServersClient.java | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/com.gluster.storage.management.client/src/com/gluster/storage/management/client/GlusterServersClient.java b/com.gluster.storage.management.client/src/com/gluster/storage/management/client/GlusterServersClient.java new file mode 100644 index 00000000..fcc6f243 --- /dev/null +++ b/com.gluster.storage.management.client/src/com/gluster/storage/management/client/GlusterServersClient.java @@ -0,0 +1,61 @@ +/******************************************************************************* + * Copyright (c) 2011 Gluster, Inc. <http://www.gluster.com> + * This file is part of Gluster Management Console. + * + * Gluster Management Console is free software; you can redistribute it and/or + * modify it under the terms of the GNU Affero General Public License as published + * by the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * Gluster Management Console is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License + * for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see + * <http://www.gnu.org/licenses/>. + *******************************************************************************/ +package com.gluster.storage.management.client; + +import java.util.List; + +import com.gluster.storage.management.core.model.Server; +import com.gluster.storage.management.core.model.ServerDetailsResponse; +import com.gluster.storage.management.core.model.ServerListResponse; + +public class GlusterServersClient extends AbstractClient { + private static final String RESOURCE_NAME = "cluster/servers"; + + public GlusterServersClient(String serverName) { + super(serverName); + } + + @Override + public String getResourceName() { + return RESOURCE_NAME; + } + + public List<Server> getServers() { + @SuppressWarnings("unchecked") + ServerListResponse<Server> response = (ServerListResponse<Server>) fetchResource(ServerListResponse.class); + return response.getData(); + } + + public Server getServer(String serverName) { + @SuppressWarnings("unchecked") + ServerDetailsResponse<Server> response = (ServerDetailsResponse<Server>) fetchSubResource(serverName, + ServerDetailsResponse.class); + return response.getData(); + } + + public String getServerXML(String serverName) { + return ((String) fetchSubResource(serverName, String.class)); + } + + public static void main(String[] args) { + GlusterServersClient ServerResource = new GlusterServersClient("localhost"); + List<Server> glusterServers = ServerResource.getServers(); + System.out.println(glusterServers.size()); + } +} |
