Ravi Nori has uploaded a new change for review. Change subject: restapi : Add brick operation fails from ovirt-shell(#923169) ......................................................................
restapi : Add brick operation fails from ovirt-shell(#923169) add brick operation fails from ovirt-shell Change-Id: If3f1f73f6acc9d671c2d93ecb5e4ab757fa23b72 Bug-Url: https://bugzilla.redhat.com/923169 Signed-off-by: Ravi Nori <[email protected]> --- M backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/gluster/GlusterBricksResource.java M backend/manager/modules/restapi/interface/definition/src/main/resources/api.xsd 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/BackendGlusterBricksResource.java M backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/gluster/BackendGlusterBricksResourceTest.java 5 files changed, 23 insertions(+), 7 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/36/13936/1 diff --git a/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/gluster/GlusterBricksResource.java b/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/gluster/GlusterBricksResource.java index 91451dd..3ee70ee 100644 --- a/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/gluster/GlusterBricksResource.java +++ b/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/gluster/GlusterBricksResource.java @@ -14,6 +14,7 @@ import org.jboss.resteasy.annotations.providers.jaxb.Formatted; import org.ovirt.engine.api.model.GlusterBricks; +import org.ovirt.engine.api.model.GlusterVolumesBricks; import org.ovirt.engine.api.resource.MediaType; import org.ovirt.engine.api.resource.RsdlIgnore; @@ -38,7 +39,7 @@ @POST @Formatted @Consumes({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON, MediaType.APPLICATION_X_YAML }) - public Response add(GlusterBricks bricks); + public Response add(GlusterVolumesBricks bricks); /** * Removes the given brick from the volume and deletes it from the database. diff --git a/backend/manager/modules/restapi/interface/definition/src/main/resources/api.xsd b/backend/manager/modules/restapi/interface/definition/src/main/resources/api.xsd index b0dc308..d1b66a9 100644 --- a/backend/manager/modules/restapi/interface/definition/src/main/resources/api.xsd +++ b/backend/manager/modules/restapi/interface/definition/src/main/resources/api.xsd @@ -3080,6 +3080,17 @@ </xs:complexContent> </xs:complexType> + <xs:element name="glustervolumesbricks" type="GlusterVolumesBricks" /> + <xs:complexType name="GlusterVolumesBricks"> + <xs:complexContent> + <xs:extension base="BaseResources"> + <xs:sequence> + <xs:element ref="bricks" minOccurs="0" maxOccurs="1" /> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + <xs:element name="pm_proxies" type="PmProxies"/> <xs:complexType name="PmProxies"> <xs:sequence> 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 917565a..1b03f13 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 @@ -2971,12 +2971,11 @@ - name: /api/clusters/{cluster:id}/glustervolumes/{glustervolume:id}/bricks|rel=add request: body: - parameterType: Bricks + parameterType: GlusterVolumesBricks signatures: - mandatoryArguments: - bricks.brick--COLLECTION: {brick.server_id: 'xs:string', brick.brick_dir: 'xs:string'} - optionalArguments: - bricks.brick--COLLECTION: {brick.replica_count: 'xs:unsignedShort', brick.stripe_count: 'xs:unsignedShort'} + glustervolumesbricks.bricks.brick--COLLECTION: {brick.server_id: 'xs:string', brick.brick_dir: 'xs:string'} + optionalArguments: {glustervolumesbricks.bricks.replica_count: 'xs:unsignedShort', glustervolumesbricks.bricks.stripe_count: 'xs:unsignedShort'} urlparams: {} headers: Content-Type: {value: application/xml|json, required: true} diff --git a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/gluster/BackendGlusterBricksResource.java b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/gluster/BackendGlusterBricksResource.java index 651dc3d..d242707 100644 --- a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/gluster/BackendGlusterBricksResource.java +++ b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/gluster/BackendGlusterBricksResource.java @@ -10,6 +10,7 @@ import org.ovirt.engine.api.model.GlusterBrick; import org.ovirt.engine.api.model.GlusterBricks; import org.ovirt.engine.api.model.GlusterVolume; +import org.ovirt.engine.api.model.GlusterVolumesBricks; import org.ovirt.engine.api.resource.gluster.GlusterBrickResource; import org.ovirt.engine.api.resource.gluster.GlusterBricksResource; import org.ovirt.engine.api.restapi.resource.AbstractBackendCollectionResource; @@ -80,7 +81,8 @@ } @Override - public Response add(GlusterBricks bricks) { + public Response add(GlusterVolumesBricks glusterVolumeBricks) { + GlusterBricks bricks = glusterVolumeBricks.getBricks(); for (GlusterBrick brick : bricks.getGlusterBricks()) { validateParameters(brick, "serverId", "brickDir"); } diff --git a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/gluster/BackendGlusterBricksResourceTest.java b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/gluster/BackendGlusterBricksResourceTest.java index ef36816..da13abc 100644 --- a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/gluster/BackendGlusterBricksResourceTest.java +++ b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/gluster/BackendGlusterBricksResourceTest.java @@ -23,6 +23,7 @@ import org.ovirt.engine.api.model.GlusterBrick; import org.ovirt.engine.api.model.GlusterBricks; import org.ovirt.engine.api.model.GlusterVolume; +import org.ovirt.engine.api.model.GlusterVolumesBricks; import org.ovirt.engine.api.resource.ClusterResource; import org.ovirt.engine.api.restapi.resource.AbstractBackendCollectionResourceTest; import org.ovirt.engine.api.restapi.resource.AbstractBackendResource; @@ -168,7 +169,9 @@ new String[] { "Id" }, new Object[] { GUIDS[0] }, getEntity(0)); - Response response = collection.add(createModel()); + GlusterVolumesBricks bricks = new GlusterVolumesBricks(); + bricks.setBricks(createModel()); + Response response = collection.add(bricks); assertEquals(201, response.getStatus()); assertTrue(response.getEntity() instanceof GlusterBricks); verifyModel(((GlusterBricks) response.getEntity()).getGlusterBricks().get(0), 0); -- To view, visit http://gerrit.ovirt.org/13936 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: If3f1f73f6acc9d671c2d93ecb5e4ab757fa23b72 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Ravi Nori <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
