You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by bh...@apache.org on 2012/12/27 00:10:10 UTC

[2/4] Enforce InternalIdentity interface on all VO classes that impls long getId()

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/plugins/hypervisors/simulator/src/com/cloud/simulator/MockSecStorageVO.java
----------------------------------------------------------------------
diff --git a/plugins/hypervisors/simulator/src/com/cloud/simulator/MockSecStorageVO.java b/plugins/hypervisors/simulator/src/com/cloud/simulator/MockSecStorageVO.java
index 59a81c7..2352687 100644
--- a/plugins/hypervisors/simulator/src/com/cloud/simulator/MockSecStorageVO.java
+++ b/plugins/hypervisors/simulator/src/com/cloud/simulator/MockSecStorageVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.simulator;
 
+import org.apache.cloudstack.api.InternalIdentity;
+
 import javax.persistence.Column;
 import javax.persistence.Entity;
 import javax.persistence.GeneratedValue;
@@ -26,7 +28,7 @@ import javax.persistence.Table;
 @Entity
 @Table(name="mocksecstorage")
 
-public class MockSecStorageVO {
+public class MockSecStorageVO implements InternalIdentity {
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/plugins/hypervisors/simulator/src/com/cloud/simulator/MockSecurityRulesVO.java
----------------------------------------------------------------------
diff --git a/plugins/hypervisors/simulator/src/com/cloud/simulator/MockSecurityRulesVO.java b/plugins/hypervisors/simulator/src/com/cloud/simulator/MockSecurityRulesVO.java
index df31fbf..d0d77c9 100644
--- a/plugins/hypervisors/simulator/src/com/cloud/simulator/MockSecurityRulesVO.java
+++ b/plugins/hypervisors/simulator/src/com/cloud/simulator/MockSecurityRulesVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.simulator;
 
+import org.apache.cloudstack.api.InternalIdentity;
+
 import javax.persistence.Column;
 import javax.persistence.Entity;
 import javax.persistence.GeneratedValue;
@@ -26,7 +28,7 @@ import javax.persistence.Table;
 
 @Entity
 @Table(name="mocksecurityrules")
-public class MockSecurityRulesVO {
+public class MockSecurityRulesVO implements InternalIdentity {
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/plugins/hypervisors/simulator/src/com/cloud/simulator/MockStoragePoolVO.java
----------------------------------------------------------------------
diff --git a/plugins/hypervisors/simulator/src/com/cloud/simulator/MockStoragePoolVO.java b/plugins/hypervisors/simulator/src/com/cloud/simulator/MockStoragePoolVO.java
index 9c6e84d..c8f068a 100644
--- a/plugins/hypervisors/simulator/src/com/cloud/simulator/MockStoragePoolVO.java
+++ b/plugins/hypervisors/simulator/src/com/cloud/simulator/MockStoragePoolVO.java
@@ -26,11 +26,12 @@ import javax.persistence.Id;
 import javax.persistence.Table;
 
 import com.cloud.storage.Storage.StoragePoolType;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="mockstoragepool")
 
-public class MockStoragePoolVO {
+public class MockStoragePoolVO implements InternalIdentity {
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/plugins/hypervisors/simulator/src/com/cloud/simulator/MockVMVO.java
----------------------------------------------------------------------
diff --git a/plugins/hypervisors/simulator/src/com/cloud/simulator/MockVMVO.java b/plugins/hypervisors/simulator/src/com/cloud/simulator/MockVMVO.java
index 3a5aa3d..292f200 100644
--- a/plugins/hypervisors/simulator/src/com/cloud/simulator/MockVMVO.java
+++ b/plugins/hypervisors/simulator/src/com/cloud/simulator/MockVMVO.java
@@ -24,11 +24,12 @@ import javax.persistence.Id;
 import javax.persistence.Table;
 
 import com.cloud.vm.VirtualMachine.State;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="mockvm")
 
-public class MockVMVO implements MockVm{
+public class MockVMVO implements MockVm, InternalIdentity {
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/plugins/hypervisors/simulator/src/com/cloud/simulator/MockVolumeVO.java
----------------------------------------------------------------------
diff --git a/plugins/hypervisors/simulator/src/com/cloud/simulator/MockVolumeVO.java b/plugins/hypervisors/simulator/src/com/cloud/simulator/MockVolumeVO.java
index 48a12f8..fe337e7 100644
--- a/plugins/hypervisors/simulator/src/com/cloud/simulator/MockVolumeVO.java
+++ b/plugins/hypervisors/simulator/src/com/cloud/simulator/MockVolumeVO.java
@@ -27,12 +27,13 @@ import javax.persistence.Table;
 
 import com.cloud.storage.VMTemplateStorageResourceAssoc;
 import com.cloud.storage.VMTemplateStorageResourceAssoc.Status;
+import org.apache.cloudstack.api.InternalIdentity;
 
 
 @Entity
 @Table(name="mockvolume")
 
-public class MockVolumeVO {
+public class MockVolumeVO implements InternalIdentity {
     public enum MockVolumeType {
         VOLUME,
         TEMPLATE,

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/plugins/hypervisors/vmware/src/com/cloud/network/CiscoNexusVSMDeviceVO.java
----------------------------------------------------------------------
diff --git a/plugins/hypervisors/vmware/src/com/cloud/network/CiscoNexusVSMDeviceVO.java b/plugins/hypervisors/vmware/src/com/cloud/network/CiscoNexusVSMDeviceVO.java
index 4f6c080..0082f6d 100644
--- a/plugins/hypervisors/vmware/src/com/cloud/network/CiscoNexusVSMDeviceVO.java
+++ b/plugins/hypervisors/vmware/src/com/cloud/network/CiscoNexusVSMDeviceVO.java
@@ -28,6 +28,7 @@ import javax.persistence.Table;
 
 import org.apache.cloudstack.api.Identity;
 import com.cloud.utils.db.Encrypt;
+import org.apache.cloudstack.api.InternalIdentity;
 
 /**
  * CiscoNexusVSMDeviceVO contains information on external Cisco Nexus 1000v VSM devices added into a deployment.
@@ -37,7 +38,7 @@ import com.cloud.utils.db.Encrypt;
 
 @Entity
 @Table(name="virtual_supervisor_module")
-public class CiscoNexusVSMDeviceVO implements CiscoNexusVSMDevice, Identity{
+public class CiscoNexusVSMDeviceVO implements CiscoNexusVSMDevice, Identity, InternalIdentity {
 
     // We need to know what properties a VSM has. Put them here.
 

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/ElasticLbVmMapVO.java
----------------------------------------------------------------------
diff --git a/plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/ElasticLbVmMapVO.java b/plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/ElasticLbVmMapVO.java
index 024dcdc..44b98eb 100644
--- a/plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/ElasticLbVmMapVO.java
+++ b/plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/ElasticLbVmMapVO.java
@@ -29,13 +29,14 @@ import javax.persistence.SecondaryTables;
 import javax.persistence.Table;
 
 import com.cloud.utils.net.Ip;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name = ("elastic_lb_vm_map"))
 @SecondaryTables({ 
         @SecondaryTable(name = "user_ip_address", pkJoinColumns = { @PrimaryKeyJoinColumn(name = "ip_addr_id", referencedColumnName = "id") })
         })
-public class ElasticLbVmMapVO {
+public class ElasticLbVmMapVO implements InternalIdentity {
     @Id
     @GeneratedValue(strategy = GenerationType.IDENTITY)
     @Column(name = "id")
@@ -66,7 +67,7 @@ public class ElasticLbVmMapVO {
         this.lbId = lbId;
     }
 
-    public Long getId() {
+    public long getId() {
         return id;
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/plugins/network-elements/netscaler/src/com/cloud/network/NetScalerPodVO.java
----------------------------------------------------------------------
diff --git a/plugins/network-elements/netscaler/src/com/cloud/network/NetScalerPodVO.java b/plugins/network-elements/netscaler/src/com/cloud/network/NetScalerPodVO.java
index f280787..be0bd2f 100644
--- a/plugins/network-elements/netscaler/src/com/cloud/network/NetScalerPodVO.java
+++ b/plugins/network-elements/netscaler/src/com/cloud/network/NetScalerPodVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.network;
 
+import org.apache.cloudstack.api.InternalIdentity;
+
 import javax.persistence.Column;
 import javax.persistence.Entity;
 import javax.persistence.GeneratedValue;
@@ -31,7 +33,7 @@ import javax.persistence.Table;
  */
 @Entity
 @Table(name="netscaler_pod_ref")
-public class NetScalerPodVO {
+public class NetScalerPodVO implements InternalIdentity {
  
     @Column(name="external_load_balancer_device_id")
     private long netscalerDeviceId;

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/plugins/network-elements/nicira-nvp/src/com/cloud/network/NiciraNvpNicMappingVO.java
----------------------------------------------------------------------
diff --git a/plugins/network-elements/nicira-nvp/src/com/cloud/network/NiciraNvpNicMappingVO.java b/plugins/network-elements/nicira-nvp/src/com/cloud/network/NiciraNvpNicMappingVO.java
index 0779e69..4c948cc 100644
--- a/plugins/network-elements/nicira-nvp/src/com/cloud/network/NiciraNvpNicMappingVO.java
+++ b/plugins/network-elements/nicira-nvp/src/com/cloud/network/NiciraNvpNicMappingVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.network;
 
+import org.apache.cloudstack.api.InternalIdentity;
+
 import javax.persistence.Column;
 import javax.persistence.Entity;
 import javax.persistence.GeneratedValue;
@@ -25,7 +27,7 @@ import javax.persistence.Table;
 
 @Entity
 @Table(name="nicira_nvp_nic_map")
-public class NiciraNvpNicMappingVO {
+public class NiciraNvpNicMappingVO implements InternalIdentity {
 
     @Id
     @GeneratedValue(strategy = GenerationType.IDENTITY)

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/plugins/network-elements/nicira-nvp/src/com/cloud/network/NiciraNvpRouterMappingVO.java
----------------------------------------------------------------------
diff --git a/plugins/network-elements/nicira-nvp/src/com/cloud/network/NiciraNvpRouterMappingVO.java b/plugins/network-elements/nicira-nvp/src/com/cloud/network/NiciraNvpRouterMappingVO.java
index 037ba69..ced880f 100644
--- a/plugins/network-elements/nicira-nvp/src/com/cloud/network/NiciraNvpRouterMappingVO.java
+++ b/plugins/network-elements/nicira-nvp/src/com/cloud/network/NiciraNvpRouterMappingVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.network;
 
+import org.apache.cloudstack.api.InternalIdentity;
+
 import javax.persistence.Column;
 import javax.persistence.Entity;
 import javax.persistence.GeneratedValue;
@@ -25,7 +27,7 @@ import javax.persistence.Table;
 
 @Entity
 @Table(name="nicira_nvp_router_map")
-public class NiciraNvpRouterMappingVO {
+public class NiciraNvpRouterMappingVO implements InternalIdentity {
 	//FIXME the ddl for this table should be in one of the upgrade scripts
 	@Id
 	@GeneratedValue(strategy = GenerationType.IDENTITY)

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/plugins/network-elements/ovs/src/com/cloud/network/ovs/dao/OvsTunnelInterfaceVO.java
----------------------------------------------------------------------
diff --git a/plugins/network-elements/ovs/src/com/cloud/network/ovs/dao/OvsTunnelInterfaceVO.java b/plugins/network-elements/ovs/src/com/cloud/network/ovs/dao/OvsTunnelInterfaceVO.java
index 43ac806..b66f75c 100644
--- a/plugins/network-elements/ovs/src/com/cloud/network/ovs/dao/OvsTunnelInterfaceVO.java
+++ b/plugins/network-elements/ovs/src/com/cloud/network/ovs/dao/OvsTunnelInterfaceVO.java
@@ -17,6 +17,8 @@
 
 package com.cloud.network.ovs.dao;
 
+import org.apache.cloudstack.api.InternalIdentity;
+
 import javax.persistence.Column;
 import javax.persistence.Entity;
 import javax.persistence.GeneratedValue;
@@ -26,7 +28,7 @@ import javax.persistence.Table;
 
 @Entity
 @Table(name=("ovs_tunnel_interface"))
-public class OvsTunnelInterfaceVO {
+public class OvsTunnelInterfaceVO implements InternalIdentity {
 	@Id
 	@GeneratedValue(strategy = GenerationType.IDENTITY)
 	@Column(name = "id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/plugins/network-elements/ovs/src/com/cloud/network/ovs/dao/OvsTunnelNetworkVO.java
----------------------------------------------------------------------
diff --git a/plugins/network-elements/ovs/src/com/cloud/network/ovs/dao/OvsTunnelNetworkVO.java b/plugins/network-elements/ovs/src/com/cloud/network/ovs/dao/OvsTunnelNetworkVO.java
index d995c1c..4c99002 100644
--- a/plugins/network-elements/ovs/src/com/cloud/network/ovs/dao/OvsTunnelNetworkVO.java
+++ b/plugins/network-elements/ovs/src/com/cloud/network/ovs/dao/OvsTunnelNetworkVO.java
@@ -17,6 +17,8 @@
 
 package com.cloud.network.ovs.dao;
 
+import org.apache.cloudstack.api.InternalIdentity;
+
 import javax.persistence.Column;
 import javax.persistence.Entity;
 import javax.persistence.GeneratedValue;
@@ -26,7 +28,7 @@ import javax.persistence.Table;
 
 @Entity
 @Table(name=("ovs_tunnel_network"))
-public class OvsTunnelNetworkVO {
+public class OvsTunnelNetworkVO implements InternalIdentity {
 	@Id
 	@GeneratedValue(strategy = GenerationType.IDENTITY)
 	@Column(name = "id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/api/query/vo/DomainRouterJoinVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/api/query/vo/DomainRouterJoinVO.java b/server/src/com/cloud/api/query/vo/DomainRouterJoinVO.java
index cf59827..9dfa666 100644
--- a/server/src/com/cloud/api/query/vo/DomainRouterJoinVO.java
+++ b/server/src/com/cloud/api/query/vo/DomainRouterJoinVO.java
@@ -30,10 +30,11 @@ import com.cloud.network.Networks.TrafficType;
 import com.cloud.network.router.VirtualRouter.RedundantState;
 import com.cloud.utils.db.GenericDao;
 import com.cloud.vm.VirtualMachine.State;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="domain_router_view")
-public class DomainRouterJoinVO extends BaseViewVO implements ControlledViewEntity {
+public class DomainRouterJoinVO extends BaseViewVO implements ControlledViewEntity, InternalIdentity {
 
     @Column(name="id", updatable=false, nullable = false)
     private long id;

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/api/query/vo/EventJoinVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/api/query/vo/EventJoinVO.java b/server/src/com/cloud/api/query/vo/EventJoinVO.java
index def1b1d..790f004 100644
--- a/server/src/com/cloud/api/query/vo/EventJoinVO.java
+++ b/server/src/com/cloud/api/query/vo/EventJoinVO.java
@@ -26,10 +26,11 @@ import javax.persistence.Table;
 
 import com.cloud.utils.db.GenericDao;
 import com.cloud.event.Event.State;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="event_view")
-public class EventJoinVO extends BaseViewVO implements ControlledViewEntity {
+public class EventJoinVO extends BaseViewVO implements ControlledViewEntity, InternalIdentity {
 
     @Column(name="id", updatable=false, nullable = false)
     private long id;

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/api/query/vo/HostJoinVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/api/query/vo/HostJoinVO.java b/server/src/com/cloud/api/query/vo/HostJoinVO.java
index 83de5f6..a1cdb50 100644
--- a/server/src/com/cloud/api/query/vo/HostJoinVO.java
+++ b/server/src/com/cloud/api/query/vo/HostJoinVO.java
@@ -32,6 +32,7 @@ import com.cloud.hypervisor.Hypervisor.HypervisorType;
 import com.cloud.org.Cluster;
 import com.cloud.resource.ResourceState;
 import com.cloud.utils.db.GenericDao;
+import org.apache.cloudstack.api.InternalIdentity;
 
 /**
  * Host DB view.
@@ -40,7 +41,7 @@ import com.cloud.utils.db.GenericDao;
  */
 @Entity
 @Table(name="host_view")
-public class HostJoinVO extends BaseViewVO {
+public class HostJoinVO extends BaseViewVO implements InternalIdentity {
 
     @Column(name="id")
     private long id;

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/api/query/vo/InstanceGroupJoinVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/api/query/vo/InstanceGroupJoinVO.java b/server/src/com/cloud/api/query/vo/InstanceGroupJoinVO.java
index 2ab3755..6b9d27e 100644
--- a/server/src/com/cloud/api/query/vo/InstanceGroupJoinVO.java
+++ b/server/src/com/cloud/api/query/vo/InstanceGroupJoinVO.java
@@ -23,10 +23,11 @@ import javax.persistence.Entity;
 import javax.persistence.Table;
 
 import com.cloud.utils.db.GenericDao;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="instance_group_view")
-public class InstanceGroupJoinVO extends BaseViewVO implements ControlledViewEntity {
+public class InstanceGroupJoinVO extends BaseViewVO implements ControlledViewEntity, InternalIdentity {
 
     @Column(name="id", updatable=false, nullable = false)
     private long id;

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/api/query/vo/ProjectAccountJoinVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/api/query/vo/ProjectAccountJoinVO.java b/server/src/com/cloud/api/query/vo/ProjectAccountJoinVO.java
index c8158cc..cbc9531 100644
--- a/server/src/com/cloud/api/query/vo/ProjectAccountJoinVO.java
+++ b/server/src/com/cloud/api/query/vo/ProjectAccountJoinVO.java
@@ -23,10 +23,11 @@ import javax.persistence.Enumerated;
 import javax.persistence.Table;
 
 import com.cloud.projects.ProjectAccount.Role;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="project_account_view")
-public class ProjectAccountJoinVO extends BaseViewVO {
+public class ProjectAccountJoinVO extends BaseViewVO implements InternalIdentity {
 
     @Column(name="id", updatable=false, nullable = false)
     private long id;

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/api/query/vo/ProjectInvitationJoinVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/api/query/vo/ProjectInvitationJoinVO.java b/server/src/com/cloud/api/query/vo/ProjectInvitationJoinVO.java
index 7fe36d1..1ec63db 100644
--- a/server/src/com/cloud/api/query/vo/ProjectInvitationJoinVO.java
+++ b/server/src/com/cloud/api/query/vo/ProjectInvitationJoinVO.java
@@ -26,10 +26,11 @@ import javax.persistence.Table;
 
 import com.cloud.utils.db.GenericDao;
 import com.cloud.vm.VirtualMachine.State;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="project_invitation_view")
-public class ProjectInvitationJoinVO extends BaseViewVO implements ControlledViewEntity {
+public class ProjectInvitationJoinVO extends BaseViewVO implements ControlledViewEntity, InternalIdentity {
 
     @Column(name="id", updatable=false, nullable = false)
     private long id;

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/api/query/vo/ProjectJoinVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/api/query/vo/ProjectJoinVO.java b/server/src/com/cloud/api/query/vo/ProjectJoinVO.java
index bf278e1..8e18e7b 100644
--- a/server/src/com/cloud/api/query/vo/ProjectJoinVO.java
+++ b/server/src/com/cloud/api/query/vo/ProjectJoinVO.java
@@ -27,10 +27,11 @@ import javax.persistence.Table;
 import com.cloud.server.ResourceTag.TaggedResourceType;
 import com.cloud.utils.db.GenericDao;
 import com.cloud.vm.VirtualMachine.State;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="project_view")
-public class ProjectJoinVO extends BaseViewVO {
+public class ProjectJoinVO extends BaseViewVO implements InternalIdentity {
 
     @Column(name="id", updatable=false, nullable = false)
     private long id;

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/api/query/vo/ResourceTagJoinVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/api/query/vo/ResourceTagJoinVO.java b/server/src/com/cloud/api/query/vo/ResourceTagJoinVO.java
index 63dc0b3..6064b6f 100644
--- a/server/src/com/cloud/api/query/vo/ResourceTagJoinVO.java
+++ b/server/src/com/cloud/api/query/vo/ResourceTagJoinVO.java
@@ -23,10 +23,11 @@ import javax.persistence.Enumerated;
 import javax.persistence.Table;
 
 import com.cloud.server.ResourceTag.TaggedResourceType;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="resource_tag_view")
-public class ResourceTagJoinVO extends BaseViewVO implements ControlledViewEntity {
+public class ResourceTagJoinVO extends BaseViewVO implements ControlledViewEntity, InternalIdentity {
 
     @Column(name="id", updatable=false, nullable = false)
     private long id;

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/api/query/vo/SecurityGroupJoinVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/api/query/vo/SecurityGroupJoinVO.java b/server/src/com/cloud/api/query/vo/SecurityGroupJoinVO.java
index 6b4106e..c5c45f1 100644
--- a/server/src/com/cloud/api/query/vo/SecurityGroupJoinVO.java
+++ b/server/src/com/cloud/api/query/vo/SecurityGroupJoinVO.java
@@ -24,10 +24,11 @@ import javax.persistence.Table;
 
 import com.cloud.network.security.SecurityRule.SecurityRuleType;
 import com.cloud.server.ResourceTag.TaggedResourceType;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="security_group_view")
-public class SecurityGroupJoinVO extends BaseViewVO implements ControlledViewEntity {
+public class SecurityGroupJoinVO extends BaseViewVO implements ControlledViewEntity, InternalIdentity {
 
     @Column(name="id", updatable=false, nullable = false)
     private long id;

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/api/query/vo/UserAccountJoinVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/api/query/vo/UserAccountJoinVO.java b/server/src/com/cloud/api/query/vo/UserAccountJoinVO.java
index df20ede..f62d822 100644
--- a/server/src/com/cloud/api/query/vo/UserAccountJoinVO.java
+++ b/server/src/com/cloud/api/query/vo/UserAccountJoinVO.java
@@ -24,10 +24,11 @@ import javax.persistence.Table;
 
 import com.cloud.utils.db.Encrypt;
 import com.cloud.utils.db.GenericDao;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="user_view")
-public class UserAccountJoinVO extends BaseViewVO {
+public class UserAccountJoinVO extends BaseViewVO implements InternalIdentity {
 
     @Column(name="id", updatable=false, nullable = false)
     private long id;

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/api/query/vo/UserVmJoinVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/api/query/vo/UserVmJoinVO.java b/server/src/com/cloud/api/query/vo/UserVmJoinVO.java
index c01d2d9..62a1daf 100644
--- a/server/src/com/cloud/api/query/vo/UserVmJoinVO.java
+++ b/server/src/com/cloud/api/query/vo/UserVmJoinVO.java
@@ -37,10 +37,11 @@ import com.cloud.utils.db.Encrypt;
 import com.cloud.utils.db.GenericDao;
 import com.cloud.vm.VirtualMachine;
 import com.cloud.vm.VirtualMachine.State;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="user_vm_view")
-public class UserVmJoinVO extends BaseViewVO implements ControlledViewEntity {
+public class UserVmJoinVO extends BaseViewVO implements ControlledViewEntity, InternalIdentity {
 
     @Column(name="id", updatable=false, nullable = false)
     private long id;

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/api/query/vo/VolumeJoinVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/api/query/vo/VolumeJoinVO.java b/server/src/com/cloud/api/query/vo/VolumeJoinVO.java
index 96c2615..89e9f84 100644
--- a/server/src/com/cloud/api/query/vo/VolumeJoinVO.java
+++ b/server/src/com/cloud/api/query/vo/VolumeJoinVO.java
@@ -32,10 +32,11 @@ import com.cloud.storage.VMTemplateStorageResourceAssoc.Status;
 import com.cloud.utils.db.GenericDao;
 import com.cloud.vm.VirtualMachine;
 import com.cloud.vm.VirtualMachine.Type;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="volume_view")
-public class VolumeJoinVO extends BaseViewVO implements ControlledViewEntity {
+public class VolumeJoinVO extends BaseViewVO implements ControlledViewEntity, InternalIdentity {
 
     @Column(name="id")
     private long id;

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/cluster/CheckPointVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/cluster/CheckPointVO.java b/server/src/com/cloud/cluster/CheckPointVO.java
index 27b7f93..db4f828 100644
--- a/server/src/com/cloud/cluster/CheckPointVO.java
+++ b/server/src/com/cloud/cluster/CheckPointVO.java
@@ -26,10 +26,11 @@ import javax.persistence.Id;
 import javax.persistence.Table;
 
 import com.cloud.utils.db.GenericDao;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="stack_maid")
-public class CheckPointVO {
+public class CheckPointVO implements InternalIdentity {
 
 	@Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/cluster/ManagementServerHostPeerVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/cluster/ManagementServerHostPeerVO.java b/server/src/com/cloud/cluster/ManagementServerHostPeerVO.java
index 4699f15..e5e12ec 100644
--- a/server/src/com/cloud/cluster/ManagementServerHostPeerVO.java
+++ b/server/src/com/cloud/cluster/ManagementServerHostPeerVO.java
@@ -30,10 +30,11 @@ import javax.persistence.Temporal;
 import javax.persistence.TemporalType;
 
 import com.cloud.utils.DateUtil;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="mshost_peer")
-public class ManagementServerHostPeerVO {
+public class ManagementServerHostPeerVO implements InternalIdentity {
     
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/cluster/ManagementServerHostVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/cluster/ManagementServerHostVO.java b/server/src/com/cloud/cluster/ManagementServerHostVO.java
index ba2498d..4279e04 100644
--- a/server/src/com/cloud/cluster/ManagementServerHostVO.java
+++ b/server/src/com/cloud/cluster/ManagementServerHostVO.java
@@ -30,10 +30,11 @@ import javax.persistence.Temporal;
 import javax.persistence.TemporalType;
 
 import com.cloud.utils.db.GenericDao;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="mshost")
-public class ManagementServerHostVO implements ManagementServerHost{
+public class ManagementServerHostVO implements ManagementServerHost, InternalIdentity {
 
 	@Id
 	@GeneratedValue(strategy=GenerationType.IDENTITY)

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/cluster/agentlb/HostTransferMapVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/cluster/agentlb/HostTransferMapVO.java b/server/src/com/cloud/cluster/agentlb/HostTransferMapVO.java
index 9255c27..9c2edde 100644
--- a/server/src/com/cloud/cluster/agentlb/HostTransferMapVO.java
+++ b/server/src/com/cloud/cluster/agentlb/HostTransferMapVO.java
@@ -26,11 +26,12 @@ import javax.persistence.InheritanceType;
 import javax.persistence.Table;
 
 import com.cloud.utils.db.GenericDao;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name = "op_host_transfer")
 @Inheritance(strategy = InheritanceType.TABLE_PER_CLASS)
-public class HostTransferMapVO {
+public class HostTransferMapVO implements InternalIdentity {
 
     public enum HostTransferState {
         TransferRequested, TransferStarted;

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/dc/ClusterDetailsVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/dc/ClusterDetailsVO.java b/server/src/com/cloud/dc/ClusterDetailsVO.java
index 972d50e..11a5525 100644
--- a/server/src/com/cloud/dc/ClusterDetailsVO.java
+++ b/server/src/com/cloud/dc/ClusterDetailsVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.dc;
 
+import org.apache.cloudstack.api.InternalIdentity;
+
 import javax.persistence.Column;
 import javax.persistence.Entity;
 import javax.persistence.GeneratedValue;
@@ -25,7 +27,7 @@ import javax.persistence.Table;
 
 @Entity
 @Table(name="cluster_details")
-public class ClusterDetailsVO {
+public class ClusterDetailsVO implements InternalIdentity {
 
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/dc/ClusterVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/dc/ClusterVO.java b/server/src/com/cloud/dc/ClusterVO.java
index dbed37b..cf562c1 100644
--- a/server/src/com/cloud/dc/ClusterVO.java
+++ b/server/src/com/cloud/dc/ClusterVO.java
@@ -35,10 +35,11 @@ import com.cloud.org.Managed.ManagedState;
 import com.cloud.org.Grouping;
 import com.cloud.utils.NumbersUtil;
 import com.cloud.utils.db.GenericDao;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="cluster")
-public class ClusterVO implements Cluster, Identity {
+public class ClusterVO implements Cluster, Identity, InternalIdentity {
 
     @Id
     @GeneratedValue(strategy = GenerationType.IDENTITY)

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/dc/DataCenterIpAddressVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/dc/DataCenterIpAddressVO.java b/server/src/com/cloud/dc/DataCenterIpAddressVO.java
index 4c407ba..d92227f 100755
--- a/server/src/com/cloud/dc/DataCenterIpAddressVO.java
+++ b/server/src/com/cloud/dc/DataCenterIpAddressVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.dc;
 
+import org.apache.cloudstack.api.InternalIdentity;
+
 import java.util.Date;
 
 import javax.persistence.Column;
@@ -29,7 +31,7 @@ import javax.persistence.TemporalType;
 
 @Entity
 @Table(name="op_dc_ip_address_alloc")
-public class DataCenterIpAddressVO {
+public class DataCenterIpAddressVO implements InternalIdentity {
 
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
@@ -75,7 +77,7 @@ public class DataCenterIpAddressVO {
         this.podId = podId;
     }
     
-    public Long getId() {
+    public long getId() {
         return id;
     }
     

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/dc/DataCenterLinkLocalIpAddressVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/dc/DataCenterLinkLocalIpAddressVO.java b/server/src/com/cloud/dc/DataCenterLinkLocalIpAddressVO.java
index feab6d4..ffa7549 100644
--- a/server/src/com/cloud/dc/DataCenterLinkLocalIpAddressVO.java
+++ b/server/src/com/cloud/dc/DataCenterLinkLocalIpAddressVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.dc;
 
+import org.apache.cloudstack.api.InternalIdentity;
+
 import java.util.Date;
 
 import javax.persistence.Column;
@@ -29,7 +31,7 @@ import javax.persistence.TemporalType;
 
 @Entity
 @Table(name="op_dc_link_local_ip_address_alloc")
-public class DataCenterLinkLocalIpAddressVO {
+public class DataCenterLinkLocalIpAddressVO implements InternalIdentity {
 
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
@@ -64,7 +66,7 @@ public class DataCenterLinkLocalIpAddressVO {
         this.podId = podId;
     }
     
-    public Long getId() {
+    public long getId() {
         return id;
     }
     

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/dc/DataCenterVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/dc/DataCenterVO.java b/server/src/com/cloud/dc/DataCenterVO.java
index d9b660f..18546ce 100644
--- a/server/src/com/cloud/dc/DataCenterVO.java
+++ b/server/src/com/cloud/dc/DataCenterVO.java
@@ -36,10 +36,11 @@ import com.cloud.network.Network.Provider;
 import com.cloud.org.Grouping;
 import com.cloud.utils.NumbersUtil;
 import com.cloud.utils.db.GenericDao;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="data_center")
-public class DataCenterVO implements DataCenter, Identity {
+public class DataCenterVO implements DataCenter, InternalIdentity, Identity {
 
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/dc/DataCenterVnetVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/dc/DataCenterVnetVO.java b/server/src/com/cloud/dc/DataCenterVnetVO.java
index af6f478..52d7ad2 100755
--- a/server/src/com/cloud/dc/DataCenterVnetVO.java
+++ b/server/src/com/cloud/dc/DataCenterVnetVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.dc;
 
+import org.apache.cloudstack.api.InternalIdentity;
+
 import java.util.Date;
 
 import javax.persistence.Column;
@@ -29,7 +31,7 @@ import javax.persistence.TemporalType;
 
 @Entity
 @Table(name="op_dc_vnet_alloc")
-public class DataCenterVnetVO {
+public class DataCenterVnetVO implements InternalIdentity {
     
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/dc/DcDetailVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/dc/DcDetailVO.java b/server/src/com/cloud/dc/DcDetailVO.java
index 4983863..15bfacb 100644
--- a/server/src/com/cloud/dc/DcDetailVO.java
+++ b/server/src/com/cloud/dc/DcDetailVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.dc;
 
+import org.apache.cloudstack.api.InternalIdentity;
+
 import javax.persistence.Column;
 import javax.persistence.Entity;
 import javax.persistence.GeneratedValue;
@@ -25,7 +27,7 @@ import javax.persistence.Table;
 
 @Entity
 @Table(name="data_center_details")
-public class DcDetailVO {
+public class DcDetailVO implements InternalIdentity {
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/dc/HostPodVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/dc/HostPodVO.java b/server/src/com/cloud/dc/HostPodVO.java
index b9f3712..45571e1 100644
--- a/server/src/com/cloud/dc/HostPodVO.java
+++ b/server/src/com/cloud/dc/HostPodVO.java
@@ -32,10 +32,11 @@ import org.apache.cloudstack.api.Identity;
 import com.cloud.org.Grouping;
 import com.cloud.utils.NumbersUtil;
 import com.cloud.utils.db.GenericDao;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name = "host_pod_ref")
-public class HostPodVO implements Pod {
+public class HostPodVO implements Pod, InternalIdentity {
 	@Id
 	@GeneratedValue(strategy = GenerationType.IDENTITY)
 	long id;

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/dc/PodVlanMapVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/dc/PodVlanMapVO.java b/server/src/com/cloud/dc/PodVlanMapVO.java
index 2e419ba..8853fac 100644
--- a/server/src/com/cloud/dc/PodVlanMapVO.java
+++ b/server/src/com/cloud/dc/PodVlanMapVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.dc;
 
+import org.apache.cloudstack.api.InternalIdentity;
+
 import javax.persistence.Column;
 import javax.persistence.Entity;
 import javax.persistence.GeneratedValue;
@@ -25,7 +27,7 @@ import javax.persistence.Table;
 
 @Entity
 @Table(name="pod_vlan_map")
-public class PodVlanMapVO {
+public class PodVlanMapVO implements InternalIdentity {
 	    
 	@Id
 	@GeneratedValue(strategy=GenerationType.IDENTITY)

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/dc/PodVlanVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/dc/PodVlanVO.java b/server/src/com/cloud/dc/PodVlanVO.java
index 0d4f1cc..5324c84 100755
--- a/server/src/com/cloud/dc/PodVlanVO.java
+++ b/server/src/com/cloud/dc/PodVlanVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.dc;
 
+import org.apache.cloudstack.api.InternalIdentity;
+
 import java.util.Date;
 
 import javax.persistence.Column;
@@ -29,7 +31,7 @@ import javax.persistence.TemporalType;
 
 @Entity
 @Table(name="op_pod_vlan_alloc")
-public class PodVlanVO {
+public class PodVlanVO implements InternalIdentity {
     
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
@@ -67,7 +69,7 @@ public class PodVlanVO {
         this.takenAt = null;
     }
     
-    public Long getId() {
+    public long getId() {
         return id;
     }
     

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/dc/StorageNetworkIpAddressVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/dc/StorageNetworkIpAddressVO.java b/server/src/com/cloud/dc/StorageNetworkIpAddressVO.java
index 1f25299..6ad1ecd 100755
--- a/server/src/com/cloud/dc/StorageNetworkIpAddressVO.java
+++ b/server/src/com/cloud/dc/StorageNetworkIpAddressVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.dc;
 
+import org.apache.cloudstack.api.InternalIdentity;
+
 import java.util.Date;
 
 import javax.persistence.Column;
@@ -33,7 +35,7 @@ import javax.persistence.TemporalType;
 @Entity
 @Table(name="op_dc_storage_network_ip_address")
 @SecondaryTables({@SecondaryTable(name = "dc_storage_network_ip_range", pkJoinColumns = { @PrimaryKeyJoinColumn(name = "range_id", referencedColumnName = "id")})})
-public class StorageNetworkIpAddressVO {
+public class StorageNetworkIpAddressVO implements InternalIdentity {
 	@Id
 	@GeneratedValue(strategy = GenerationType.IDENTITY)
 	@Column(name = "id")
@@ -64,7 +66,7 @@ public class StorageNetworkIpAddressVO {
 	protected StorageNetworkIpAddressVO() {
 	}
 
-	public Long getId() {
+	public long getId() {
 		return id;
 	}
 

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/dc/StorageNetworkIpRangeVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/dc/StorageNetworkIpRangeVO.java b/server/src/com/cloud/dc/StorageNetworkIpRangeVO.java
index bb17e4a..c61cadf 100755
--- a/server/src/com/cloud/dc/StorageNetworkIpRangeVO.java
+++ b/server/src/com/cloud/dc/StorageNetworkIpRangeVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.dc;
 
+import org.apache.cloudstack.api.InternalIdentity;
+
 import java.util.UUID;
 
 import javax.persistence.Column;
@@ -34,7 +36,7 @@ import javax.persistence.Table;
 	@SecondaryTable(name="host_pod_ref", pkJoinColumns={@PrimaryKeyJoinColumn(name="pod_id", referencedColumnName="id")}),
 	@SecondaryTable(name="data_center", pkJoinColumns={@PrimaryKeyJoinColumn(name="data_center_id", referencedColumnName="id")})
 })
-public class StorageNetworkIpRangeVO implements StorageNetworkIpRange {
+public class StorageNetworkIpRangeVO implements StorageNetworkIpRange, InternalIdentity {
 	@Id
 	@GeneratedValue(strategy = GenerationType.IDENTITY)
 	@Column(name = "id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/dc/VlanVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/dc/VlanVO.java b/server/src/com/cloud/dc/VlanVO.java
index b322949..04317cb 100644
--- a/server/src/com/cloud/dc/VlanVO.java
+++ b/server/src/com/cloud/dc/VlanVO.java
@@ -28,10 +28,11 @@ import javax.persistence.Id;
 import javax.persistence.Table;
 
 import org.apache.cloudstack.api.Identity;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="vlan")
-public class VlanVO implements Vlan, Identity {
+public class VlanVO implements Vlan, Identity, InternalIdentity {
 
 	@Id
 	@GeneratedValue(strategy=GenerationType.IDENTITY)

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/domain/DomainVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/domain/DomainVO.java b/server/src/com/cloud/domain/DomainVO.java
index e6e745e..275395a 100644
--- a/server/src/com/cloud/domain/DomainVO.java
+++ b/server/src/com/cloud/domain/DomainVO.java
@@ -26,6 +26,7 @@ import javax.persistence.GenerationType;
 import javax.persistence.Id;
 import javax.persistence.Table;
 
+import org.apache.cloudstack.api.InternalIdentity;
 import org.apache.log4j.Logger;
 
 import org.apache.cloudstack.api.Identity;
@@ -33,7 +34,7 @@ import com.cloud.utils.db.GenericDao;
 
 @Entity
 @Table(name="domain")
-public class DomainVO implements Domain, Identity {
+public class DomainVO implements Domain, Identity, InternalIdentity {
 	public static final Logger s_logger = Logger.getLogger(DomainVO.class.getName());
 
     @Id

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/ha/HaWorkVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/ha/HaWorkVO.java b/server/src/com/cloud/ha/HaWorkVO.java
index d5f41e0..adfa3ec 100644
--- a/server/src/com/cloud/ha/HaWorkVO.java
+++ b/server/src/com/cloud/ha/HaWorkVO.java
@@ -34,10 +34,11 @@ import com.cloud.ha.HighAvailabilityManager.WorkType;
 import com.cloud.utils.db.GenericDao;
 import com.cloud.vm.VirtualMachine;
 import com.cloud.vm.VirtualMachine.State;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="op_ha_work")
-public class HaWorkVO {
+public class HaWorkVO implements InternalIdentity {
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")
@@ -87,7 +88,7 @@ public class HaWorkVO {
     protected HaWorkVO() {
     }
     
-    public Long getId() {
+    public long getId() {
         return id;
     }
     

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/keystore/KeystoreVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/keystore/KeystoreVO.java b/server/src/com/cloud/keystore/KeystoreVO.java
index a7be602..f590607 100644
--- a/server/src/com/cloud/keystore/KeystoreVO.java
+++ b/server/src/com/cloud/keystore/KeystoreVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.keystore;
 
+import org.apache.cloudstack.api.InternalIdentity;
+
 import javax.persistence.Column;
 import javax.persistence.Entity;
 import javax.persistence.GeneratedValue;
@@ -25,7 +27,7 @@ import javax.persistence.Table;
 
 @Entity
 @Table(name="keystore")
-public class KeystoreVO {
+public class KeystoreVO implements InternalIdentity {
 	@Id
 	@GeneratedValue(strategy=GenerationType.IDENTITY)
 	@Column(name="id")
@@ -49,7 +51,7 @@ public class KeystoreVO {
     public KeystoreVO() {
     }
     
-	public Long getId() {
+	public long getId() {
 		return id;
 	}
 

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/maint/AgentUpgradeVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/maint/AgentUpgradeVO.java b/server/src/com/cloud/maint/AgentUpgradeVO.java
index b784ead..b36f5b7 100644
--- a/server/src/com/cloud/maint/AgentUpgradeVO.java
+++ b/server/src/com/cloud/maint/AgentUpgradeVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.maint;
 
+import org.apache.cloudstack.api.InternalIdentity;
+
 import javax.persistence.Column;
 import javax.persistence.Entity;
 import javax.persistence.EnumType;
@@ -26,7 +28,7 @@ import javax.persistence.Table;
 
 @Entity
 @Table(name="op_host_upgrade")
-public class AgentUpgradeVO {
+public class AgentUpgradeVO implements InternalIdentity {
     @Id
     @Column(name="host_id")
     private long id;

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/migration/DiskOffering20VO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/migration/DiskOffering20VO.java b/server/src/com/cloud/migration/DiskOffering20VO.java
index 8c26171..e50328d 100644
--- a/server/src/com/cloud/migration/DiskOffering20VO.java
+++ b/server/src/com/cloud/migration/DiskOffering20VO.java
@@ -26,10 +26,11 @@ import javax.persistence.Id;
 import javax.persistence.Table;
 
 import com.cloud.utils.db.GenericDao;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="disk_offering")
-public class DiskOffering20VO {
+public class DiskOffering20VO implements InternalIdentity {
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")
@@ -64,7 +65,7 @@ public class DiskOffering20VO {
         this.mirrored = mirrored;
     }
 
-    public Long getId() {
+    public long getId() {
         return id;
     }
     public void setId(Long id) {

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/migration/DiskOffering21VO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/migration/DiskOffering21VO.java b/server/src/com/cloud/migration/DiskOffering21VO.java
index f428c51..593f7ba 100644
--- a/server/src/com/cloud/migration/DiskOffering21VO.java
+++ b/server/src/com/cloud/migration/DiskOffering21VO.java
@@ -32,12 +32,13 @@ import javax.persistence.Table;
 import javax.persistence.Transient;
 
 import com.cloud.utils.db.GenericDao;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="disk_offering_21")
 @Inheritance(strategy=InheritanceType.JOINED)
 @DiscriminatorColumn(name="type", discriminatorType=DiscriminatorType.STRING, length=32)
-public class DiskOffering21VO {
+public class DiskOffering21VO implements InternalIdentity {
     public enum Type {
         Disk,
         Service

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/migration/ServiceOffering20VO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/migration/ServiceOffering20VO.java b/server/src/com/cloud/migration/ServiceOffering20VO.java
index 065c924..bed29ec 100644
--- a/server/src/com/cloud/migration/ServiceOffering20VO.java
+++ b/server/src/com/cloud/migration/ServiceOffering20VO.java
@@ -30,10 +30,11 @@ import javax.persistence.Table;
 import com.cloud.dc.Vlan;
 import com.cloud.dc.Vlan.VlanType;
 import com.cloud.utils.db.GenericDao;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="service_offering")
-public class ServiceOffering20VO {
+public class ServiceOffering20VO implements InternalIdentity {
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")
@@ -108,7 +109,7 @@ public class ServiceOffering20VO {
 		this.offerHA = offerHA;
 	}
 	
-	public Long getId() {
+	public long getId() {
 		return id;
 	}
 	

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/network/ExternalFirewallDeviceVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/ExternalFirewallDeviceVO.java b/server/src/com/cloud/network/ExternalFirewallDeviceVO.java
index 9b58777..a4b6741 100644
--- a/server/src/com/cloud/network/ExternalFirewallDeviceVO.java
+++ b/server/src/com/cloud/network/ExternalFirewallDeviceVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.network;
 
+import org.apache.cloudstack.api.InternalIdentity;
+
 import java.util.UUID;
 
 import javax.persistence.Column;
@@ -33,7 +35,7 @@ import javax.persistence.Table;
 
 @Entity
 @Table(name="external_firewall_devices")
-public class ExternalFirewallDeviceVO {
+public class ExternalFirewallDeviceVO implements InternalIdentity {
     @Id
     @GeneratedValue(strategy = GenerationType.IDENTITY)
     @Column(name = "id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/network/FirewallRulesCidrsVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/FirewallRulesCidrsVO.java b/server/src/com/cloud/network/FirewallRulesCidrsVO.java
index a123aee..0048dce 100644
--- a/server/src/com/cloud/network/FirewallRulesCidrsVO.java
+++ b/server/src/com/cloud/network/FirewallRulesCidrsVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.network;
 
+import org.apache.cloudstack.api.InternalIdentity;
+
 import javax.persistence.Column;
 import javax.persistence.Entity;
 import javax.persistence.GeneratedValue;
@@ -25,7 +27,7 @@ import javax.persistence.Table;
 
 @Entity
 @Table(name=("firewall_rules_cidrs"))
-public class FirewallRulesCidrsVO {
+public class FirewallRulesCidrsVO implements InternalIdentity {
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")
@@ -44,7 +46,7 @@ public class FirewallRulesCidrsVO {
         this.sourceCidrList = sourceCidrList;
     }
 
-    public Long getId() {
+    public long getId() {
         return id;
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/network/IPAddressVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/IPAddressVO.java b/server/src/com/cloud/network/IPAddressVO.java
index 4adab35..1c846b8 100644
--- a/server/src/com/cloud/network/IPAddressVO.java
+++ b/server/src/com/cloud/network/IPAddressVO.java
@@ -33,6 +33,7 @@ import javax.persistence.Transient;
 
 import org.apache.cloudstack.api.Identity;
 import com.cloud.utils.net.Ip;
+import org.apache.cloudstack.api.InternalIdentity;
 
 /**
  * A bean representing a public IP Address
@@ -40,7 +41,7 @@ import com.cloud.utils.net.Ip;
  */
 @Entity
 @Table(name=("user_ip_address"))
-public class IPAddressVO implements IpAddress, Identity {
+public class IPAddressVO implements IpAddress, Identity, InternalIdentity {
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/network/InlineLoadBalancerNicMapVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/InlineLoadBalancerNicMapVO.java b/server/src/com/cloud/network/InlineLoadBalancerNicMapVO.java
index ade6dae..787f03f 100644
--- a/server/src/com/cloud/network/InlineLoadBalancerNicMapVO.java
+++ b/server/src/com/cloud/network/InlineLoadBalancerNicMapVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.network;
 
+import org.apache.cloudstack.api.InternalIdentity;
+
 import javax.persistence.Column;
 import javax.persistence.Entity;
 import javax.persistence.GeneratedValue;
@@ -25,7 +27,7 @@ import javax.persistence.Table;
 
 @Entity
 @Table(name=("inline_load_balancer_nic_map"))
-public class InlineLoadBalancerNicMapVO {
+public class InlineLoadBalancerNicMapVO implements InternalIdentity {
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/network/LBStickinessPolicyVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/LBStickinessPolicyVO.java b/server/src/com/cloud/network/LBStickinessPolicyVO.java
index 30590cd..0e0df64 100644
--- a/server/src/com/cloud/network/LBStickinessPolicyVO.java
+++ b/server/src/com/cloud/network/LBStickinessPolicyVO.java
@@ -32,11 +32,12 @@ import javax.persistence.PrimaryKeyJoinColumn;
 import javax.persistence.Table;
 import com.cloud.network.rules.StickinessPolicy;
 import com.cloud.utils.Pair;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name = ("load_balancer_stickiness_policies"))
 @PrimaryKeyJoinColumn(name = "load_balancer_id", referencedColumnName = "id")
-public class LBStickinessPolicyVO implements StickinessPolicy {
+public class LBStickinessPolicyVO implements StickinessPolicy, InternalIdentity {
     @Id
     @GeneratedValue(strategy = GenerationType.IDENTITY)
     @Column(name = "id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/network/LoadBalancerVMMapVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/LoadBalancerVMMapVO.java b/server/src/com/cloud/network/LoadBalancerVMMapVO.java
index e64085d..3cc66dc 100644
--- a/server/src/com/cloud/network/LoadBalancerVMMapVO.java
+++ b/server/src/com/cloud/network/LoadBalancerVMMapVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.network;
 
+import org.apache.cloudstack.api.InternalIdentity;
+
 import javax.persistence.Column;
 import javax.persistence.Entity;
 import javax.persistence.GeneratedValue;
@@ -25,7 +27,7 @@ import javax.persistence.Table;
 
 @Entity
 @Table(name=("load_balancer_vm_map"))
-public class LoadBalancerVMMapVO {
+public class LoadBalancerVMMapVO implements InternalIdentity {
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/network/NetworkExternalFirewallVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/NetworkExternalFirewallVO.java b/server/src/com/cloud/network/NetworkExternalFirewallVO.java
index 3744117..800e737 100644
--- a/server/src/com/cloud/network/NetworkExternalFirewallVO.java
+++ b/server/src/com/cloud/network/NetworkExternalFirewallVO.java
@@ -27,6 +27,7 @@ import javax.persistence.Id;
 import javax.persistence.Table;
 
 import com.cloud.utils.db.GenericDao;
+import org.apache.cloudstack.api.InternalIdentity;
 
 /**
  * NetworkExternalFirewallVO contains information on the networks that are using external firewall
@@ -34,7 +35,7 @@ import com.cloud.utils.db.GenericDao;
 
 @Entity
 @Table(name="network_external_firewall_device_map")
-public class NetworkExternalFirewallVO {
+public class NetworkExternalFirewallVO implements InternalIdentity {
     @Id
     @GeneratedValue(strategy = GenerationType.IDENTITY)
     @Column(name = "id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/network/NetworkExternalLoadBalancerVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/NetworkExternalLoadBalancerVO.java b/server/src/com/cloud/network/NetworkExternalLoadBalancerVO.java
index f3ff1c0..17f9ffd 100644
--- a/server/src/com/cloud/network/NetworkExternalLoadBalancerVO.java
+++ b/server/src/com/cloud/network/NetworkExternalLoadBalancerVO.java
@@ -27,6 +27,7 @@ import javax.persistence.Id;
 import javax.persistence.Table;
 
 import com.cloud.utils.db.GenericDao;
+import org.apache.cloudstack.api.InternalIdentity;
 
 /**
  * NetworkExternalLoadBalancerVO contains mapping of a network and the external load balancer device id assigned to the network
@@ -34,7 +35,7 @@ import com.cloud.utils.db.GenericDao;
 
 @Entity
 @Table(name="network_external_lb_device_map")
-public class NetworkExternalLoadBalancerVO {
+public class NetworkExternalLoadBalancerVO implements InternalIdentity {
 
     @Id
     @GeneratedValue(strategy = GenerationType.IDENTITY)

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/network/NetworkRuleConfigVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/NetworkRuleConfigVO.java b/server/src/com/cloud/network/NetworkRuleConfigVO.java
index 5a92f4f..bbfae43 100644
--- a/server/src/com/cloud/network/NetworkRuleConfigVO.java
+++ b/server/src/com/cloud/network/NetworkRuleConfigVO.java
@@ -27,10 +27,11 @@ import javax.persistence.Table;
 
 import com.cloud.async.AsyncInstanceCreateStatus;
 import com.google.gson.annotations.Expose;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name=("network_rule_config"))
-public class NetworkRuleConfigVO {
+public class NetworkRuleConfigVO implements InternalIdentity {
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")
@@ -62,7 +63,7 @@ public class NetworkRuleConfigVO {
         this.protocol = protocol;
     }
 
-    public Long getId() {
+    public long getId() {
         return id;
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/network/NetworkServiceMapVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/NetworkServiceMapVO.java b/server/src/com/cloud/network/NetworkServiceMapVO.java
index 6cd9ba6..592522d 100644
--- a/server/src/com/cloud/network/NetworkServiceMapVO.java
+++ b/server/src/com/cloud/network/NetworkServiceMapVO.java
@@ -28,10 +28,11 @@ import javax.persistence.Table;
 import com.cloud.network.Network.Provider;
 import com.cloud.network.Network.Service;
 import com.cloud.utils.db.GenericDao;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="ntwk_service_map")
-public class NetworkServiceMapVO {  
+public class NetworkServiceMapVO implements InternalIdentity {
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/network/NetworkVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/NetworkVO.java b/server/src/com/cloud/network/NetworkVO.java
index 5fcaa98..d83f458 100644
--- a/server/src/com/cloud/network/NetworkVO.java
+++ b/server/src/com/cloud/network/NetworkVO.java
@@ -37,6 +37,7 @@ import com.cloud.network.Networks.TrafficType;
 import com.cloud.utils.NumbersUtil;
 import com.cloud.utils.db.GenericDao;
 import com.cloud.utils.net.NetUtils;
+import org.apache.cloudstack.api.InternalIdentity;
 
 /**
  * NetworkConfigurationVO contains information about a specific network.
@@ -44,7 +45,7 @@ import com.cloud.utils.net.NetUtils;
  */
 @Entity
 @Table(name="networks")
-public class NetworkVO implements Network, Identity {
+public class NetworkVO implements Network, Identity, InternalIdentity {
     @Id
     @TableGenerator(name="networks_sq", table="sequence", pkColumnName="name", valueColumnName="value", pkColumnValue="networks_seq", allocationSize=1)
     @Column(name="id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/network/PhysicalNetworkVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/PhysicalNetworkVO.java b/server/src/com/cloud/network/PhysicalNetworkVO.java
index 84371fb..e12f5e4 100644
--- a/server/src/com/cloud/network/PhysicalNetworkVO.java
+++ b/server/src/com/cloud/network/PhysicalNetworkVO.java
@@ -35,6 +35,7 @@ import javax.persistence.TableGenerator;
 
 import com.cloud.utils.NumbersUtil;
 import com.cloud.utils.db.GenericDao;
+import org.apache.cloudstack.api.InternalIdentity;
 
 /**
  * NetworkConfigurationVO contains information about a specific physical network.
@@ -42,7 +43,7 @@ import com.cloud.utils.db.GenericDao;
  */
 @Entity
 @Table(name="physical_network")
-public class PhysicalNetworkVO implements PhysicalNetwork {
+public class PhysicalNetworkVO implements PhysicalNetwork, InternalIdentity {
     @Id
     @TableGenerator(name="physical_networks_sq", table="sequence", pkColumnName="name", valueColumnName="value", pkColumnValue="physical_networks_seq", allocationSize=1)
     @Column(name="id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/network/PortProfileVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/PortProfileVO.java b/server/src/com/cloud/network/PortProfileVO.java
index c9b2a3f..8a7b9d8 100644
--- a/server/src/com/cloud/network/PortProfileVO.java
+++ b/server/src/com/cloud/network/PortProfileVO.java
@@ -27,6 +27,7 @@ import javax.persistence.GenerationType;
 import javax.persistence.Id;
 import javax.persistence.Table;
 import com.cloud.exception.InvalidParameterValueException;
+import org.apache.cloudstack.api.InternalIdentity;
 
 /**
  * PortProfileVO contains information on portprofiles that are created on a Cisco Nexus 1000v VSM associated
@@ -35,7 +36,7 @@ import com.cloud.exception.InvalidParameterValueException;
 
 @Entity
 @Table(name="port_profile")
-public class PortProfileVO {
+public class PortProfileVO implements InternalIdentity {
 	
 	// We need to know what properties a VSM has. Put them here.
 	

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/network/RouterNetworkVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/RouterNetworkVO.java b/server/src/com/cloud/network/RouterNetworkVO.java
index 0ff3a44..ee58521 100644
--- a/server/src/com/cloud/network/RouterNetworkVO.java
+++ b/server/src/com/cloud/network/RouterNetworkVO.java
@@ -26,11 +26,12 @@ import javax.persistence.Id;
 import javax.persistence.Table;
 
 import com.cloud.network.Network.GuestType;
+import org.apache.cloudstack.api.InternalIdentity;
 
 
 @Entity
 @Table(name="router_network_ref")
-public class RouterNetworkVO{
+public class RouterNetworkVO implements InternalIdentity {
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     long id;

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/network/Site2SiteCustomerGatewayVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/Site2SiteCustomerGatewayVO.java b/server/src/com/cloud/network/Site2SiteCustomerGatewayVO.java
index b51e83c..46a63f0 100644
--- a/server/src/com/cloud/network/Site2SiteCustomerGatewayVO.java
+++ b/server/src/com/cloud/network/Site2SiteCustomerGatewayVO.java
@@ -27,10 +27,11 @@ import javax.persistence.Id;
 import javax.persistence.Table;
 
 import com.cloud.utils.db.GenericDao;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name=("s2s_customer_gateway"))
-public class Site2SiteCustomerGatewayVO implements Site2SiteCustomerGateway {
+public class Site2SiteCustomerGatewayVO implements Site2SiteCustomerGateway, InternalIdentity {
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/network/Site2SiteVpnConnectionVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/Site2SiteVpnConnectionVO.java b/server/src/com/cloud/network/Site2SiteVpnConnectionVO.java
index 4424f21..99f807f 100644
--- a/server/src/com/cloud/network/Site2SiteVpnConnectionVO.java
+++ b/server/src/com/cloud/network/Site2SiteVpnConnectionVO.java
@@ -29,10 +29,11 @@ import javax.persistence.Id;
 import javax.persistence.Table;
 
 import com.cloud.utils.db.GenericDao;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name=("s2s_vpn_connection"))
-public class Site2SiteVpnConnectionVO implements Site2SiteVpnConnection {
+public class Site2SiteVpnConnectionVO implements Site2SiteVpnConnection, InternalIdentity {
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/network/Site2SiteVpnGatewayVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/Site2SiteVpnGatewayVO.java b/server/src/com/cloud/network/Site2SiteVpnGatewayVO.java
index 29d174b..6124ecb 100644
--- a/server/src/com/cloud/network/Site2SiteVpnGatewayVO.java
+++ b/server/src/com/cloud/network/Site2SiteVpnGatewayVO.java
@@ -27,10 +27,11 @@ import javax.persistence.Id;
 import javax.persistence.Table;
 
 import com.cloud.utils.db.GenericDao;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name=("s2s_vpn_gateway"))
-public class Site2SiteVpnGatewayVO implements Site2SiteVpnGateway {
+public class Site2SiteVpnGatewayVO implements Site2SiteVpnGateway, InternalIdentity {
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/network/as/AutoScalePolicyConditionMapVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/as/AutoScalePolicyConditionMapVO.java b/server/src/com/cloud/network/as/AutoScalePolicyConditionMapVO.java
index b387b93..7d87b27 100644
--- a/server/src/com/cloud/network/as/AutoScalePolicyConditionMapVO.java
+++ b/server/src/com/cloud/network/as/AutoScalePolicyConditionMapVO.java
@@ -1,21 +1,23 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License.  You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied.  See the License for the
+// specific language governing permissions and limitations
+// under the License.
 package com.cloud.network.as;
 
+import org.apache.cloudstack.api.InternalIdentity;
+
 import javax.persistence.Column;
 import javax.persistence.Entity;
 import javax.persistence.GeneratedValue;
@@ -25,7 +27,7 @@ import javax.persistence.Table;
 
 @Entity
 @Table(name=("autoscale_policy_condition_map"))
-public class AutoScalePolicyConditionMapVO {
+public class AutoScalePolicyConditionMapVO implements InternalIdentity {
 
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/network/as/AutoScalePolicyVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/as/AutoScalePolicyVO.java b/server/src/com/cloud/network/as/AutoScalePolicyVO.java
index e23e34d..f8fbcb4 100644
--- a/server/src/com/cloud/network/as/AutoScalePolicyVO.java
+++ b/server/src/com/cloud/network/as/AutoScalePolicyVO.java
@@ -1,19 +1,19 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License.  You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied.  See the License for the
+// specific language governing permissions and limitations
+// under the License.
 package com.cloud.network.as;
 
 import java.util.Date;
@@ -29,11 +29,12 @@ import javax.persistence.InheritanceType;
 import javax.persistence.Table;
 
 import com.cloud.utils.db.GenericDao;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name = "autoscale_policies")
 @Inheritance(strategy = InheritanceType.JOINED)
-public class AutoScalePolicyVO implements AutoScalePolicy {
+public class AutoScalePolicyVO implements AutoScalePolicy, InternalIdentity {
 
     @Id
     @GeneratedValue(strategy = GenerationType.IDENTITY)

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/network/as/AutoScaleVmGroupPolicyMapVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/as/AutoScaleVmGroupPolicyMapVO.java b/server/src/com/cloud/network/as/AutoScaleVmGroupPolicyMapVO.java
index 9ea6cab..7e1c38a 100644
--- a/server/src/com/cloud/network/as/AutoScaleVmGroupPolicyMapVO.java
+++ b/server/src/com/cloud/network/as/AutoScaleVmGroupPolicyMapVO.java
@@ -1,21 +1,23 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License.  You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied.  See the License for the
+// specific language governing permissions and limitations
+// under the License.
 package com.cloud.network.as;
 
+import org.apache.cloudstack.api.InternalIdentity;
+
 import javax.persistence.Column;
 import javax.persistence.Entity;
 import javax.persistence.GeneratedValue;
@@ -25,7 +27,7 @@ import javax.persistence.Table;
 
 @Entity
 @Table(name=("autoscale_vmgroup_policy_map"))
-public class AutoScaleVmGroupPolicyMapVO {
+public class AutoScaleVmGroupPolicyMapVO implements InternalIdentity {
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/network/as/AutoScaleVmGroupVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/as/AutoScaleVmGroupVO.java b/server/src/com/cloud/network/as/AutoScaleVmGroupVO.java
index ab3ee1a..d1d85f9 100644
--- a/server/src/com/cloud/network/as/AutoScaleVmGroupVO.java
+++ b/server/src/com/cloud/network/as/AutoScaleVmGroupVO.java
@@ -1,19 +1,19 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License.  You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied.  See the License for the
+// specific language governing permissions and limitations
+// under the License.
 package com.cloud.network.as;
 
 import java.util.Date;
@@ -29,11 +29,12 @@ import javax.persistence.InheritanceType;
 import javax.persistence.Table;
 
 import com.cloud.utils.db.GenericDao;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name = "autoscale_vmgroups")
 @Inheritance(strategy = InheritanceType.JOINED)
-public class AutoScaleVmGroupVO implements AutoScaleVmGroup {
+public class AutoScaleVmGroupVO implements AutoScaleVmGroup, InternalIdentity {
 
     @Id
     @GeneratedValue(strategy = GenerationType.IDENTITY)

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/network/as/AutoScaleVmProfileVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/as/AutoScaleVmProfileVO.java b/server/src/com/cloud/network/as/AutoScaleVmProfileVO.java
index 453cedd..011be2b 100644
--- a/server/src/com/cloud/network/as/AutoScaleVmProfileVO.java
+++ b/server/src/com/cloud/network/as/AutoScaleVmProfileVO.java
@@ -37,11 +37,12 @@ import org.apache.cloudstack.api.Identity;
 import com.cloud.utils.Pair;
 import com.cloud.utils.db.GenericDao;
 import com.cloud.utils.net.NetUtils;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name = "autoscale_vmprofiles")
 @Inheritance(strategy = InheritanceType.JOINED)
-public class AutoScaleVmProfileVO implements AutoScaleVmProfile, Identity{
+public class AutoScaleVmProfileVO implements AutoScaleVmProfile, Identity, InternalIdentity {
 
     @Id
     @GeneratedValue(strategy = GenerationType.IDENTITY)

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/network/as/ConditionVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/as/ConditionVO.java b/server/src/com/cloud/network/as/ConditionVO.java
index d6dee33..bbae72f 100644
--- a/server/src/com/cloud/network/as/ConditionVO.java
+++ b/server/src/com/cloud/network/as/ConditionVO.java
@@ -31,10 +31,11 @@ import javax.persistence.Table;
 
 import org.apache.cloudstack.api.Identity;
 import com.cloud.utils.db.GenericDao;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name = "conditions")
-public class ConditionVO implements Condition, Identity {
+public class ConditionVO implements Condition, Identity, InternalIdentity {
 
     @Id
     @GeneratedValue(strategy = GenerationType.IDENTITY)

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/network/as/CounterVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/as/CounterVO.java b/server/src/com/cloud/network/as/CounterVO.java
index 0970b0e..b7b03f7 100644
--- a/server/src/com/cloud/network/as/CounterVO.java
+++ b/server/src/com/cloud/network/as/CounterVO.java
@@ -31,10 +31,11 @@ import javax.persistence.Table;
 
 import org.apache.cloudstack.api.Identity;
 import com.cloud.utils.db.GenericDao;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name = "counter")
-public class CounterVO implements Counter, Identity {
+public class CounterVO implements Counter, Identity, InternalIdentity {
 
     @Id
     @GeneratedValue(strategy = GenerationType.IDENTITY)

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/network/dao/NetworkOpVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/dao/NetworkOpVO.java b/server/src/com/cloud/network/dao/NetworkOpVO.java
index 5beb55c..8d41727 100644
--- a/server/src/com/cloud/network/dao/NetworkOpVO.java
+++ b/server/src/com/cloud/network/dao/NetworkOpVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.network.dao;
 
+import org.apache.cloudstack.api.InternalIdentity;
+
 import javax.persistence.Column;
 import javax.persistence.Entity;
 import javax.persistence.Id;
@@ -23,7 +25,7 @@ import javax.persistence.Table;
 
 @Entity
 @Table(name="op_networks")
-public class NetworkOpVO {
+public class NetworkOpVO implements InternalIdentity {
     
     @Id
     @Column(name="id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/network/dao/PhysicalNetworkIsolationMethodVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/dao/PhysicalNetworkIsolationMethodVO.java b/server/src/com/cloud/network/dao/PhysicalNetworkIsolationMethodVO.java
index d98f86e..5996704 100644
--- a/server/src/com/cloud/network/dao/PhysicalNetworkIsolationMethodVO.java
+++ b/server/src/com/cloud/network/dao/PhysicalNetworkIsolationMethodVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.network.dao;
 
+import org.apache.cloudstack.api.InternalIdentity;
+
 import javax.persistence.Column;
 import javax.persistence.Entity;
 import javax.persistence.GeneratedValue;
@@ -28,7 +30,7 @@ import javax.persistence.Table;
  */
 @Entity
 @Table(name = "physical_network_isolation_methods")
-public class PhysicalNetworkIsolationMethodVO {
+public class PhysicalNetworkIsolationMethodVO implements InternalIdentity {
     @Id
     @GeneratedValue(strategy = GenerationType.IDENTITY)
     @Column(name = "id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/network/dao/PhysicalNetworkServiceProviderVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/dao/PhysicalNetworkServiceProviderVO.java b/server/src/com/cloud/network/dao/PhysicalNetworkServiceProviderVO.java
index 12b08af..370e498 100644
--- a/server/src/com/cloud/network/dao/PhysicalNetworkServiceProviderVO.java
+++ b/server/src/com/cloud/network/dao/PhysicalNetworkServiceProviderVO.java
@@ -33,10 +33,11 @@ import javax.persistence.Table;
 import com.cloud.network.Network.Service;
 import com.cloud.network.PhysicalNetworkServiceProvider;
 import com.cloud.utils.db.GenericDao;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name = "physical_network_service_providers")
-public class PhysicalNetworkServiceProviderVO implements PhysicalNetworkServiceProvider {
+public class PhysicalNetworkServiceProviderVO implements PhysicalNetworkServiceProvider, InternalIdentity {
     @Id
     @GeneratedValue(strategy = GenerationType.IDENTITY)
     @Column(name = "id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/network/dao/PhysicalNetworkTagVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/dao/PhysicalNetworkTagVO.java b/server/src/com/cloud/network/dao/PhysicalNetworkTagVO.java
index bca1a45..787c049 100644
--- a/server/src/com/cloud/network/dao/PhysicalNetworkTagVO.java
+++ b/server/src/com/cloud/network/dao/PhysicalNetworkTagVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.network.dao;
 
+import org.apache.cloudstack.api.InternalIdentity;
+
 import javax.persistence.Column;
 import javax.persistence.Entity;
 import javax.persistence.GeneratedValue;
@@ -28,7 +30,7 @@ import javax.persistence.Table;
  */
 @Entity
 @Table(name = "physical_network_tags")
-public class PhysicalNetworkTagVO {
+public class PhysicalNetworkTagVO implements InternalIdentity {
     @Id
     @GeneratedValue(strategy = GenerationType.IDENTITY)
     @Column(name = "id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/network/dao/PhysicalNetworkTrafficTypeVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/dao/PhysicalNetworkTrafficTypeVO.java b/server/src/com/cloud/network/dao/PhysicalNetworkTrafficTypeVO.java
index 0561ae8..ee20e86 100644
--- a/server/src/com/cloud/network/dao/PhysicalNetworkTrafficTypeVO.java
+++ b/server/src/com/cloud/network/dao/PhysicalNetworkTrafficTypeVO.java
@@ -29,10 +29,11 @@ import javax.persistence.Table;
 
 import com.cloud.network.Networks.TrafficType;
 import com.cloud.network.PhysicalNetworkTrafficType;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name = "physical_network_traffic_types")
-public class PhysicalNetworkTrafficTypeVO implements PhysicalNetworkTrafficType {
+public class PhysicalNetworkTrafficTypeVO implements PhysicalNetworkTrafficType, InternalIdentity {
     @Id
     @GeneratedValue(strategy = GenerationType.IDENTITY)
     @Column(name = "id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/network/element/VirtualRouterProviderVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/element/VirtualRouterProviderVO.java b/server/src/com/cloud/network/element/VirtualRouterProviderVO.java
index c491fd2..1548e1a 100644
--- a/server/src/com/cloud/network/element/VirtualRouterProviderVO.java
+++ b/server/src/com/cloud/network/element/VirtualRouterProviderVO.java
@@ -30,10 +30,11 @@ import javax.persistence.Table;
 
 import com.cloud.network.VirtualRouterProvider;
 import com.cloud.utils.db.GenericDao;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name=("virtual_router_providers"))
-public class VirtualRouterProviderVO implements VirtualRouterProvider {
+public class VirtualRouterProviderVO implements VirtualRouterProvider, InternalIdentity {
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/network/rules/FirewallRuleVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/rules/FirewallRuleVO.java b/server/src/com/cloud/network/rules/FirewallRuleVO.java
index 4ea48b1..7cdd992 100644
--- a/server/src/com/cloud/network/rules/FirewallRuleVO.java
+++ b/server/src/com/cloud/network/rules/FirewallRuleVO.java
@@ -39,12 +39,13 @@ import com.cloud.network.dao.FirewallRulesCidrsDaoImpl;
 import com.cloud.utils.component.ComponentLocator;
 import com.cloud.utils.db.GenericDao;
 import com.cloud.utils.net.NetUtils;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="firewall_rules")
 @Inheritance(strategy=InheritanceType.JOINED)
 @DiscriminatorColumn(name="purpose", discriminatorType=DiscriminatorType.STRING, length=32)
-public class FirewallRuleVO implements FirewallRule, Identity {
+public class FirewallRuleVO implements FirewallRule, Identity, InternalIdentity {
     protected final FirewallRulesCidrsDaoImpl _firewallRulesCidrsDao = ComponentLocator.inject(FirewallRulesCidrsDaoImpl.class);
 
     @Id

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/network/vpc/PrivateIpVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/vpc/PrivateIpVO.java b/server/src/com/cloud/network/vpc/PrivateIpVO.java
index f20150d..e6616ae 100644
--- a/server/src/com/cloud/network/vpc/PrivateIpVO.java
+++ b/server/src/com/cloud/network/vpc/PrivateIpVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.network.vpc;
 
+import org.apache.cloudstack.api.InternalIdentity;
+
 import java.util.Date;
 
 import javax.persistence.Column;
@@ -30,7 +32,7 @@ import javax.persistence.TemporalType;
 
 @Entity
 @Table(name="private_ip_address")
-public class PrivateIpVO{
+public class PrivateIpVO implements InternalIdentity {
     
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/server/src/com/cloud/network/vpc/StaticRouteVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/vpc/StaticRouteVO.java b/server/src/com/cloud/network/vpc/StaticRouteVO.java
index 41c3570..99294e1 100644
--- a/server/src/com/cloud/network/vpc/StaticRouteVO.java
+++ b/server/src/com/cloud/network/vpc/StaticRouteVO.java
@@ -30,11 +30,12 @@ import javax.persistence.Table;
 
 import org.apache.cloudstack.api.Identity;
 import com.cloud.utils.db.GenericDao;
+import org.apache.cloudstack.api.InternalIdentity;
 
 
 @Entity
 @Table(name="static_routes")
-public class StaticRouteVO implements StaticRoute{
+public class StaticRouteVO implements StaticRoute, InternalIdentity {
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")