Hello Shubhendu Tripathi,

I'd like you to do a code review.  Please visit

    http://gerrit.ovirt.org/19167

to review the following change.

Change subject: restapi: REST api for stop rebalance of volume
......................................................................

restapi: REST api for stop rebalance of volume

REST api for stop rebalance of volume

Change-Id: I12c4d83e2c7e8c89dd9f820bc26ef369a4cb0490
Signed-off-by: Shubhendu Tripathi <[email protected]>
Signed-off-by: Timothy Asir <[email protected]>
---
M 
backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/gluster/GlusterVolumeResource.java
M 
backend/manager/modules/restapi/interface/definition/src/main/resources/rsdl_metadata.yaml
M 
backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/gluster/BackendGlusterVolumeResource.java
M 
backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/gluster/BackendGlusterVolumeResourceTest.java
4 files changed, 42 insertions(+), 2 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/67/19167/1

diff --git 
a/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/gluster/GlusterVolumeResource.java
 
b/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/gluster/GlusterVolumeResource.java
index e2ad0fb..a340bb2 100644
--- 
a/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/gluster/GlusterVolumeResource.java
+++ 
b/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/gluster/GlusterVolumeResource.java
@@ -24,7 +24,7 @@
     @Formatted
     public GlusterVolume get();
 
-    @Path("{action: 
(start|stop|rebalance|setOption|resetOption|resetAllOptions)}/{oid}")
+    @Path("{action: 
(start|stop|rebalance|stoprebalance|setOption|resetOption|resetAllOptions)}/{oid}")
     public ActionResource getActionSubresource(@PathParam("action") String 
action, @PathParam("oid") String oid);
 
     @POST
@@ -52,6 +52,13 @@
     @Formatted
     @Consumes({ ApiMediaType.APPLICATION_XML, ApiMediaType.APPLICATION_JSON, 
ApiMediaType.APPLICATION_X_YAML })
     @Actionable
+    @Path("stoprebalance")
+    public Response stopRebalance(Action action);
+
+    @POST
+    @Formatted
+    @Consumes({ ApiMediaType.APPLICATION_XML, ApiMediaType.APPLICATION_JSON, 
ApiMediaType.APPLICATION_X_YAML })
+    @Actionable
     @Path("setoption")
     public Response setOption(Action action);
 
diff --git 
a/backend/manager/modules/restapi/interface/definition/src/main/resources/rsdl_metadata.yaml
 
b/backend/manager/modules/restapi/interface/definition/src/main/resources/rsdl_metadata.yaml
index 8863d84..607d4d1 100644
--- 
a/backend/manager/modules/restapi/interface/definition/src/main/resources/rsdl_metadata.yaml
+++ 
b/backend/manager/modules/restapi/interface/definition/src/main/resources/rsdl_metadata.yaml
@@ -3735,6 +3735,19 @@
     headers:
       Content-Type: {value: application/xml|json, required: true}
       Correlation-Id: {value: 'any string', required: false}
+- name: 
/api/clusters/{cluster:id}/glustervolumes/{glustervolume:id}/stoprebalance|rel=stoprebalance
+  description: invoke the stop rebalance command on the gluster volume 
attached to the
+  request:
+    body:
+      parameterType: Action
+      signatures:
+      - mandatoryArguments: {}
+        optionalArguments: {}
+        description: invoke the stop rebalance command on the gluster volume 
attached to the request
+    urlparams: {}
+    headers:
+      Content-Type: {value: application/xml|json, required: true}
+      Correlation-Id: {value: 'any string', required: false}
 - name: 
/api/clusters/{cluster:id}/glustervolumes/{glustervolume:id}/setoption|rel=setoption
   description: set an option for the gluster volume attached to the cluster
   request:
diff --git 
a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/gluster/BackendGlusterVolumeResource.java
 
b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/gluster/BackendGlusterVolumeResource.java
index c6b81b8..8542f8d 100644
--- 
a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/gluster/BackendGlusterVolumeResource.java
+++ 
b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/gluster/BackendGlusterVolumeResource.java
@@ -11,6 +11,7 @@
 import org.ovirt.engine.core.common.action.VdcActionType;
 import 
org.ovirt.engine.core.common.action.gluster.GlusterVolumeActionParameters;
 import 
org.ovirt.engine.core.common.action.gluster.GlusterVolumeOptionParameters;
+import org.ovirt.engine.core.common.action.gluster.GlusterVolumeParameters;
 import 
org.ovirt.engine.core.common.action.gluster.GlusterVolumeRebalanceParameters;
 import 
org.ovirt.engine.core.common.action.gluster.ResetGlusterVolumeOptionsParameters;
 import 
org.ovirt.engine.core.common.businessentities.gluster.GlusterVolumeEntity;
@@ -70,6 +71,12 @@
     }
 
     @Override
+    public Response stopRebalance(Action action) {
+        return doAction(VdcActionType.StopRebalanceGlusterVolume,
+                new GlusterVolumeParameters(guid), action);
+    }
+
+    @Override
     public Response setOption(Action action) {
         Option option = action.getOption();
         validateParameters(option, "name", "value");
@@ -119,6 +126,6 @@
     }
 
     public String getId() {
-       return this.id;
+        return this.id;
     }
 }
diff --git 
a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/gluster/BackendGlusterVolumeResourceTest.java
 
b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/gluster/BackendGlusterVolumeResourceTest.java
index 8eb8076..31af878 100644
--- 
a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/gluster/BackendGlusterVolumeResourceTest.java
+++ 
b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/gluster/BackendGlusterVolumeResourceTest.java
@@ -22,6 +22,7 @@
 import org.ovirt.engine.core.common.action.VdcActionType;
 import 
org.ovirt.engine.core.common.action.gluster.GlusterVolumeActionParameters;
 import 
org.ovirt.engine.core.common.action.gluster.GlusterVolumeOptionParameters;
+import org.ovirt.engine.core.common.action.gluster.GlusterVolumeParameters;
 import 
org.ovirt.engine.core.common.action.gluster.GlusterVolumeRebalanceParameters;
 import 
org.ovirt.engine.core.common.action.gluster.ResetGlusterVolumeOptionsParameters;
 import org.ovirt.engine.core.common.businessentities.AsyncTaskStatus;
@@ -101,6 +102,18 @@
     }
 
     @Test
+    public void testStopRebalance() throws Exception {
+        setupParentExpectations();
+        resource.setParent(volumesResourceMock);
+        
setUriInfo(setUpActionExpectations(VdcActionType.StopRebalanceGlusterVolume,
+                GlusterVolumeParameters.class,
+                new String[] { "VolumeId" },
+                new Object[] { GUIDS[0] }));
+
+        verifyActionResponse(resource.stopRebalance(new Action()));
+    }
+
+    @Test
     public void testSetOptionInvalidParams() throws Exception {
         setUriInfo(setUpBasicUriExpectations());
         resource.setUriInfo(setUpBasicUriExpectations());


-- 
To view, visit http://gerrit.ovirt.org/19167
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I12c4d83e2c7e8c89dd9f820bc26ef369a4cb0490
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Timothy Asir <[email protected]>
Gerrit-Reviewer: Shubhendu Tripathi <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to