Juan Hernandez has uploaded a new change for review.

Change subject: restapi: Move Network remove from collection to entity
......................................................................

restapi: Move Network remove from collection to entity

This patch moves the method that implements the DELETE operation from
the collection interface to the entity interface. This is needed to
avoid issues with newer versions of Resteasy.

Change-Id: Ib106d6cdf8b48931b257df2ef306317b8975b912
Related: https://gerrit.ovirt.org/41783
Signed-off-by: Juan Hernandez <[email protected]>
---
M 
backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/AssignedNetworkResource.java
M 
backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/AssignedNetworksResource.java
M 
backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/NetworkResource.java
M 
backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/NetworksResource.java
M 
backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/AbstractBackendNetworkResource.java
M 
backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/AbstractBackendNetworksResource.java
M 
backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendClusterNetworkResource.java
M 
backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendClusterNetworksResource.java
M 
backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendNetworkResource.java
M 
backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendNetworksResource.java
M 
backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendClusterNetworkResourceTest.java
M 
backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendClusterNetworksResourceTest.java
M 
backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendDataCenterNetworkResourceTest.java
M 
backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendDataCenterNetworksResourceTest.java
M 
backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendNetworkResourceTest.java
M 
backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendNetworksResourceTest.java
16 files changed, 305 insertions(+), 284 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/07/41807/1

diff --git 
a/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/AssignedNetworkResource.java
 
b/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/AssignedNetworkResource.java
index b0adbfb..6459134 100644
--- 
a/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/AssignedNetworkResource.java
+++ 
b/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/AssignedNetworkResource.java
@@ -16,12 +16,14 @@
 
 package org.ovirt.engine.api.resource;
 
+import javax.ws.rs.DELETE;
 import javax.ws.rs.Produces;
-
+import javax.ws.rs.core.Response;
 
 import org.ovirt.engine.api.model.Network;
 
 @Produces({ApiMediaType.APPLICATION_XML, ApiMediaType.APPLICATION_JSON, 
ApiMediaType.APPLICATION_X_YAML})
 public interface AssignedNetworkResource extends UpdatableResource<Network> {
-
+    @DELETE
+    Response remove();
 }
diff --git 
a/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/AssignedNetworksResource.java
 
b/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/AssignedNetworksResource.java
index 5c1e1fd..a4b2e1b 100644
--- 
a/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/AssignedNetworksResource.java
+++ 
b/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/AssignedNetworksResource.java
@@ -17,7 +17,6 @@
 package org.ovirt.engine.api.resource;
 
 import javax.ws.rs.Consumes;
-import javax.ws.rs.DELETE;
 import javax.ws.rs.GET;
 import javax.ws.rs.Path;
 import javax.ws.rs.PathParam;
@@ -28,21 +27,15 @@
 import org.ovirt.engine.api.model.Network;
 import org.ovirt.engine.api.model.Networks;
 
-
 @Produces({ApiMediaType.APPLICATION_XML, ApiMediaType.APPLICATION_JSON, 
ApiMediaType.APPLICATION_X_YAML})
 public interface AssignedNetworksResource {
-
     @GET
-    public Networks list();
+    Networks list();
 
     @POST
     @Consumes({ApiMediaType.APPLICATION_XML, ApiMediaType.APPLICATION_JSON, 
ApiMediaType.APPLICATION_X_YAML})
-    public Response add(Network network);
-
-    @DELETE
-    @Path("{id}")
-    public Response remove(@PathParam("id") String id);
+    Response add(Network network);
 
     @Path("{id}")
-    public AssignedNetworkResource 
getAssignedNetworkSubResource(@PathParam("id") String id);
+    AssignedNetworkResource getAssignedNetworkSubResource(@PathParam("id") 
String id);
 }
diff --git 
a/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/NetworkResource.java
 
b/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/NetworkResource.java
index 775488b..d5fd116 100644
--- 
a/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/NetworkResource.java
+++ 
b/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/NetworkResource.java
@@ -16,21 +16,24 @@
 
 package org.ovirt.engine.api.resource;
 
+import javax.ws.rs.DELETE;
 import javax.ws.rs.Path;
 import javax.ws.rs.Produces;
+import javax.ws.rs.core.Response;
 
 import org.ovirt.engine.api.model.Network;
 
-
 @Produces({ApiMediaType.APPLICATION_XML, ApiMediaType.APPLICATION_JSON, 
ApiMediaType.APPLICATION_X_YAML})
 public interface NetworkResource extends UpdatableResource<Network> {
+    @DELETE
+    Response remove();
 
     @Path("permissions")
-    public AssignedPermissionsResource getPermissionsResource();
+    AssignedPermissionsResource getPermissionsResource();
 
     @Path("vnicprofiles")
-    public AssignedVnicProfilesResource getVnicProfilesResource();
+    AssignedVnicProfilesResource getVnicProfilesResource();
 
     @Path("labels")
-    public LabelsResource getLabelsResource();
+    LabelsResource getLabelsResource();
 }
diff --git 
a/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/NetworksResource.java
 
b/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/NetworksResource.java
index 935b8e1..9b9ed2d 100644
--- 
a/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/NetworksResource.java
+++ 
b/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/NetworksResource.java
@@ -17,7 +17,6 @@
 package org.ovirt.engine.api.resource;
 
 import javax.ws.rs.Consumes;
-import javax.ws.rs.DELETE;
 import javax.ws.rs.GET;
 import javax.ws.rs.Path;
 import javax.ws.rs.PathParam;
@@ -31,18 +30,13 @@
 @Path("/networks")
 @Produces({ApiMediaType.APPLICATION_XML, ApiMediaType.APPLICATION_JSON, 
ApiMediaType.APPLICATION_X_YAML})
 public interface NetworksResource {
-
     @GET
-    public Networks list();
+    Networks list();
 
     @POST
     @Consumes({ApiMediaType.APPLICATION_XML, ApiMediaType.APPLICATION_JSON, 
ApiMediaType.APPLICATION_X_YAML})
-    public Response add(Network network);
-
-    @DELETE
-    @Path("{id}")
-    public Response remove(@PathParam("id") String id);
+    Response add(Network network);
 
     @Path("{id}")
-    public NetworkResource getNetworkSubResource(@PathParam("id") String id);
+    NetworkResource getNetworkSubResource(@PathParam("id") String id);
 }
diff --git 
a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/AbstractBackendNetworkResource.java
 
b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/AbstractBackendNetworkResource.java
index 733af06..d5d48b9 100644
--- 
a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/AbstractBackendNetworkResource.java
+++ 
b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/AbstractBackendNetworkResource.java
@@ -1,16 +1,25 @@
 package org.ovirt.engine.api.restapi.resource;
 
-
 import org.ovirt.engine.api.model.Network;
+import org.ovirt.engine.core.common.action.VdcActionParametersBase;
+import org.ovirt.engine.core.common.action.VdcActionType;
 
-public class AbstractBackendNetworkResource
+import javax.ws.rs.core.Response;
+
+public abstract class AbstractBackendNetworkResource
     extends AbstractBackendSubResource<Network, 
org.ovirt.engine.core.common.businessentities.network.Network> {
 
     protected AbstractBackendNetworksResource parent;
+    private VdcActionType removeAction;
 
-    public AbstractBackendNetworkResource(String id, 
AbstractBackendNetworksResource parent, String... subCollections) {
+    public AbstractBackendNetworkResource(
+            String id,
+            AbstractBackendNetworksResource parent,
+            VdcActionType removeAction,
+            String... subCollections) {
         super(id, Network.class, 
org.ovirt.engine.core.common.businessentities.network.Network.class, 
subCollections);
         this.parent = parent;
+        this.removeAction = removeAction;
     }
 
     public Network get() {
@@ -29,4 +38,16 @@
     protected Network doPopulate(Network model, 
org.ovirt.engine.core.common.businessentities.network.Network entity) {
         return model;
     }
+
+    protected abstract VdcActionParametersBase 
getRemoveParameters(org.ovirt.engine.core.common.businessentities.network.Network
 entity);
+
+    public Response remove() {
+        get();
+        org.ovirt.engine.core.common.businessentities.network.Network entity = 
parent.lookupNetwork(asGuidOr404(id));
+        if (entity == null) {
+            notFound();
+            return null;
+        }
+        return performAction(removeAction, getRemoveParameters(entity));
+    }
 }
diff --git 
a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/AbstractBackendNetworksResource.java
 
b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/AbstractBackendNetworksResource.java
index f93910c..05bdd31 100644
--- 
a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/AbstractBackendNetworksResource.java
+++ 
b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/AbstractBackendNetworksResource.java
@@ -2,8 +2,6 @@
 
 import java.util.List;
 
-import javax.ws.rs.core.Response;
-
 import org.ovirt.engine.api.model.Network;
 import org.ovirt.engine.api.model.Networks;
 import org.ovirt.engine.core.common.action.VdcActionParametersBase;
@@ -12,41 +10,24 @@
 import org.ovirt.engine.core.common.queries.VdcQueryType;
 import org.ovirt.engine.core.compat.Guid;
 
-public abstract class AbstractBackendNetworksResource extends 
AbstractBackendCollectionResource<Network, 
org.ovirt.engine.core.common.businessentities.network.Network>
-{
+public abstract class AbstractBackendNetworksResource
+    extends AbstractBackendCollectionResource<Network, 
org.ovirt.engine.core.common.businessentities.network.Network> {
 
     protected VdcQueryType queryType;
     protected VdcActionType addAction;
-    protected VdcActionType removeAction;
 
-    public AbstractBackendNetworksResource(VdcQueryType queryType,
-            VdcActionType addAction,
-            VdcActionType removeAction,
-            String... subCollections) {
+    public AbstractBackendNetworksResource(VdcQueryType queryType, 
VdcActionType addAction, String... subCollections) {
         super(Network.class, 
org.ovirt.engine.core.common.businessentities.network.Network.class, 
subCollections);
         this.queryType = queryType;
         this.addAction = addAction;
-        this.removeAction = removeAction;
     }
 
     protected abstract VdcQueryParametersBase getQueryParameters();
 
     protected abstract VdcActionParametersBase getAddParameters(Network 
network, org.ovirt.engine.core.common.businessentities.network.Network entity);
 
-    protected abstract VdcActionParametersBase 
getRemoveParameters(org.ovirt.engine.core.common.businessentities.network.Network
 entity);
-
     public Networks list() {
         return mapCollection(getBackendCollection(queryType, 
getQueryParameters()));
-    }
-
-    @Override
-    public Response performRemove(String id) {
-        org.ovirt.engine.core.common.businessentities.network.Network entity = 
lookupNetwork(asGuidOr404(id));
-        if (entity == null) {
-            notFound();
-            return null;
-        }
-        return performAction(removeAction, getRemoveParameters(entity));
     }
 
     protected Networks 
mapCollection(List<org.ovirt.engine.core.common.businessentities.network.Network>
 entities) {
diff --git 
a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendClusterNetworkResource.java
 
b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendClusterNetworkResource.java
index 7f25c45..2a25dae 100644
--- 
a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendClusterNetworkResource.java
+++ 
b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendClusterNetworkResource.java
@@ -2,7 +2,9 @@
 
 import org.ovirt.engine.api.model.Network;
 import org.ovirt.engine.api.resource.AssignedNetworkResource;
+import org.ovirt.engine.core.common.action.AttachNetworkToVdsGroupParameter;
 import org.ovirt.engine.core.common.action.NetworkClusterParameters;
+import org.ovirt.engine.core.common.action.VdcActionParametersBase;
 import org.ovirt.engine.core.common.action.VdcActionType;
 
 public class BackendClusterNetworkResource
@@ -12,7 +14,7 @@
     protected BackendClusterNetworksResource cluster;
 
     public BackendClusterNetworkResource(String id, 
BackendClusterNetworksResource parent) {
-        super(id, parent);
+        super(id, parent, VdcActionType.DetachNetworkToVdsGroup);
         this.cluster = parent;
     }
 
@@ -36,4 +38,9 @@
                       new NetworkClusterParameters(network.getCluster()));
         return get();
     }
+
+    @Override
+    protected VdcActionParametersBase 
getRemoveParameters(org.ovirt.engine.core.common.businessentities.network.Network
 entity) {
+        return new AttachNetworkToVdsGroupParameter(cluster.getVDSGroup(), 
entity);
+    }
 }
diff --git 
a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendClusterNetworksResource.java
 
b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendClusterNetworksResource.java
index 7a727c3..5b88e66 100644
--- 
a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendClusterNetworksResource.java
+++ 
b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendClusterNetworksResource.java
@@ -25,9 +25,7 @@
     private String clusterId;
 
     public BackendClusterNetworksResource(String clusterId) {
-        super(VdcQueryType.GetAllNetworksByClusterId,
-              VdcActionType.AttachNetworkToVdsGroup,
-              VdcActionType.DetachNetworkToVdsGroup);
+        super(VdcQueryType.GetAllNetworksByClusterId, 
VdcActionType.AttachNetworkToVdsGroup);
         this.clusterId = clusterId;
     }
 
@@ -99,11 +97,6 @@
     @Override
     protected VdcActionParametersBase getAddParameters(Network network,
             org.ovirt.engine.core.common.businessentities.network.Network 
entity) {
-        return new AttachNetworkToVdsGroupParameter(getVDSGroup(), entity);
-    }
-
-    @Override
-    protected VdcActionParametersBase 
getRemoveParameters(org.ovirt.engine.core.common.businessentities.network.Network
 entity) {
         return new AttachNetworkToVdsGroupParameter(getVDSGroup(), entity);
     }
 
diff --git 
a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendNetworkResource.java
 
b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendNetworkResource.java
index ebe2b5c..5342722 100644
--- 
a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendNetworkResource.java
+++ 
b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendNetworkResource.java
@@ -8,6 +8,7 @@
 import org.ovirt.engine.api.resource.NetworkResource;
 import org.ovirt.engine.core.common.VdcObjectType;
 import org.ovirt.engine.core.common.action.AddNetworkStoragePoolParameters;
+import org.ovirt.engine.core.common.action.RemoveNetworkParameters;
 import org.ovirt.engine.core.common.action.VdcActionParametersBase;
 import org.ovirt.engine.core.common.action.VdcActionType;
 import org.ovirt.engine.core.common.queries.GetPermissionsForObjectParameters;
@@ -16,7 +17,7 @@
 public class BackendNetworkResource extends AbstractBackendNetworkResource 
implements NetworkResource {
 
     public BackendNetworkResource(String id, BackendNetworksResource parent) {
-        super(id, parent, BackendNetworksResource.SUB_COLLECTIONS);
+        super(id, parent, VdcActionType.RemoveNetwork, 
BackendNetworksResource.SUB_COLLECTIONS);
     }
 
     @Override
@@ -65,4 +66,9 @@
     public LabelsResource getLabelsResource() {
         return inject(new BackendNetworkLabelsResource(asGuid(id)));
     }
+
+    @Override
+    protected VdcActionParametersBase 
getRemoveParameters(org.ovirt.engine.core.common.businessentities.network.Network
 entity) {
+        return new RemoveNetworkParameters(entity.getId());
+    }
 }
diff --git 
a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendNetworksResource.java
 
b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendNetworksResource.java
index 672e6e6..020e963 100644
--- 
a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendNetworksResource.java
+++ 
b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendNetworksResource.java
@@ -1,6 +1,5 @@
 package org.ovirt.engine.api.restapi.resource;
 
-
 import javax.ws.rs.core.Response;
 
 import org.ovirt.engine.api.model.Network;
@@ -8,8 +7,6 @@
 import org.ovirt.engine.api.resource.NetworkResource;
 import org.ovirt.engine.api.resource.NetworksResource;
 import org.ovirt.engine.core.common.action.AddNetworkStoragePoolParameters;
-import org.ovirt.engine.core.common.action.RemoveNetworkParameters;
-import org.ovirt.engine.core.common.action.VdcActionParametersBase;
 import org.ovirt.engine.core.common.action.VdcActionType;
 import org.ovirt.engine.core.common.businessentities.StoragePool;
 import org.ovirt.engine.core.common.interfaces.SearchType;
@@ -28,7 +25,7 @@
     }
 
     public BackendNetworksResource(VdcQueryType queryType) {
-        super(queryType, VdcActionType.AddNetwork, 
VdcActionType.RemoveNetwork, SUB_COLLECTIONS);
+        super(queryType, VdcActionType.AddNetwork, SUB_COLLECTIONS);
     }
 
     @Override
@@ -77,11 +74,6 @@
         }
 
         return parameters;
-    }
-
-    @Override
-    protected VdcActionParametersBase 
getRemoveParameters(org.ovirt.engine.core.common.businessentities.network.Network
 entity) {
-        return new RemoveNetworkParameters(entity.getId());
     }
 
     protected String[] getRequiredAddFields() {
diff --git 
a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendClusterNetworkResourceTest.java
 
b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendClusterNetworkResourceTest.java
index 230cfd3..20c780c 100644
--- 
a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendClusterNetworkResourceTest.java
+++ 
b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendClusterNetworkResourceTest.java
@@ -10,6 +10,7 @@
 import org.junit.Test;
 import org.ovirt.engine.api.model.Network;
 import org.ovirt.engine.api.restapi.types.NetworkUsage;
+import org.ovirt.engine.core.common.action.AttachNetworkToVdsGroupParameter;
 import org.ovirt.engine.core.common.action.NetworkClusterParameters;
 import org.ovirt.engine.core.common.action.VdcActionType;
 import org.ovirt.engine.core.common.businessentities.VDSGroup;
@@ -77,6 +78,73 @@
         verifyUpdate(resource.update(getModel(0)), 0);
     }
 
+    @Test
+    public void testRemoveNotFound() throws Exception {
+        setUpEntityQueryExpectations(
+            VdcQueryType.GetAllNetworksByClusterId,
+            IdQueryParameters.class,
+            new String[] { "Id" },
+            new Object[] { CLUSTER_ID },
+            new 
ArrayList<org.ovirt.engine.core.common.businessentities.network.Network>()
+        );
+        control.replay();
+        try {
+            resource.remove();
+            fail("expected WebApplicationException");
+        } catch (WebApplicationException wae) {
+            verifyNotFoundException(wae);
+        }
+    }
+
+    @Test
+    public void testRemove() throws Exception {
+        setUpVDSGroupExpectations(CLUSTER_ID);
+        setUpEntityQueryExpectations(2, false, false, false);
+        setUriInfo(
+            setUpActionExpectations(
+                VdcActionType.DetachNetworkToVdsGroup,
+                AttachNetworkToVdsGroupParameter.class,
+                new String[] { "VdsGroupId" },
+                new Object[] { CLUSTER_ID },
+                true,
+                true
+            )
+        );
+        verifyRemove(resource.remove());
+    }
+
+    @Test
+    public void testRemoveCantDo() throws Exception {
+        doTestBadRemove(false, true, CANT_DO);
+    }
+
+    @Test
+    public void testRemoveFailed() throws Exception {
+        doTestBadRemove(true, false, FAILURE);
+    }
+
+    protected void doTestBadRemove(boolean canDo, boolean success, String 
detail) throws Exception {
+        setUpVDSGroupExpectations(CLUSTER_ID);
+        setUpEntityQueryExpectations(2, false, false, false);
+        setUriInfo(
+            setUpActionExpectations(
+                VdcActionType.DetachNetworkToVdsGroup,
+                AttachNetworkToVdsGroupParameter.class,
+                new String[] { "VdsGroupId" },
+                new Object[] { CLUSTER_ID },
+                canDo,
+                success
+            )
+        );
+        try {
+            resource.remove();
+            fail("expected WebApplicationException");
+        }
+        catch (WebApplicationException wae) {
+            verifyFault(wae, detail);
+        }
+    }
+
     protected VDSGroup setUpVDSGroupExpectations(Guid id) {
         VDSGroup group = control.createMock(VDSGroup.class);
         expect(group.getId()).andReturn(id).anyTimes();
diff --git 
a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendClusterNetworksResourceTest.java
 
b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendClusterNetworksResourceTest.java
index 5356dda..2f5e6de 100644
--- 
a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendClusterNetworksResourceTest.java
+++ 
b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendClusterNetworksResourceTest.java
@@ -2,8 +2,6 @@
 
 import static org.easymock.EasyMock.expect;
 
-import java.util.ArrayList;
-
 import javax.ws.rs.WebApplicationException;
 import javax.ws.rs.core.Response;
 
@@ -22,67 +20,6 @@
 
     public BackendClusterNetworksResourceTest() {
         super(new BackendClusterNetworksResource(CLUSTER_ID.toString()));
-    }
-
-    @Test
-    public void testRemoveNotFound() throws Exception {
-        setUpEntityQueryExpectations(VdcQueryType.GetAllNetworksByClusterId,
-                                     IdQueryParameters.class,
-                                     new String[] { "Id" },
-                                     new Object[] { CLUSTER_ID },
-                                     new 
ArrayList<org.ovirt.engine.core.common.businessentities.network.Network>());
-        control.replay();
-        try {
-            collection.remove(GUIDS[0].toString());
-            fail("expected WebApplicationException");
-        } catch (WebApplicationException wae) {
-            verifyNotFoundException(wae);
-        }
-    }
-
-    @Test
-    public void testRemove() throws Exception {
-        setUpVDSGroupExpectations(CLUSTER_ID);
-
-        setUpEntityQueryExpectations(2);
-
-        
setUriInfo(setUpActionExpectations(VdcActionType.DetachNetworkToVdsGroup,
-                                           
AttachNetworkToVdsGroupParameter.class,
-                                           new String[] { "VdsGroupId" },
-                                           new Object[] { CLUSTER_ID },
-                                           true,
-                                           true));
-        verifyRemove(collection.remove(GUIDS[0].toString()));
-    }
-
-
-    @Test
-    public void testRemoveCantDo() throws Exception {
-        doTestBadRemove(false, true, CANT_DO);
-    }
-
-    @Test
-    public void testRemoveFailed() throws Exception {
-        doTestBadRemove(true, false, FAILURE);
-    }
-
-    protected void doTestBadRemove(boolean canDo, boolean success, String 
detail) throws Exception {
-        setUpVDSGroupExpectations(CLUSTER_ID);
-
-        setUpEntityQueryExpectations(2);
-
-        
setUriInfo(setUpActionExpectations(VdcActionType.DetachNetworkToVdsGroup,
-                                           
AttachNetworkToVdsGroupParameter.class,
-                                           new String[] { "VdsGroupId" },
-                                           new Object[] { CLUSTER_ID },
-                                           canDo,
-                                           success));
-        try {
-            collection.remove(GUIDS[0].toString());
-            fail("expected WebApplicationException");
-        } catch (WebApplicationException wae) {
-            verifyFault(wae, detail);
-        }
     }
 
     @Test
diff --git 
a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendDataCenterNetworkResourceTest.java
 
b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendDataCenterNetworkResourceTest.java
index 1b9cd95..9ffba6a 100644
--- 
a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendDataCenterNetworkResourceTest.java
+++ 
b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendDataCenterNetworkResourceTest.java
@@ -9,6 +9,7 @@
 import org.junit.Test;
 import org.ovirt.engine.api.model.Network;
 import org.ovirt.engine.core.common.action.AddNetworkStoragePoolParameters;
+import org.ovirt.engine.core.common.action.RemoveNetworkParameters;
 import org.ovirt.engine.core.common.action.VdcActionType;
 import org.ovirt.engine.core.common.queries.IdQueryParameters;
 import org.ovirt.engine.core.common.queries.VdcQueryType;
@@ -136,6 +137,93 @@
         }
     }
 
+    @Test
+    public void testRemoveNotFound() throws Exception {
+        setUpEntityQueryExpectations(
+            VdcQueryType.GetNetworksByDataCenterId,
+            IdQueryParameters.class,
+            new String[] { "Id" },
+            new Object[] { dataCenterId },
+            new 
ArrayList<org.ovirt.engine.core.common.businessentities.network.Network>()
+        );
+        control.replay();
+        try {
+            resource.remove();
+            fail("expected WebApplicationException");
+        }
+        catch (WebApplicationException wae) {
+            verifyNotFoundException(wae);
+        }
+    }
+
+    @Test
+    public void testRemove() throws Exception {
+        setUpEntityQueryExpectations(2);
+        setUriInfo(
+            setUpActionExpectations(
+                VdcActionType.RemoveNetwork,
+                RemoveNetworkParameters.class,
+                new String[] { "Id" },
+                new Object[] { networkId },
+                true,
+                true
+            )
+        );
+        verifyRemove(resource.remove());
+    }
+
+    @Test
+    public void testRemoveNonExistant() throws Exception{
+        setUpEntityQueryExpectations(
+            VdcQueryType.GetNetworksByDataCenterId,
+            IdQueryParameters.class,
+            new String[] { "Id" },
+            new Object[] { dataCenterId },
+            new 
ArrayList<org.ovirt.engine.core.common.businessentities.network.Network>(),
+            null
+        );
+        control.replay();
+        try {
+            resource.remove();
+            fail("expected WebApplicationException");
+        }
+        catch (WebApplicationException wae) {
+            assertNotNull(wae.getResponse());
+            assertEquals(404, wae.getResponse().getStatus());
+        }
+    }
+
+    @Test
+    public void testRemoveCantDo() throws Exception {
+        doTestBadRemove(false, true, CANT_DO);
+    }
+
+    @Test
+    public void testRemoveFailed() throws Exception {
+        doTestBadRemove(true, false, FAILURE);
+    }
+
+    protected void doTestBadRemove(boolean canDo, boolean success, String 
detail) throws Exception {
+        setUpEntityQueryExpectations(2);
+        setUriInfo(
+            setUpActionExpectations(
+                VdcActionType.RemoveNetwork,
+                RemoveNetworkParameters.class,
+                new String[] { "Id" },
+                new Object[] { networkId },
+                canDo,
+                success
+            )
+        );
+        try {
+            resource.remove();
+            fail("expected WebApplicationException");
+        }
+        catch (WebApplicationException wae) {
+            verifyFault(wae, detail);
+        }
+    }
+
     protected void setUpEntityQueryExpectations(int times) throws Exception {
         while (times-- > 0) {
             
setUpEntityQueryExpectations(VdcQueryType.GetNetworksByDataCenterId,
diff --git 
a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendDataCenterNetworksResourceTest.java
 
b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendDataCenterNetworksResourceTest.java
index a8e4ff3..0244be2 100644
--- 
a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendDataCenterNetworksResourceTest.java
+++ 
b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendDataCenterNetworksResourceTest.java
@@ -2,9 +2,6 @@
 
 import static org.easymock.EasyMock.expect;
 
-import java.util.ArrayList;
-import java.util.LinkedList;
-
 import javax.ws.rs.WebApplicationException;
 import javax.ws.rs.core.Response;
 
@@ -12,7 +9,6 @@
 import org.ovirt.engine.api.model.DataCenter;
 import org.ovirt.engine.api.model.Network;
 import org.ovirt.engine.core.common.action.AddNetworkStoragePoolParameters;
-import org.ovirt.engine.core.common.action.RemoveNetworkParameters;
 import org.ovirt.engine.core.common.action.VdcActionType;
 import org.ovirt.engine.core.common.businessentities.StoragePool;
 import org.ovirt.engine.core.common.queries.IdQueryParameters;
@@ -26,79 +22,6 @@
 
     public BackendDataCenterNetworksResourceTest() {
         super(new 
BackendDataCenterNetworksResource(DATA_CENTER_ID.toString()), null, "");
-    }
-
-    @Test
-    public void testRemoveNotFound() throws Exception {
-        setUpEntityQueryExpectations(VdcQueryType.GetNetworksByDataCenterId,
-                                     IdQueryParameters.class,
-                                     new String[] { "Id" },
-                                     new Object[] { DATA_CENTER_ID },
-                                     new 
ArrayList<org.ovirt.engine.core.common.businessentities.network.Network>());
-        control.replay();
-        try {
-            collection.remove(GUIDS[0].toString());
-            fail("expected WebApplicationException");
-        } catch (WebApplicationException wae) {
-            verifyNotFoundException(wae);
-        }
-    }
-
-    @Test
-    public void testRemove() throws Exception {
-        setUpEntityQueryExpectations(2);
-        setUriInfo(setUpActionExpectations(VdcActionType.RemoveNetwork,
-                                           RemoveNetworkParameters.class,
-                                           new String[] { "Id" },
-                                           new Object[] { GUIDS[0] },
-                                           true,
-                                           true));
-        verifyRemove(collection.remove(GUIDS[0].toString()));
-    }
-
-    @Test
-    public void testRemoveNonExistant() throws Exception{
-        setUpEntityQueryExpectations(VdcQueryType.GetNetworksByDataCenterId,
-                                     IdQueryParameters.class,
-                                     new String[] { "Id" },
-                                     new Object[] { DATA_CENTER_ID },
-                                     new 
LinkedList<org.ovirt.engine.core.common.businessentities.network.Network>(),
-                                     null);
-        control.replay();
-        try {
-            collection.remove(NON_EXISTANT_GUID.toString());
-            fail("expected WebApplicationException");
-        } catch (WebApplicationException wae) {
-            assertNotNull(wae.getResponse());
-            assertEquals(404, wae.getResponse().getStatus());
-        }
-    }
-
-    @Test
-    public void testRemoveCantDo() throws Exception {
-        doTestBadRemove(false, true, CANT_DO);
-    }
-
-    @Test
-    public void testRemoveFailed() throws Exception {
-        doTestBadRemove(true, false, FAILURE);
-    }
-
-    protected void doTestBadRemove(boolean canDo, boolean success, String 
detail) throws Exception {
-        setUpEntityQueryExpectations(2);
-
-        setUriInfo(setUpActionExpectations(VdcActionType.RemoveNetwork,
-                                           RemoveNetworkParameters.class,
-                                           new String[] { "Id" },
-                                           new Object[] { GUIDS[0] },
-                                           canDo,
-                                           success));
-        try {
-            collection.remove(GUIDS[0].toString());
-            fail("expected WebApplicationException");
-        } catch (WebApplicationException wae) {
-            verifyFault(wae, detail);
-        }
     }
 
     @Test
diff --git 
a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendNetworkResourceTest.java
 
b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendNetworkResourceTest.java
index fbe8ba9..11826b1 100644
--- 
a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendNetworkResourceTest.java
+++ 
b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendNetworkResourceTest.java
@@ -6,6 +6,7 @@
 import org.junit.Test;
 
 import org.ovirt.engine.api.model.Network;
+import org.ovirt.engine.core.common.action.RemoveNetworkParameters;
 import org.ovirt.engine.core.common.action.VdcActionType;
 import org.ovirt.engine.core.common.action.AddNetworkStoragePoolParameters;
 import org.ovirt.engine.core.common.queries.IdQueryParameters;
@@ -133,6 +134,93 @@
         }
     }
 
+    @Test
+    public void testRemoveNotFound() throws Exception {
+        setUpEntityQueryExpectations(
+            VdcQueryType.GetAllNetworks,
+            IdQueryParameters.class,
+            new String[] { "Id" },
+            new Object[] { Guid.Empty },
+            new 
ArrayList<org.ovirt.engine.core.common.businessentities.network.Network>()
+        );
+        control.replay();
+        try {
+            resource.remove();
+            fail("expected WebApplicationException");
+        }
+        catch (WebApplicationException wae) {
+            verifyNotFoundException(wae);
+        }
+    }
+
+    @Test
+    public void testRemove() throws Exception {
+        setUpEntityQueryExpectations(2);
+        setUriInfo(
+            setUpActionExpectations(
+                VdcActionType.RemoveNetwork,
+                RemoveNetworkParameters.class,
+                new String[] { "Id" },
+                new Object[] { GUIDS[0] },
+                true,
+                true
+            )
+        );
+        verifyRemove(resource.remove());
+    }
+
+    @Test
+    public void testRemoveNonExistant() throws Exception{
+        setUpEntityQueryExpectations(
+            VdcQueryType.GetAllNetworks,
+            IdQueryParameters.class,
+            new String[] { "Id" },
+            new Object[] { Guid.Empty },
+            new 
ArrayList<org.ovirt.engine.core.common.businessentities.network.Network>(),
+            null
+        );
+        control.replay();
+        try {
+            resource.remove();
+            fail("expected WebApplicationException");
+        }
+        catch (WebApplicationException wae) {
+            assertNotNull(wae.getResponse());
+            assertEquals(404, wae.getResponse().getStatus());
+        }
+    }
+
+    @Test
+    public void testRemoveCantDo() throws Exception {
+        doTestBadRemove(false, true, CANT_DO);
+    }
+
+    @Test
+    public void testRemoveFailed() throws Exception {
+        doTestBadRemove(true, false, FAILURE);
+    }
+
+    protected void doTestBadRemove(boolean canDo, boolean success, String 
detail) throws Exception {
+        setUpEntityQueryExpectations(2);
+        setUriInfo(
+            setUpActionExpectations(
+                VdcActionType.RemoveNetwork,
+                RemoveNetworkParameters.class,
+                new String[] { "Id" },
+                new Object[] { GUIDS[0] },
+                canDo,
+                success
+            )
+        );
+        try {
+            resource.remove();
+            fail("expected WebApplicationException");
+        }
+        catch (WebApplicationException wae) {
+            verifyFault(wae, detail);
+        }
+    }
+
     protected void setUpEntityQueryExpectations(int times) throws Exception {
         while (times-- > 0) {
             setUpEntityQueryExpectations(VdcQueryType.GetAllNetworks,
diff --git 
a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendNetworksResourceTest.java
 
b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendNetworksResourceTest.java
index 70ebd6c..84b7e26 100644
--- 
a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendNetworksResourceTest.java
+++ 
b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendNetworksResourceTest.java
@@ -5,7 +5,6 @@
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.Comparator;
-import java.util.LinkedList;
 import java.util.List;
 
 import javax.ws.rs.WebApplicationException;
@@ -16,7 +15,6 @@
 import org.ovirt.engine.api.model.DataCenter;
 import org.ovirt.engine.api.model.Network;
 import org.ovirt.engine.core.common.action.AddNetworkStoragePoolParameters;
-import org.ovirt.engine.core.common.action.RemoveNetworkParameters;
 import org.ovirt.engine.core.common.action.VdcActionType;
 import org.ovirt.engine.core.common.businessentities.StoragePool;
 import org.ovirt.engine.core.common.interfaces.SearchType;
@@ -32,79 +30,6 @@
 
     public BackendNetworksResourceTest() {
         super(new BackendNetworksResource(), SearchType.Network, "Networks : 
");
-    }
-
-    @Test
-    public void testRemoveNotFound() throws Exception {
-        setUpEntityQueryExpectations(VdcQueryType.GetAllNetworks,
-                                     IdQueryParameters.class,
-                                     new String[] { "Id" },
-                                     new Object[] { Guid.Empty },
-                                     new 
ArrayList<org.ovirt.engine.core.common.businessentities.network.Network>());
-        control.replay();
-        try {
-            collection.remove(GUIDS[0].toString());
-            fail("expected WebApplicationException");
-        } catch (WebApplicationException wae) {
-            verifyNotFoundException(wae);
-        }
-    }
-
-    @Test
-    public void testRemove() throws Exception {
-        setUpEntityQueryExpectations(2);
-        setUriInfo(setUpActionExpectations(VdcActionType.RemoveNetwork,
-                                           RemoveNetworkParameters.class,
-                                           new String[] { "Id" },
-                                           new Object[] { GUIDS[0] },
-                                           true,
-                                           true));
-        verifyRemove(collection.remove(GUIDS[0].toString()));
-    }
-
-    @Test
-    public void testRemoveNonExistant() throws Exception{
-        setUpEntityQueryExpectations(VdcQueryType.GetAllNetworks,
-                IdQueryParameters.class,
-                new String[] { "Id" },
-                new Object[] { Guid.Empty },
-                new 
LinkedList<org.ovirt.engine.core.common.businessentities.network.Network>(),
-                null);
-        control.replay();
-        try {
-            collection.remove(NON_EXISTANT_GUID.toString());
-            fail("expected WebApplicationException");
-        } catch (WebApplicationException wae) {
-            assertNotNull(wae.getResponse());
-            assertEquals(404, wae.getResponse().getStatus());
-        }
-    }
-
-    @Test
-    public void testRemoveCantDo() throws Exception {
-        doTestBadRemove(false, true, CANT_DO);
-    }
-
-    @Test
-    public void testRemoveFailed() throws Exception {
-        doTestBadRemove(true, false, FAILURE);
-    }
-
-    protected void doTestBadRemove(boolean canDo, boolean success, String 
detail) throws Exception {
-        setUpEntityQueryExpectations(2);
-
-        setUriInfo(setUpActionExpectations(VdcActionType.RemoveNetwork,
-                                           RemoveNetworkParameters.class,
-                                           new String[] { "Id" },
-                                           new Object[] { GUIDS[0] },
-                                           canDo,
-                                           success));
-        try {
-            collection.remove(GUIDS[0].toString());
-            fail("expected WebApplicationException");
-        } catch (WebApplicationException wae) {
-            verifyFault(wae, detail);
-        }
     }
 
     @Test


-- 
To view, visit https://gerrit.ovirt.org/41807
To unsubscribe, visit https://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ib106d6cdf8b48931b257df2ef306317b8975b912
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Juan Hernandez <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to