Gilad Chaplik has uploaded a new change for review. Change subject: restapi: fix filter/weight/balance getter ......................................................................
restapi: fix filter/weight/balance getter fixes both get and remove policy units per scheduling policy. Change-Id: I0a336e9fe3f8fa77d94469d28ecad64234e9b685 Bug-Url: https://bugzilla.redhat.com/1114944 Bug-Url: https://bugzilla.redhat.com/1115071 Signed-off-by: Gilad Chaplik <[email protected]> --- M backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendBalanceResource.java M backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendBalancesResource.java M backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendFilterResource.java M backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendFiltersResource.java M backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendPolicyUnitResource.java M backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendPolicyUnitsResource.java M backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendWeightResource.java M backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendWeightsResource.java 8 files changed, 45 insertions(+), 14 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/14/29514/1 diff --git a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendBalanceResource.java b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendBalanceResource.java index 6263f46..c3edc65 100644 --- a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendBalanceResource.java +++ b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendBalanceResource.java @@ -2,12 +2,19 @@ import org.ovirt.engine.api.model.Balance; import org.ovirt.engine.api.resource.BalanceResource; +import org.ovirt.engine.core.compat.Guid; public class BackendBalanceResource extends BackendPolicyUnitResource<Balance> implements BalanceResource { - protected BackendBalanceResource(String id) { - super(id, Balance.class); + protected BackendBalanceResource(String id, Guid parentId) { + super(id, parentId, Balance.class); } + @Override + protected Balance createPolicyUnitByType() { + Balance balance = new Balance(); + balance.setId(id); + return balance; + } } diff --git a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendBalancesResource.java b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendBalancesResource.java index cc75ddf..0d7db20 100644 --- a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendBalancesResource.java +++ b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendBalancesResource.java @@ -30,7 +30,7 @@ @Override public BalanceResource getSubResource(String id) { - return inject(new BackendBalanceResource(id)); + return inject(new BackendBalanceResource(id, schedulingPolicyId)); } @SingleEntityResource diff --git a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendFilterResource.java b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendFilterResource.java index 95570a5..027c8ff 100644 --- a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendFilterResource.java +++ b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendFilterResource.java @@ -2,12 +2,19 @@ import org.ovirt.engine.api.model.Filter; import org.ovirt.engine.api.resource.FilterResource; +import org.ovirt.engine.core.compat.Guid; public class BackendFilterResource extends BackendPolicyUnitResource<Filter> implements FilterResource { - protected BackendFilterResource(String id) { - super(id, Filter.class); + protected BackendFilterResource(String id, Guid parentId) { + super(id, parentId, Filter.class); } + @Override + protected Filter createPolicyUnitByType() { + Filter filter = new Filter(); + filter.setId(id); + return filter; + } } diff --git a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendFiltersResource.java b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendFiltersResource.java index 37b31f8..e4d6a56 100644 --- a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendFiltersResource.java +++ b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendFiltersResource.java @@ -32,7 +32,7 @@ @Override public FilterResource getSubResource(String id) { - return inject(new BackendFilterResource(id)); + return inject(new BackendFilterResource(id, schedulingPolicyId)); } @SingleEntityResource diff --git a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendPolicyUnitResource.java b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendPolicyUnitResource.java index b4a55e8..abb17a6 100644 --- a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendPolicyUnitResource.java +++ b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendPolicyUnitResource.java @@ -5,19 +5,28 @@ import org.ovirt.engine.core.common.queries.IdQueryParameters; import org.ovirt.engine.core.common.queries.VdcQueryType; import org.ovirt.engine.core.common.scheduling.ClusterPolicy; +import org.ovirt.engine.core.compat.Guid; public abstract class BackendPolicyUnitResource<T extends BaseResource> extends AbstractBackendSubResource<T, ClusterPolicy> implements PolicyUnitResource<T> { private static final String[] SUB_COLLECTIONS = {}; + private final Guid parentId; protected BackendPolicyUnitResource(String id, + Guid parentId, Class<T> modelType) { super(id, modelType, ClusterPolicy.class, SUB_COLLECTIONS); + this.parentId = parentId; } @Override public T get() { - return performGet(VdcQueryType.GetPolicyUnitById, new IdQueryParameters(guid)); + return performGet(VdcQueryType.GetClusterPolicyById, new IdQueryParameters(parentId)); + } + + @Override + protected T map(ClusterPolicy entity, T template) { + return super.map(entity, createPolicyUnitByType()); } @Override @@ -25,4 +34,5 @@ return model; } + protected abstract T createPolicyUnitByType(); } diff --git a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendPolicyUnitsResource.java b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendPolicyUnitsResource.java index acb3e83..5a9d03d 100644 --- a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendPolicyUnitsResource.java +++ b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendPolicyUnitsResource.java @@ -15,13 +15,13 @@ public abstract class BackendPolicyUnitsResource<M extends BaseResources, N extends BaseResource> extends AbstractBackendCollectionResource<N, ClusterPolicy> implements PolicyUnitsResource<M, N> { - protected final Guid clusterPolicyId; + protected final Guid schedulingPolicyId; private static final String[] SUB_COLLECTIONS = {}; protected BackendPolicyUnitsResource(Guid schedulingPolicyId, Class<N> baseResourcesClass) { super(baseResourcesClass, ClusterPolicy.class, SUB_COLLECTIONS); - this.clusterPolicyId = schedulingPolicyId; + this.schedulingPolicyId = schedulingPolicyId; } protected abstract ParametersProvider<N, ClusterPolicy> getAddParametersProvider(); @@ -56,8 +56,8 @@ protected ClusterPolicy getClusterPolicy() { return getEntity(ClusterPolicy.class, VdcQueryType.GetClusterPolicyById, - new IdQueryParameters(clusterPolicyId), - clusterPolicyId.toString()); + new IdQueryParameters(schedulingPolicyId), + schedulingPolicyId.toString()); } } diff --git a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendWeightResource.java b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendWeightResource.java index 5c43c3e..6fd4ef9 100644 --- a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendWeightResource.java +++ b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendWeightResource.java @@ -2,12 +2,19 @@ import org.ovirt.engine.api.model.Weight; import org.ovirt.engine.api.resource.WeightResource; +import org.ovirt.engine.core.compat.Guid; public class BackendWeightResource extends BackendPolicyUnitResource<Weight> implements WeightResource { - protected BackendWeightResource(String id) { - super(id, Weight.class); + protected BackendWeightResource(String id, Guid parentId) { + super(id, parentId, Weight.class); } + @Override + protected Weight createPolicyUnitByType() { + Weight weight = new Weight(); + weight.setId(id); + return weight; + } } diff --git a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendWeightsResource.java b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendWeightsResource.java index 7042363..302ca97 100644 --- a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendWeightsResource.java +++ b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendWeightsResource.java @@ -34,7 +34,7 @@ @Override public WeightResource getSubResource(String id) { - return inject(new BackendWeightResource(id)); + return inject(new BackendWeightResource(id, schedulingPolicyId)); } @SingleEntityResource -- To view, visit http://gerrit.ovirt.org/29514 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I0a336e9fe3f8fa77d94469d28ecad64234e9b685 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Gilad Chaplik <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
