Muli Salem has uploaded a new change for review.

Change subject: core: PairQueryable for Queries
......................................................................

core: PairQueryable for Queries

This patch adds the PairQueryable class to Common.gwt.xml,
and adds the implementation of getQueryableId, to have
a unique Id for each PairQueryable according to its
members.

It also changes network_cluster to extend IVdcQueryable
so it could be returned in queries.

Change-Id: Ib6fce607b90c818286428cdcc537f7c030155036
Signed-off-by: Muli Salem <msa...@redhat.com>
---
M 
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/network_cluster.java
M 
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/utils/PairQueryable.java
M 
frontend/webadmin/modules/gwt-common/src/main/resources/org/ovirt/engine/core/Common.gwt.xml
3 files changed, 19 insertions(+), 2 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/60/8860/1

diff --git 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/network_cluster.java
 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/network_cluster.java
index c6fbfc6..c555680 100644
--- 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/network_cluster.java
+++ 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/network_cluster.java
@@ -15,7 +15,7 @@
 @TypeDef(name = "guid", typeClass = GuidType.class)
 @NamedQueries(value = { @NamedQuery(name = "delete_network_cluster",
                                     query = "delete from network_cluster n 
where n.clusterId = :cluster_id and n.networkId = :network_id") })
-public class network_cluster implements BusinessEntity<NetworkClusterId> {
+public class network_cluster extends IVdcQueryable implements 
BusinessEntity<NetworkClusterId> {
     private static final long serialVersionUID = -4900811332744926545L;
 
     private NetworkClusterId id = new NetworkClusterId();
@@ -149,4 +149,9 @@
     public void setRequired(boolean required) {
         this.required = required;
     }
+
+    @Override
+    public Object getQueryableId() {
+        return getId();
+    }
 }
diff --git 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/utils/PairQueryable.java
 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/utils/PairQueryable.java
index 63605e3..e859c27 100644
--- 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/utils/PairQueryable.java
+++ 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/utils/PairQueryable.java
@@ -5,7 +5,7 @@
 /**
  * A Pair that extends the {@link IVdcQueryable} class, to enable returning a 
Pair as the return value of a Query.
  */
-public class PairQueryable<T, K> extends IVdcQueryable {
+public class PairQueryable<T extends IVdcQueryable, K extends IVdcQueryable> 
extends IVdcQueryable {
     private static final long serialVersionUID = -8894728003078425184L;
 
     private Pair<T, K> pair;
@@ -69,4 +69,15 @@
         }
         return true;
     }
+
+    public Object getQueryableId() {
+        return getMemberId(getFirst()) + '.' + getMemberId(getSecond());
+    }
+
+    private String getMemberId(IVdcQueryable member) {
+        if (member != null) {
+            return member.getQueryableId().toString();
+        }
+        return null;
+    }
 }
diff --git 
a/frontend/webadmin/modules/gwt-common/src/main/resources/org/ovirt/engine/core/Common.gwt.xml
 
b/frontend/webadmin/modules/gwt-common/src/main/resources/org/ovirt/engine/core/Common.gwt.xml
index 6b85be9..87cfcc6 100644
--- 
a/frontend/webadmin/modules/gwt-common/src/main/resources/org/ovirt/engine/core/Common.gwt.xml
+++ 
b/frontend/webadmin/modules/gwt-common/src/main/resources/org/ovirt/engine/core/Common.gwt.xml
@@ -187,6 +187,7 @@
                <include name="common/utils/VmDeviceCommonUtils.java" />
                <include name="common/utils/VmDeviceType.java" />
                <include name="common/utils/Pair.java" />
+               <include name="common/utils/PairQueryable.java" />
                <include name="common/interfaces/IVdcUser.java" />
                <include name="common/VdcObjectType.java" />
 


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

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ib6fce607b90c818286428cdcc537f7c030155036
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Muli Salem <msa...@redhat.com>
_______________________________________________
Engine-patches mailing list
Engine-patches@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to