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