summaryrefslogtreecommitdiffstats
path: root/src/com.gluster.storage.management.client
diff options
context:
space:
mode:
authorDhandapani <dhandapani@gluster.com>2011-04-13 13:50:33 +0530
committerDhandapani <dhandapani@gluster.com>2011-04-13 16:09:33 +0530
commite0efe1a6d06870034ca3eef5f50913a0ef6e957a (patch)
tree9b578f5b99b3ecfb897e74d6ce9469b442ac6693 /src/com.gluster.storage.management.client
parent86856e550d8c20b51e1da94a3ca0a3dfed750e06 (diff)
parentfa13d4c3807584cd9f7e690ed1b2c1377fc0b256 (diff)
Merge commit 'upstream/master'
Diffstat (limited to 'src/com.gluster.storage.management.client')
-rw-r--r--src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/GlusterDataModelManager.java26
-rw-r--r--src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/VolumesClient.java13
2 files changed, 28 insertions, 11 deletions
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 0f932df0..a8134c7d 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
@@ -22,6 +22,7 @@ import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
+import java.util.Map;
import com.gluster.storage.management.core.exceptions.GlusterRuntimeException;
import com.gluster.storage.management.core.model.Cluster;
@@ -41,9 +42,10 @@ import com.gluster.storage.management.core.model.Volume;
import com.gluster.storage.management.core.model.Volume.TRANSPORT_TYPE;
import com.gluster.storage.management.core.model.Volume.VOLUME_STATUS;
import com.gluster.storage.management.core.model.Volume.VOLUME_TYPE;
+import com.gluster.storage.management.core.model.VolumeOptionInfo;
import com.gluster.storage.management.core.response.RunningTaskListResponse;
import com.gluster.storage.management.core.response.VolumeListResponse;
-import com.gluster.storage.management.client.VolumesClient;
+import com.gluster.storage.management.core.response.VolumeOptionInfoListResponse;
public class GlusterDataModelManager {
// private Server discoveredServer1, discoveredServer2, discoveredServer3,
@@ -57,6 +59,7 @@ public class GlusterDataModelManager {
private String securityToken;
private String serverName;
private List<ClusterListener> listeners = new ArrayList<ClusterListener>();
+ private List<VolumeOptionInfo> volumeOptionsDefaults;
private GlusterDataModelManager() {
}
@@ -130,12 +133,20 @@ public class GlusterDataModelManager {
createDummyLogMessages();
initializeRunningTasks(cluster);
-
initializeAlerts(cluster);
+ initializeVolumeOptionsDefaults();
model.addCluster(cluster);
}
+ private void initializeVolumeOptionsDefaults() {
+ VolumeOptionInfoListResponse response = new VolumesClient(getSecurityToken()).getVolumeOptionsDefaults();
+ if(!response.getStatus().isSuccess()) {
+ throw new GlusterRuntimeException("Error fetching volume option defaults: [" + response.getStatus().getMessage() + "]");
+ }
+ this.volumeOptionsDefaults = response.getOptions();
+ }
+
private void addVolumeOptions() {
for (Volume vol : new Volume[] { volume1, volume2, volume3, volume4, volume5 }) {
for (int i = 1; i <= 5; i++) {
@@ -376,6 +387,13 @@ public class GlusterDataModelManager {
listener.volumeChanged(volume, new Event(EVENT_TYPE.VOLUME_STATUS_CHANGED, newStatus));
}
}
+
+ public void resetVolumeOptions(Volume volume) {
+ volume.getOptions().clear();
+ for (ClusterListener listener : listeners) {
+ listener.volumeChanged(volume, new Event(EVENT_TYPE.VOLUME_OPTIONS_RESET, null));
+ }
+ }
public void addVolume(Volume volume) {
Cluster cluster = model.getCluster();
@@ -385,4 +403,8 @@ public class GlusterDataModelManager {
listener.volumeCreated(volume);
}
}
+
+ public List<VolumeOptionInfo> getVolumeOptionsDefaults() {
+ return volumeOptionsDefaults;
+ }
}
diff --git a/src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/VolumesClient.java b/src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/VolumesClient.java
index a479e1f7..1d9ddbff 100644
--- a/src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/VolumesClient.java
+++ b/src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/VolumesClient.java
@@ -68,7 +68,7 @@ public class VolumesClient extends AbstractClient {
}
public Status resetVolumeOptions(String volume) {
- return (Status)putRequest(volume, Status.class);
+ return (Status)putRequest(volume + "/" + RESTConstants.SUBRESOURCE_OPTIONS, Status.class);
}
public VolumeListResponse getAllVolumes() {
@@ -79,14 +79,9 @@ public class VolumesClient extends AbstractClient {
return (Volume) fetchSubResource(volumeName, Volume.class);
}
- public List<VolumeOptionInfo> getVolumeOptionsDefaults() {
- String responseStr = (String)fetchSubResource(
- RESTConstants.SUBRESOURCE_DEFAULT_OPTIONS, String.class);
- System.out.println(responseStr);
-
- VolumeOptionInfoListResponse response = (VolumeOptionInfoListResponse) fetchSubResource(
- RESTConstants.SUBRESOURCE_DEFAULT_OPTIONS, VolumeOptionInfoListResponse.class);
- return response.getOptions();
+ public VolumeOptionInfoListResponse getVolumeOptionsDefaults() {
+ return ((VolumeOptionInfoListResponse) fetchSubResource(RESTConstants.SUBRESOURCE_DEFAULT_OPTIONS,
+ VolumeOptionInfoListResponse.class));
}
public static void main(String[] args) {