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

[3/4] git commit: Enforce InternalIdentity interface on all VO classes that impls long getId()

Enforce InternalIdentity interface on all VO classes that impls long getId()

Signed-off-by: Rohit Yadav <bh...@apache.org>


Project: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/commit/057ac12d
Tree: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/tree/057ac12d
Diff: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/diff/057ac12d

Branch: refs/heads/api_refactoring
Commit: 057ac12d236778e986d001c8e102bdc81da88a20
Parents: b75d924
Author: Rohit Yadav <bh...@apache.org>
Authored: Wed Dec 26 15:08:38 2012 -0800
Committer: Rohit Yadav <bh...@apache.org>
Committed: Wed Dec 26 15:09:44 2012 -0800

----------------------------------------------------------------------
 .../cloud/agent/api/storage/DownloadCommand.java   |    3 +-
 .../com/cloud/agent/api/storage/UploadCommand.java |    3 +-
 api/src/com/cloud/agent/api/to/FirewallRuleTO.java |    3 +-
 api/src/com/cloud/agent/api/to/NetworkACLTO.java   |    3 +-
 api/src/com/cloud/agent/api/to/TemplateTO.java     |    3 +-
 api/src/com/cloud/agent/api/to/VolumeTO.java       |    3 +-
 api/src/com/cloud/async/AsyncJob.java              |    3 +-
 api/src/com/cloud/configuration/ResourceCount.java |    6 ++-
 api/src/com/cloud/configuration/ResourceLimit.java |    6 ++-
 api/src/com/cloud/dc/Pod.java                      |    3 +-
 api/src/com/cloud/network/NetworkProfile.java      |    3 +-
 .../network/PhysicalNetworkServiceProvider.java    |    3 +-
 .../cloud/network/PhysicalNetworkTrafficType.java  |    3 +-
 .../com/cloud/network/VirtualRouterProvider.java   |    4 +-
 .../com/cloud/network/lb/LoadBalancingRule.java    |    3 +-
 .../com/cloud/network/vpc/StaticRouteProfile.java  |    4 +-
 api/src/com/cloud/network/vpc/VpcOffering.java     |    4 +-
 api/src/com/cloud/offering/NetworkOffering.java    |    3 +-
 api/src/com/cloud/storage/Swift.java               |    3 +-
 api/src/com/cloud/storage/Upload.java              |    4 +-
 api/src/com/cloud/user/UserAccount.java            |    6 ++-
 api/src/com/cloud/vm/NicProfile.java               |    3 +-
 core/src/com/cloud/alert/AlertVO.java              |    3 +-
 core/src/com/cloud/async/SyncQueueItemVO.java      |    6 ++-
 core/src/com/cloud/async/SyncQueueVO.java          |    6 ++-
 core/src/com/cloud/capacity/CapacityVO.java        |    3 +-
 core/src/com/cloud/certificate/CertificateVO.java  |    6 ++-
 .../com/cloud/configuration/ResourceCountVO.java   |    6 ++-
 .../com/cloud/configuration/ResourceLimitVO.java   |    6 ++-
 core/src/com/cloud/event/EventVO.java              |    3 +-
 core/src/com/cloud/event/UsageEvent.java           |    4 +-
 core/src/com/cloud/event/UsageEventVO.java         |    3 +-
 core/src/com/cloud/host/DetailVO.java              |    4 +-
 core/src/com/cloud/host/HostTagVO.java             |    4 +-
 core/src/com/cloud/host/HostVO.java                |    3 +-
 .../cloud/hypervisor/HypervisorCapabilitiesVO.java |    3 +-
 core/src/com/cloud/network/VpnUserVO.java          |    3 +-
 .../network/security/SecurityGroupRuleVO.java      |    3 +-
 .../network/security/SecurityGroupRulesVO.java     |    3 +-
 .../network/security/SecurityGroupVMMapVO.java     |    5 +-
 .../cloud/network/security/SecurityGroupVO.java    |    3 +-
 .../network/security/SecurityGroupWorkVO.java      |    5 +-
 .../com/cloud/network/security/VmRulesetLogVO.java |    5 +-
 core/src/com/cloud/storage/DiskOfferingVO.java     |    3 +-
 core/src/com/cloud/storage/GuestOSCategoryVO.java  |    3 +-
 core/src/com/cloud/storage/GuestOSVO.java          |    3 +-
 core/src/com/cloud/storage/LaunchPermissionVO.java |    6 ++-
 core/src/com/cloud/storage/S3VO.java               |    3 +-
 core/src/com/cloud/storage/SnapshotPolicyVO.java   |    3 +-
 core/src/com/cloud/storage/SnapshotScheduleVO.java |    3 +-
 core/src/com/cloud/storage/SnapshotVO.java         |    3 +-
 .../src/com/cloud/storage/StoragePoolDetailVO.java |    4 +-
 core/src/com/cloud/storage/StoragePoolHostVO.java  |    5 +-
 core/src/com/cloud/storage/StoragePoolVO.java      |    3 +-
 core/src/com/cloud/storage/StoragePoolWorkVO.java  |    6 ++-
 core/src/com/cloud/storage/SwiftVO.java            |    3 +-
 core/src/com/cloud/storage/UploadVO.java           |    3 +-
 core/src/com/cloud/storage/VMTemplateDetailVO.java |    4 +-
 core/src/com/cloud/storage/VMTemplateHostVO.java   |    3 +-
 core/src/com/cloud/storage/VMTemplateS3VO.java     |    3 +-
 .../com/cloud/storage/VMTemplateStoragePoolVO.java |    3 +-
 core/src/com/cloud/storage/VMTemplateSwiftVO.java  |    3 +-
 core/src/com/cloud/storage/VMTemplateVO.java       |    3 +-
 core/src/com/cloud/storage/VMTemplateZoneVO.java   |    5 +-
 core/src/com/cloud/storage/VolumeHostVO.java       |    3 +-
 core/src/com/cloud/storage/VolumeVO.java           |    3 +-
 core/src/com/cloud/user/AccountVO.java             |    3 +-
 core/src/com/cloud/user/SSHKeyPairVO.java          |    4 +-
 core/src/com/cloud/user/UserAccountVO.java         |    5 +-
 core/src/com/cloud/user/UserStatisticsVO.java      |    6 ++-
 core/src/com/cloud/user/UserVO.java                |    3 +-
 core/src/com/cloud/vm/InstanceGroupVMMapVO.java    |    6 ++-
 core/src/com/cloud/vm/InstanceGroupVO.java         |    3 +-
 core/src/com/cloud/vm/UserVmDetailVO.java          |    4 +-
 core/src/com/cloud/vm/VMInstanceVO.java            |    7 ++-
 .../netapp/src/com/cloud/netapp/LunVO.java         |    6 ++-
 .../src/com/cloud/netapp/NetappVolumeVO.java       |    6 ++-
 .../netapp/src/com/cloud/netapp/PoolVO.java        |    6 ++-
 .../com/cloud/simulator/MockConfigurationVO.java   |    4 +-
 .../src/com/cloud/simulator/MockHostVO.java        |    4 +-
 .../src/com/cloud/simulator/MockSecStorageVO.java  |    4 +-
 .../com/cloud/simulator/MockSecurityRulesVO.java   |    4 +-
 .../src/com/cloud/simulator/MockStoragePoolVO.java |    3 +-
 .../src/com/cloud/simulator/MockVMVO.java          |    3 +-
 .../src/com/cloud/simulator/MockVolumeVO.java      |    3 +-
 .../com/cloud/network/CiscoNexusVSMDeviceVO.java   |    3 +-
 .../src/com/cloud/network/ElasticLbVmMapVO.java    |    5 +-
 .../src/com/cloud/network/NetScalerPodVO.java      |    4 +-
 .../com/cloud/network/NiciraNvpNicMappingVO.java   |    4 +-
 .../cloud/network/NiciraNvpRouterMappingVO.java    |    4 +-
 .../network/ovs/dao/OvsTunnelInterfaceVO.java      |    4 +-
 .../cloud/network/ovs/dao/OvsTunnelNetworkVO.java  |    4 +-
 .../com/cloud/api/query/vo/DomainRouterJoinVO.java |    3 +-
 server/src/com/cloud/api/query/vo/EventJoinVO.java |    3 +-
 server/src/com/cloud/api/query/vo/HostJoinVO.java  |    3 +-
 .../cloud/api/query/vo/InstanceGroupJoinVO.java    |    3 +-
 .../cloud/api/query/vo/ProjectAccountJoinVO.java   |    3 +-
 .../api/query/vo/ProjectInvitationJoinVO.java      |    3 +-
 .../src/com/cloud/api/query/vo/ProjectJoinVO.java  |    3 +-
 .../com/cloud/api/query/vo/ResourceTagJoinVO.java  |    3 +-
 .../cloud/api/query/vo/SecurityGroupJoinVO.java    |    3 +-
 .../com/cloud/api/query/vo/UserAccountJoinVO.java  |    3 +-
 .../src/com/cloud/api/query/vo/UserVmJoinVO.java   |    3 +-
 .../src/com/cloud/api/query/vo/VolumeJoinVO.java   |    3 +-
 server/src/com/cloud/cluster/CheckPointVO.java     |    3 +-
 .../cloud/cluster/ManagementServerHostPeerVO.java  |    3 +-
 .../com/cloud/cluster/ManagementServerHostVO.java  |    3 +-
 .../cloud/cluster/agentlb/HostTransferMapVO.java   |    3 +-
 server/src/com/cloud/dc/ClusterDetailsVO.java      |    4 +-
 server/src/com/cloud/dc/ClusterVO.java             |    3 +-
 server/src/com/cloud/dc/DataCenterIpAddressVO.java |    6 ++-
 .../cloud/dc/DataCenterLinkLocalIpAddressVO.java   |    6 ++-
 server/src/com/cloud/dc/DataCenterVO.java          |    3 +-
 server/src/com/cloud/dc/DataCenterVnetVO.java      |    4 +-
 server/src/com/cloud/dc/DcDetailVO.java            |    4 +-
 server/src/com/cloud/dc/HostPodVO.java             |    3 +-
 server/src/com/cloud/dc/PodVlanMapVO.java          |    4 +-
 server/src/com/cloud/dc/PodVlanVO.java             |    6 ++-
 .../com/cloud/dc/StorageNetworkIpAddressVO.java    |    6 ++-
 .../src/com/cloud/dc/StorageNetworkIpRangeVO.java  |    4 +-
 server/src/com/cloud/dc/VlanVO.java                |    3 +-
 server/src/com/cloud/domain/DomainVO.java          |    3 +-
 server/src/com/cloud/ha/HaWorkVO.java              |    5 +-
 server/src/com/cloud/keystore/KeystoreVO.java      |    6 ++-
 server/src/com/cloud/maint/AgentUpgradeVO.java     |    4 +-
 .../src/com/cloud/migration/DiskOffering20VO.java  |    5 +-
 .../src/com/cloud/migration/DiskOffering21VO.java  |    3 +-
 .../com/cloud/migration/ServiceOffering20VO.java   |    5 +-
 .../cloud/network/ExternalFirewallDeviceVO.java    |    4 +-
 .../com/cloud/network/FirewallRulesCidrsVO.java    |    6 ++-
 server/src/com/cloud/network/IPAddressVO.java      |    3 +-
 .../cloud/network/InlineLoadBalancerNicMapVO.java  |    4 +-
 .../com/cloud/network/LBStickinessPolicyVO.java    |    3 +-
 .../src/com/cloud/network/LoadBalancerVMMapVO.java |    4 +-
 .../cloud/network/NetworkExternalFirewallVO.java   |    3 +-
 .../network/NetworkExternalLoadBalancerVO.java     |    3 +-
 .../src/com/cloud/network/NetworkRuleConfigVO.java |    5 +-
 .../src/com/cloud/network/NetworkServiceMapVO.java |    3 +-
 server/src/com/cloud/network/NetworkVO.java        |    3 +-
 .../src/com/cloud/network/PhysicalNetworkVO.java   |    3 +-
 server/src/com/cloud/network/PortProfileVO.java    |    3 +-
 server/src/com/cloud/network/RouterNetworkVO.java  |    3 +-
 .../cloud/network/Site2SiteCustomerGatewayVO.java  |    3 +-
 .../cloud/network/Site2SiteVpnConnectionVO.java    |    3 +-
 .../com/cloud/network/Site2SiteVpnGatewayVO.java   |    3 +-
 .../network/as/AutoScalePolicyConditionMapVO.java  |   36 ++++++++-------
 .../com/cloud/network/as/AutoScalePolicyVO.java    |   35 +++++++-------
 .../network/as/AutoScaleVmGroupPolicyMapVO.java    |   36 ++++++++-------
 .../com/cloud/network/as/AutoScaleVmGroupVO.java   |   35 +++++++-------
 .../com/cloud/network/as/AutoScaleVmProfileVO.java |    3 +-
 server/src/com/cloud/network/as/ConditionVO.java   |    3 +-
 server/src/com/cloud/network/as/CounterVO.java     |    3 +-
 server/src/com/cloud/network/dao/NetworkOpVO.java  |    4 +-
 .../dao/PhysicalNetworkIsolationMethodVO.java      |    4 +-
 .../dao/PhysicalNetworkServiceProviderVO.java      |    3 +-
 .../cloud/network/dao/PhysicalNetworkTagVO.java    |    4 +-
 .../network/dao/PhysicalNetworkTrafficTypeVO.java  |    3 +-
 .../network/element/VirtualRouterProviderVO.java   |    3 +-
 .../com/cloud/network/rules/FirewallRuleVO.java    |    3 +-
 server/src/com/cloud/network/vpc/PrivateIpVO.java  |    4 +-
 .../src/com/cloud/network/vpc/StaticRouteVO.java   |    3 +-
 server/src/com/cloud/network/vpc/VpcGatewayVO.java |    3 +-
 .../cloud/network/vpc/VpcOfferingServiceMapVO.java |    3 +-
 .../src/com/cloud/network/vpc/VpcOfferingVO.java   |    3 +-
 server/src/com/cloud/network/vpc/VpcVO.java        |    3 +-
 .../offerings/NetworkOfferingServiceMapVO.java     |    3 +-
 .../src/com/cloud/offerings/NetworkOfferingVO.java |    3 +-
 .../src/com/cloud/projects/ProjectAccountVO.java   |    3 +-
 .../com/cloud/projects/ProjectInvitationVO.java    |    3 +-
 server/src/com/cloud/projects/ProjectVO.java       |    3 +-
 .../src/com/cloud/secstorage/CommandExecLogVO.java |    3 +-
 server/src/com/cloud/tags/ResourceTagVO.java       |    3 +-
 server/src/com/cloud/upgrade/dao/VersionVO.java    |    4 +-
 .../cloud/usage/ExternalPublicIpStatisticsVO.java  |    6 ++-
 server/src/com/cloud/usage/UsageIPAddressVO.java   |    4 +-
 server/src/com/cloud/usage/UsageJobVO.java         |    6 ++-
 .../com/cloud/usage/UsageLoadBalancerPolicyVO.java |    4 +-
 .../com/cloud/usage/UsagePortForwardingRuleVO.java |    4 +-
 server/src/com/cloud/usage/UsageStorageVO.java     |    4 +-
 server/src/com/cloud/usage/UsageVO.java            |    6 ++-
 server/src/com/cloud/usage/UsageVolumeVO.java      |    4 +-
 server/src/com/cloud/user/AccountDetailVO.java     |    3 +-
 server/src/com/cloud/vm/NicVO.java                 |    3 +-
 183 files changed, 532 insertions(+), 284 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/api/src/com/cloud/agent/api/storage/DownloadCommand.java
----------------------------------------------------------------------
diff --git a/api/src/com/cloud/agent/api/storage/DownloadCommand.java b/api/src/com/cloud/agent/api/storage/DownloadCommand.java
index 9245411..efb5ecb 100644
--- a/api/src/com/cloud/agent/api/storage/DownloadCommand.java
+++ b/api/src/com/cloud/agent/api/storage/DownloadCommand.java
@@ -21,9 +21,10 @@ import java.net.URI;
 import com.cloud.storage.Volume;
 import com.cloud.storage.Storage.ImageFormat;
 import com.cloud.template.VirtualMachineTemplate;
+import org.apache.cloudstack.api.InternalIdentity;
 
 
-public class DownloadCommand extends AbstractDownloadCommand {
+public class DownloadCommand extends AbstractDownloadCommand implements InternalIdentity {
 	public static class PasswordAuth {
 		String userName;
 		String password;

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/api/src/com/cloud/agent/api/storage/UploadCommand.java
----------------------------------------------------------------------
diff --git a/api/src/com/cloud/agent/api/storage/UploadCommand.java b/api/src/com/cloud/agent/api/storage/UploadCommand.java
index 02ca5d8..2a7c60a 100644
--- a/api/src/com/cloud/agent/api/storage/UploadCommand.java
+++ b/api/src/com/cloud/agent/api/storage/UploadCommand.java
@@ -20,9 +20,10 @@ import com.cloud.agent.api.storage.DownloadCommand.PasswordAuth;
 import com.cloud.agent.api.to.TemplateTO;
 import com.cloud.storage.Upload.Type;
 import com.cloud.template.VirtualMachineTemplate;
+import org.apache.cloudstack.api.InternalIdentity;
 
 
-public class UploadCommand extends AbstractUploadCommand {
+public class UploadCommand extends AbstractUploadCommand implements InternalIdentity {
 
 	private TemplateTO template;
 	private String url;

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/api/src/com/cloud/agent/api/to/FirewallRuleTO.java
----------------------------------------------------------------------
diff --git a/api/src/com/cloud/agent/api/to/FirewallRuleTO.java b/api/src/com/cloud/agent/api/to/FirewallRuleTO.java
index a361a6d..1f963ec 100644
--- a/api/src/com/cloud/agent/api/to/FirewallRuleTO.java
+++ b/api/src/com/cloud/agent/api/to/FirewallRuleTO.java
@@ -22,6 +22,7 @@ import java.util.List;
 import com.cloud.network.rules.FirewallRule;
 import com.cloud.network.rules.FirewallRule.State;
 import com.cloud.utils.net.NetUtils;
+import org.apache.cloudstack.api.InternalIdentity;
 
 /**
  * FirewallRuleTO transfers a port range for an ip to be opened.
@@ -37,7 +38,7 @@ import com.cloud.utils.net.NetUtils;
  *   - protocol: protocol to open for.  Usually tcp and udp.
  *
  */
-public class FirewallRuleTO {
+public class FirewallRuleTO implements InternalIdentity {
     long id;
     String srcVlanTag;
     String srcIp;

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/api/src/com/cloud/agent/api/to/NetworkACLTO.java
----------------------------------------------------------------------
diff --git a/api/src/com/cloud/agent/api/to/NetworkACLTO.java b/api/src/com/cloud/agent/api/to/NetworkACLTO.java
index 9930b75..9b1a629 100644
--- a/api/src/com/cloud/agent/api/to/NetworkACLTO.java
+++ b/api/src/com/cloud/agent/api/to/NetworkACLTO.java
@@ -23,9 +23,10 @@ import java.util.List;
 import com.cloud.network.rules.FirewallRule;
 import com.cloud.network.rules.FirewallRule.TrafficType;
 import com.cloud.utils.net.NetUtils;
+import org.apache.cloudstack.api.InternalIdentity;
 
 
-public class NetworkACLTO {
+public class NetworkACLTO implements InternalIdentity {
     long id;
     String vlanTag;
     String protocol;

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/api/src/com/cloud/agent/api/to/TemplateTO.java
----------------------------------------------------------------------
diff --git a/api/src/com/cloud/agent/api/to/TemplateTO.java b/api/src/com/cloud/agent/api/to/TemplateTO.java
index 7598398..d77b805 100644
--- a/api/src/com/cloud/agent/api/to/TemplateTO.java
+++ b/api/src/com/cloud/agent/api/to/TemplateTO.java
@@ -18,8 +18,9 @@ package com.cloud.agent.api.to;
 
 import com.cloud.storage.Storage.ImageFormat;
 import com.cloud.template.VirtualMachineTemplate;
+import org.apache.cloudstack.api.InternalIdentity;
 
-public class TemplateTO {
+public class TemplateTO implements InternalIdentity {
     private long id;
     private String uniqueName;
     private ImageFormat format;

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/api/src/com/cloud/agent/api/to/VolumeTO.java
----------------------------------------------------------------------
diff --git a/api/src/com/cloud/agent/api/to/VolumeTO.java b/api/src/com/cloud/agent/api/to/VolumeTO.java
index ca0acb5..ff739c5 100644
--- a/api/src/com/cloud/agent/api/to/VolumeTO.java
+++ b/api/src/com/cloud/agent/api/to/VolumeTO.java
@@ -19,8 +19,9 @@ package com.cloud.agent.api.to;
 import com.cloud.storage.Storage.StoragePoolType;
 import com.cloud.storage.StoragePool;
 import com.cloud.storage.Volume;
+import org.apache.cloudstack.api.InternalIdentity;
 
-public class VolumeTO {
+public class VolumeTO implements InternalIdentity {
     protected VolumeTO() {
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/api/src/com/cloud/async/AsyncJob.java
----------------------------------------------------------------------
diff --git a/api/src/com/cloud/async/AsyncJob.java b/api/src/com/cloud/async/AsyncJob.java
index bea3e13..2fc70a6 100644
--- a/api/src/com/cloud/async/AsyncJob.java
+++ b/api/src/com/cloud/async/AsyncJob.java
@@ -19,8 +19,9 @@ package com.cloud.async;
 import java.util.Date;
 
 import org.apache.cloudstack.api.Identity;
+import org.apache.cloudstack.api.InternalIdentity;
 
-public interface AsyncJob extends Identity {
+public interface AsyncJob extends Identity, InternalIdentity {
     public enum Type {
         None,
         VirtualMachine,

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/api/src/com/cloud/configuration/ResourceCount.java
----------------------------------------------------------------------
diff --git a/api/src/com/cloud/configuration/ResourceCount.java b/api/src/com/cloud/configuration/ResourceCount.java
index d776a72..16c0c2e 100644
--- a/api/src/com/cloud/configuration/ResourceCount.java
+++ b/api/src/com/cloud/configuration/ResourceCount.java
@@ -16,9 +16,11 @@
 // under the License.
 package com.cloud.configuration;
 
-public interface ResourceCount extends Resource {
+import org.apache.cloudstack.api.InternalIdentity;
 
-    public Long getId();
+public interface ResourceCount extends Resource, InternalIdentity {
+
+    public long getId();
 
     public long getCount();
 

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/api/src/com/cloud/configuration/ResourceLimit.java
----------------------------------------------------------------------
diff --git a/api/src/com/cloud/configuration/ResourceLimit.java b/api/src/com/cloud/configuration/ResourceLimit.java
index df47d09..d2d029a 100644
--- a/api/src/com/cloud/configuration/ResourceLimit.java
+++ b/api/src/com/cloud/configuration/ResourceLimit.java
@@ -16,9 +16,11 @@
 // under the License.
 package com.cloud.configuration;
 
-public interface ResourceLimit extends Resource {
+import org.apache.cloudstack.api.InternalIdentity;
 
-    public Long getId();
+public interface ResourceLimit extends Resource, InternalIdentity {
+
+    public long getId();
 
     public Long getMax();
 

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/api/src/com/cloud/dc/Pod.java
----------------------------------------------------------------------
diff --git a/api/src/com/cloud/dc/Pod.java b/api/src/com/cloud/dc/Pod.java
index cce493d..0356f0f 100644
--- a/api/src/com/cloud/dc/Pod.java
+++ b/api/src/com/cloud/dc/Pod.java
@@ -17,12 +17,13 @@
 package com.cloud.dc;
 
 import com.cloud.org.Grouping;
+import org.apache.cloudstack.api.InternalIdentity;
 
 /**
  * Represents one pod in the cloud stack.
  *
  */
-public interface Pod extends Grouping {
+public interface Pod extends Grouping, InternalIdentity {
     /**
      * @return unique id mapped to the pod.
      */

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/api/src/com/cloud/network/NetworkProfile.java
----------------------------------------------------------------------
diff --git a/api/src/com/cloud/network/NetworkProfile.java b/api/src/com/cloud/network/NetworkProfile.java
index b2707cf..3872a15 100644
--- a/api/src/com/cloud/network/NetworkProfile.java
+++ b/api/src/com/cloud/network/NetworkProfile.java
@@ -21,8 +21,9 @@ import java.net.URI;
 import com.cloud.network.Networks.BroadcastDomainType;
 import com.cloud.network.Networks.Mode;
 import com.cloud.network.Networks.TrafficType;
+import org.apache.cloudstack.api.InternalIdentity;
 
-public class NetworkProfile implements Network {
+public class NetworkProfile implements Network, InternalIdentity {
     private long id;
     private String uuid;
     private long dataCenterId;

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/api/src/com/cloud/network/PhysicalNetworkServiceProvider.java
----------------------------------------------------------------------
diff --git a/api/src/com/cloud/network/PhysicalNetworkServiceProvider.java b/api/src/com/cloud/network/PhysicalNetworkServiceProvider.java
index 468cb90..0a433dc 100644
--- a/api/src/com/cloud/network/PhysicalNetworkServiceProvider.java
+++ b/api/src/com/cloud/network/PhysicalNetworkServiceProvider.java
@@ -19,11 +19,12 @@ package com.cloud.network;
 import java.util.List;
 
 import com.cloud.network.Network.Service;
+import org.apache.cloudstack.api.InternalIdentity;
 
 /**
  *
  */
-public interface PhysicalNetworkServiceProvider {
+public interface PhysicalNetworkServiceProvider extends InternalIdentity {
 
     public enum State {
         Disabled,

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/api/src/com/cloud/network/PhysicalNetworkTrafficType.java
----------------------------------------------------------------------
diff --git a/api/src/com/cloud/network/PhysicalNetworkTrafficType.java b/api/src/com/cloud/network/PhysicalNetworkTrafficType.java
index 44c4fbf..393b6a4 100644
--- a/api/src/com/cloud/network/PhysicalNetworkTrafficType.java
+++ b/api/src/com/cloud/network/PhysicalNetworkTrafficType.java
@@ -17,11 +17,12 @@
 package com.cloud.network;
 
 import com.cloud.network.Networks.TrafficType;
+import org.apache.cloudstack.api.InternalIdentity;
 
 /**
  *
  */
-public interface PhysicalNetworkTrafficType {
+public interface PhysicalNetworkTrafficType extends InternalIdentity {
 
     long getId();
 

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/api/src/com/cloud/network/VirtualRouterProvider.java
----------------------------------------------------------------------
diff --git a/api/src/com/cloud/network/VirtualRouterProvider.java b/api/src/com/cloud/network/VirtualRouterProvider.java
index 9992e3c..034652d 100644
--- a/api/src/com/cloud/network/VirtualRouterProvider.java
+++ b/api/src/com/cloud/network/VirtualRouterProvider.java
@@ -16,7 +16,9 @@
 // under the License.
 package com.cloud.network;
 
-public interface VirtualRouterProvider {
+import org.apache.cloudstack.api.InternalIdentity;
+
+public interface VirtualRouterProvider extends InternalIdentity {
     public enum VirtualRouterProviderType {
         VirtualRouter,
         ElasticLoadBalancerVm,

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/api/src/com/cloud/network/lb/LoadBalancingRule.java
----------------------------------------------------------------------
diff --git a/api/src/com/cloud/network/lb/LoadBalancingRule.java b/api/src/com/cloud/network/lb/LoadBalancingRule.java
index fb1d988..3f37bdb 100644
--- a/api/src/com/cloud/network/lb/LoadBalancingRule.java
+++ b/api/src/com/cloud/network/lb/LoadBalancingRule.java
@@ -26,8 +26,9 @@ import com.cloud.network.as.Counter;
 import com.cloud.network.rules.FirewallRule;
 import com.cloud.network.rules.LoadBalancer;
 import com.cloud.utils.Pair;
+import org.apache.cloudstack.api.InternalIdentity;
 
-public class LoadBalancingRule implements FirewallRule, LoadBalancer {
+public class LoadBalancingRule implements FirewallRule, LoadBalancer, InternalIdentity {
     private LoadBalancer lb;
     private List<LbDestination> destinations;
     private List<LbStickinessPolicy> stickinessPolicies;

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/api/src/com/cloud/network/vpc/StaticRouteProfile.java
----------------------------------------------------------------------
diff --git a/api/src/com/cloud/network/vpc/StaticRouteProfile.java b/api/src/com/cloud/network/vpc/StaticRouteProfile.java
index f7cd17c..9ef3c66 100644
--- a/api/src/com/cloud/network/vpc/StaticRouteProfile.java
+++ b/api/src/com/cloud/network/vpc/StaticRouteProfile.java
@@ -16,7 +16,9 @@
 // under the License.
 package com.cloud.network.vpc;
 
-public class StaticRouteProfile implements StaticRoute{
+import org.apache.cloudstack.api.InternalIdentity;
+
+public class StaticRouteProfile implements StaticRoute, InternalIdentity {
     private long id;
     private String uuid;
     private String targetCidr;

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/api/src/com/cloud/network/vpc/VpcOffering.java
----------------------------------------------------------------------
diff --git a/api/src/com/cloud/network/vpc/VpcOffering.java b/api/src/com/cloud/network/vpc/VpcOffering.java
index 2c2b6f5..721b943 100644
--- a/api/src/com/cloud/network/vpc/VpcOffering.java
+++ b/api/src/com/cloud/network/vpc/VpcOffering.java
@@ -16,7 +16,9 @@
 // under the License.
 package com.cloud.network.vpc;
 
-public interface VpcOffering {
+import org.apache.cloudstack.api.InternalIdentity;
+
+public interface VpcOffering extends InternalIdentity {
     public enum State {
         Disabled,
         Enabled

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/api/src/com/cloud/offering/NetworkOffering.java
----------------------------------------------------------------------
diff --git a/api/src/com/cloud/offering/NetworkOffering.java b/api/src/com/cloud/offering/NetworkOffering.java
index 8b4e7e2..4b8ffd3 100644
--- a/api/src/com/cloud/offering/NetworkOffering.java
+++ b/api/src/com/cloud/offering/NetworkOffering.java
@@ -18,12 +18,13 @@ package com.cloud.offering;
 
 import com.cloud.network.Network.GuestType;
 import com.cloud.network.Networks.TrafficType;
+import org.apache.cloudstack.api.InternalIdentity;
 
 /**
  * Describes network offering
  *
  */
-public interface NetworkOffering {
+public interface NetworkOffering extends InternalIdentity {
 
     public enum Availability {
         Required,

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/api/src/com/cloud/storage/Swift.java
----------------------------------------------------------------------
diff --git a/api/src/com/cloud/storage/Swift.java b/api/src/com/cloud/storage/Swift.java
index 5af1999..9cd3a34 100644
--- a/api/src/com/cloud/storage/Swift.java
+++ b/api/src/com/cloud/storage/Swift.java
@@ -17,8 +17,9 @@
 package com.cloud.storage;
 
 import com.cloud.agent.api.to.SwiftTO;
+import org.apache.cloudstack.api.InternalIdentity;
 
-public interface Swift {
+public interface Swift extends InternalIdentity {
     public long getId();
 
     public String getUuid();

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/api/src/com/cloud/storage/Upload.java
----------------------------------------------------------------------
diff --git a/api/src/com/cloud/storage/Upload.java b/api/src/com/cloud/storage/Upload.java
index d67c15f..c1abc4c 100755
--- a/api/src/com/cloud/storage/Upload.java
+++ b/api/src/com/cloud/storage/Upload.java
@@ -16,9 +16,11 @@
 // under the License.
 package com.cloud.storage;
 
+import org.apache.cloudstack.api.InternalIdentity;
+
 import java.util.Date;
 
-public interface Upload {
+public interface Upload extends InternalIdentity {
 
     public static enum Status {
         UNKNOWN, ABANDONED, UPLOADED, NOT_UPLOADED, UPLOAD_ERROR, UPLOAD_IN_PROGRESS, NOT_COPIED, COPY_IN_PROGRESS, COPY_ERROR, COPY_COMPLETE, DOWNLOAD_URL_CREATED, DOWNLOAD_URL_NOT_CREATED, ERROR

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/api/src/com/cloud/user/UserAccount.java
----------------------------------------------------------------------
diff --git a/api/src/com/cloud/user/UserAccount.java b/api/src/com/cloud/user/UserAccount.java
index 2a6bd4f..c09b5c0 100644
--- a/api/src/com/cloud/user/UserAccount.java
+++ b/api/src/com/cloud/user/UserAccount.java
@@ -16,10 +16,12 @@
 // under the License.
 package com.cloud.user;
 
+import org.apache.cloudstack.api.InternalIdentity;
+
 import java.util.Date;
 
-public interface UserAccount {
-    Long getId();
+public interface UserAccount extends InternalIdentity {
+    long getId();
 
     String getUsername();
 

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/api/src/com/cloud/vm/NicProfile.java
----------------------------------------------------------------------
diff --git a/api/src/com/cloud/vm/NicProfile.java b/api/src/com/cloud/vm/NicProfile.java
index bdd553b..32e3f21 100644
--- a/api/src/com/cloud/vm/NicProfile.java
+++ b/api/src/com/cloud/vm/NicProfile.java
@@ -24,8 +24,9 @@ import com.cloud.network.Networks.BroadcastDomainType;
 import com.cloud.network.Networks.Mode;
 import com.cloud.network.Networks.TrafficType;
 import com.cloud.vm.Nic.ReservationStrategy;
+import org.apache.cloudstack.api.InternalIdentity;
 
-public class NicProfile {
+public class NicProfile implements InternalIdentity {
     long id;
     long networkId;
     BroadcastDomainType broadcastType;

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/alert/AlertVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/alert/AlertVO.java b/core/src/com/cloud/alert/AlertVO.java
index 7769d2d..7208b34 100755
--- a/core/src/com/cloud/alert/AlertVO.java
+++ b/core/src/com/cloud/alert/AlertVO.java
@@ -30,10 +30,11 @@ import javax.persistence.TemporalType;
 
 import org.apache.cloudstack.api.Identity;
 import com.cloud.utils.db.GenericDao;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="alert")
-public class AlertVO implements Alert, Identity {
+public class AlertVO implements Alert, Identity, InternalIdentity {
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/async/SyncQueueItemVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/async/SyncQueueItemVO.java b/core/src/com/cloud/async/SyncQueueItemVO.java
index c3ef2f6..b0546a7 100644
--- a/core/src/com/cloud/async/SyncQueueItemVO.java
+++ b/core/src/com/cloud/async/SyncQueueItemVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.async;
 
+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="sync_queue_item")
-public class SyncQueueItemVO implements SyncQueueItem{
+public class SyncQueueItemVO implements SyncQueueItem, InternalIdentity {
 
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
@@ -58,7 +60,7 @@ public class SyncQueueItemVO implements SyncQueueItem{
     @Column(name="created")
     private Date created;
     
-    public Long getId() {
+    public long getId() {
         return id;
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/async/SyncQueueVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/async/SyncQueueVO.java b/core/src/com/cloud/async/SyncQueueVO.java
index f70b320..4f2bc4f 100644
--- a/core/src/com/cloud/async/SyncQueueVO.java
+++ b/core/src/com/cloud/async/SyncQueueVO.java
@@ -17,6 +17,8 @@
 
 package com.cloud.async;
 
+import org.apache.cloudstack.api.InternalIdentity;
+
 import java.util.Date;
 import javax.persistence.Column;
 import javax.persistence.Entity;
@@ -29,7 +31,7 @@ import javax.persistence.TemporalType;
 
 @Entity
 @Table(name="sync_queue")
-public class SyncQueueVO {
+public class SyncQueueVO implements InternalIdentity {
 
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
@@ -60,7 +62,7 @@ public class SyncQueueVO {
     @Column(name="queue_size_limit")
     private long queueSizeLimit = 0;
 
-    public Long getId() {
+    public long getId() {
         return id;
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/capacity/CapacityVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/capacity/CapacityVO.java b/core/src/com/cloud/capacity/CapacityVO.java
index 1bf06ce..7a61252 100755
--- a/core/src/com/cloud/capacity/CapacityVO.java
+++ b/core/src/com/cloud/capacity/CapacityVO.java
@@ -29,10 +29,11 @@ import javax.persistence.Temporal;
 import javax.persistence.TemporalType;
 
 import com.cloud.utils.db.GenericDao;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="op_host_capacity")
-public class CapacityVO implements Capacity {
+public class CapacityVO implements Capacity, InternalIdentity {
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/certificate/CertificateVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/certificate/CertificateVO.java b/core/src/com/cloud/certificate/CertificateVO.java
index 23c3331..4f04760 100644
--- a/core/src/com/cloud/certificate/CertificateVO.java
+++ b/core/src/com/cloud/certificate/CertificateVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.certificate;
 
+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="certificate")
-public class CertificateVO {
+public class CertificateVO implements InternalIdentity {
 
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
@@ -40,7 +42,7 @@ public class CertificateVO {
 
     public CertificateVO() {}
 
-    public Long getId() {
+    public long getId() {
         return id;
     }
     

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/configuration/ResourceCountVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/configuration/ResourceCountVO.java b/core/src/com/cloud/configuration/ResourceCountVO.java
index 7cf601e..88ad1a8 100644
--- a/core/src/com/cloud/configuration/ResourceCountVO.java
+++ b/core/src/com/cloud/configuration/ResourceCountVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.configuration;
 
+import org.apache.cloudstack.api.InternalIdentity;
+
 import javax.persistence.Column;
 import javax.persistence.Entity;
 import javax.persistence.EnumType;
@@ -27,7 +29,7 @@ import javax.persistence.Table;
 
 @Entity
 @Table(name="resource_count")
-public class ResourceCountVO implements ResourceCount {
+public class ResourceCountVO implements ResourceCount, InternalIdentity {
 	
 	@Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
@@ -62,7 +64,7 @@ public class ResourceCountVO implements ResourceCount {
 	}
 	
 	@Override
-	public Long getId() {
+	public long getId() {
 		return id;
 	}
 	

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/configuration/ResourceLimitVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/configuration/ResourceLimitVO.java b/core/src/com/cloud/configuration/ResourceLimitVO.java
index ff5397e..4aefa4e 100644
--- a/core/src/com/cloud/configuration/ResourceLimitVO.java
+++ b/core/src/com/cloud/configuration/ResourceLimitVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.configuration;
 
+import org.apache.cloudstack.api.InternalIdentity;
+
 import javax.persistence.Column;
 import javax.persistence.Entity;
 import javax.persistence.EnumType;
@@ -27,7 +29,7 @@ import javax.persistence.Table;
 
 @Entity
 @Table(name = "resource_limit")
-public class ResourceLimitVO implements ResourceLimit {
+public class ResourceLimitVO implements ResourceLimit, InternalIdentity {
 
     @Id
     @GeneratedValue(strategy = GenerationType.IDENTITY)
@@ -62,7 +64,7 @@ public class ResourceLimitVO implements ResourceLimit {
     }
 
     @Override
-    public Long getId() {
+    public long getId() {
         return id;
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/event/EventVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/event/EventVO.java b/core/src/com/cloud/event/EventVO.java
index 5867e92..d91439b 100644
--- a/core/src/com/cloud/event/EventVO.java
+++ b/core/src/com/cloud/event/EventVO.java
@@ -31,10 +31,11 @@ import javax.persistence.Transient;
 
 import org.apache.cloudstack.api.Identity;
 import com.cloud.utils.db.GenericDao;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="event")
-public class EventVO implements Event, Identity {
+public class EventVO implements Event, Identity, InternalIdentity {
 	@Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/event/UsageEvent.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/event/UsageEvent.java b/core/src/com/cloud/event/UsageEvent.java
index bf56f5e..0b05050 100644
--- a/core/src/com/cloud/event/UsageEvent.java
+++ b/core/src/com/cloud/event/UsageEvent.java
@@ -16,9 +16,11 @@
 // under the License.
 package com.cloud.event;
 
+import org.apache.cloudstack.api.InternalIdentity;
+
 import java.util.Date;
 
-public interface UsageEvent {
+public interface UsageEvent extends InternalIdentity {
     long getId();
     String getType();
 

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/event/UsageEventVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/event/UsageEventVO.java b/core/src/com/cloud/event/UsageEventVO.java
index 201892f..ed34f01 100644
--- a/core/src/com/cloud/event/UsageEventVO.java
+++ b/core/src/com/cloud/event/UsageEventVO.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="usage_event")
-public class UsageEventVO implements UsageEvent {
+public class UsageEventVO implements UsageEvent, InternalIdentity {
 	@Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/host/DetailVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/host/DetailVO.java b/core/src/com/cloud/host/DetailVO.java
index d7ee814..4e62490 100644
--- a/core/src/com/cloud/host/DetailVO.java
+++ b/core/src/com/cloud/host/DetailVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.host;
 
+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="host_details")
-public class DetailVO {
+public class DetailVO implements InternalIdentity {
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/host/HostTagVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/host/HostTagVO.java b/core/src/com/cloud/host/HostTagVO.java
index 7164d10..b1f5ace 100644
--- a/core/src/com/cloud/host/HostTagVO.java
+++ b/core/src/com/cloud/host/HostTagVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.host;
 
+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="host_tags")
-public class HostTagVO {
+public class HostTagVO implements InternalIdentity {
 	@Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/host/HostVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/host/HostVO.java b/core/src/com/cloud/host/HostVO.java
index 069b263..92445a9 100755
--- a/core/src/com/cloud/host/HostVO.java
+++ b/core/src/com/cloud/host/HostVO.java
@@ -43,12 +43,13 @@ import com.cloud.resource.ResourceState;
 import com.cloud.storage.Storage.StoragePoolType;
 import com.cloud.utils.NumbersUtil;
 import com.cloud.utils.db.GenericDao;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="host")
 @Inheritance(strategy=InheritanceType.TABLE_PER_CLASS)
 @DiscriminatorColumn(name="type", discriminatorType=DiscriminatorType.STRING, length=32)
-public class HostVO implements Host, Identity {
+public class HostVO implements Host, Identity, InternalIdentity {
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/hypervisor/HypervisorCapabilitiesVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/hypervisor/HypervisorCapabilitiesVO.java b/core/src/com/cloud/hypervisor/HypervisorCapabilitiesVO.java
index c5c67f9..6e19f11 100644
--- a/core/src/com/cloud/hypervisor/HypervisorCapabilitiesVO.java
+++ b/core/src/com/cloud/hypervisor/HypervisorCapabilitiesVO.java
@@ -30,10 +30,11 @@ import javax.persistence.Table;
 import org.apache.cloudstack.api.Identity;
 import com.cloud.hypervisor.Hypervisor.HypervisorType;
 import com.cloud.utils.NumbersUtil;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="hypervisor_capabilities")
-public class HypervisorCapabilitiesVO implements HypervisorCapabilities, Identity {
+public class HypervisorCapabilitiesVO implements HypervisorCapabilities, Identity, InternalIdentity {
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/network/VpnUserVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/network/VpnUserVO.java b/core/src/com/cloud/network/VpnUserVO.java
index 02c5368..4d3266a 100644
--- a/core/src/com/cloud/network/VpnUserVO.java
+++ b/core/src/com/cloud/network/VpnUserVO.java
@@ -29,10 +29,11 @@ import javax.persistence.Table;
 
 import org.apache.cloudstack.api.Identity;
 import com.cloud.utils.db.Encrypt;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name=("vpn_users"))
-public class VpnUserVO implements VpnUser, Identity {
+public class VpnUserVO implements VpnUser, Identity, InternalIdentity {
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/network/security/SecurityGroupRuleVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/network/security/SecurityGroupRuleVO.java b/core/src/com/cloud/network/security/SecurityGroupRuleVO.java
index 7c223ee..0b26dd1 100644
--- a/core/src/com/cloud/network/security/SecurityGroupRuleVO.java
+++ b/core/src/com/cloud/network/security/SecurityGroupRuleVO.java
@@ -29,10 +29,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 = ("security_group_rule"))
-public class SecurityGroupRuleVO implements SecurityRule {
+public class SecurityGroupRuleVO implements SecurityRule, InternalIdentity {
     @Id
     @GeneratedValue(strategy = GenerationType.IDENTITY)
     @Column(name = "id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/network/security/SecurityGroupRulesVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/network/security/SecurityGroupRulesVO.java b/core/src/com/cloud/network/security/SecurityGroupRulesVO.java
index d322a79..eb58a54 100644
--- a/core/src/com/cloud/network/security/SecurityGroupRulesVO.java
+++ b/core/src/com/cloud/network/security/SecurityGroupRulesVO.java
@@ -27,12 +27,13 @@ import javax.persistence.Table;
 
 import com.cloud.network.security.SecurityRule.SecurityRuleType;
 import com.cloud.utils.db.JoinType;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name = ("security_group"))
 @JoinType(type = "left")
 @SecondaryTable(name = "security_group_rule", pkJoinColumns = { @PrimaryKeyJoinColumn(name = "id", referencedColumnName = "security_group_id") })
-public class SecurityGroupRulesVO implements SecurityGroupRules {
+public class SecurityGroupRulesVO implements SecurityGroupRules, InternalIdentity {
     @Id
     @GeneratedValue(strategy = GenerationType.IDENTITY)
     @Column(name = "id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/network/security/SecurityGroupVMMapVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/network/security/SecurityGroupVMMapVO.java b/core/src/com/cloud/network/security/SecurityGroupVMMapVO.java
index e3dd281..75bde33 100644
--- a/core/src/com/cloud/network/security/SecurityGroupVMMapVO.java
+++ b/core/src/com/cloud/network/security/SecurityGroupVMMapVO.java
@@ -27,13 +27,14 @@ import javax.persistence.SecondaryTables;
 import javax.persistence.Table;
 
 import com.cloud.vm.VirtualMachine.State;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name = ("security_group_vm_map"))
 @SecondaryTables({ @SecondaryTable(name = "nics", pkJoinColumns = { @PrimaryKeyJoinColumn(name = "instance_id", referencedColumnName = "instance_id") }),
         @SecondaryTable(name = "vm_instance", pkJoinColumns = { @PrimaryKeyJoinColumn(name = "instance_id", referencedColumnName = "id") }),
         @SecondaryTable(name = "security_group", pkJoinColumns = { @PrimaryKeyJoinColumn(name = "security_group_id", referencedColumnName = "id") }) })
-public class SecurityGroupVMMapVO {
+public class SecurityGroupVMMapVO implements InternalIdentity {
     @Id
     @GeneratedValue(strategy = GenerationType.IDENTITY)
     @Column(name = "id")
@@ -62,7 +63,7 @@ public class SecurityGroupVMMapVO {
         this.instanceId = instanceId;
     }
 
-    public Long getId() {
+    public long getId() {
         return id;
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/network/security/SecurityGroupVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/network/security/SecurityGroupVO.java b/core/src/com/cloud/network/security/SecurityGroupVO.java
index 3d4acea..0010166 100644
--- a/core/src/com/cloud/network/security/SecurityGroupVO.java
+++ b/core/src/com/cloud/network/security/SecurityGroupVO.java
@@ -26,10 +26,11 @@ import javax.persistence.Id;
 import javax.persistence.Table;
 
 import org.apache.cloudstack.api.Identity;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name = ("security_group"))
-public class SecurityGroupVO implements SecurityGroup, Identity {
+public class SecurityGroupVO implements SecurityGroup, Identity, InternalIdentity {
     @Id
     @GeneratedValue(strategy = GenerationType.IDENTITY)
     @Column(name = "id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/network/security/SecurityGroupWorkVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/network/security/SecurityGroupWorkVO.java b/core/src/com/cloud/network/security/SecurityGroupWorkVO.java
index b0c8ef3..33d30fb 100644
--- a/core/src/com/cloud/network/security/SecurityGroupWorkVO.java
+++ b/core/src/com/cloud/network/security/SecurityGroupWorkVO.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="op_nwgrp_work")
-public class SecurityGroupWorkVO implements SecurityGroupWork{
+public class SecurityGroupWorkVO implements SecurityGroupWork, InternalIdentity {
 	
 	
     @Id
@@ -67,7 +68,7 @@ public class SecurityGroupWorkVO implements SecurityGroupWork{
     protected SecurityGroupWorkVO() {
     }
     
-    public Long getId() {
+    public long getId() {
         return id;
     }
     

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/network/security/VmRulesetLogVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/network/security/VmRulesetLogVO.java b/core/src/com/cloud/network/security/VmRulesetLogVO.java
index 709a3c9..2090ce3 100644
--- a/core/src/com/cloud/network/security/VmRulesetLogVO.java
+++ b/core/src/com/cloud/network/security/VmRulesetLogVO.java
@@ -26,6 +26,7 @@ import javax.persistence.Id;
 import javax.persistence.Table;
 
 import com.cloud.utils.db.GenericDao;
+import org.apache.cloudstack.api.InternalIdentity;
 
 /**
  * Records the intent to update a VM's ingress ruleset
@@ -33,7 +34,7 @@ import com.cloud.utils.db.GenericDao;
  */
 @Entity
 @Table(name="op_vm_ruleset_log")
-public class VmRulesetLogVO {
+public class VmRulesetLogVO implements InternalIdentity {
 	@Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")
@@ -57,7 +58,7 @@ public class VmRulesetLogVO {
 		this.instanceId = instanceId;
 	}
 
-	public Long getId() {
+	public long getId() {
 		return id;
 	}
 

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/storage/DiskOfferingVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/storage/DiskOfferingVO.java b/core/src/com/cloud/storage/DiskOfferingVO.java
index 8b3a2de..9dad883 100755
--- a/core/src/com/cloud/storage/DiskOfferingVO.java
+++ b/core/src/com/cloud/storage/DiskOfferingVO.java
@@ -37,12 +37,13 @@ import javax.persistence.Transient;
 import org.apache.cloudstack.api.Identity;
 import com.cloud.offering.DiskOffering;
 import com.cloud.utils.db.GenericDao;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="disk_offering")
 @Inheritance(strategy=InheritanceType.JOINED)
 @DiscriminatorColumn(name="type", discriminatorType=DiscriminatorType.STRING, length=32)
-public class DiskOfferingVO implements DiskOffering, Identity {
+public class DiskOfferingVO implements DiskOffering, Identity, InternalIdentity {
     public enum Type {
         Disk,
         Service

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/storage/GuestOSCategoryVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/storage/GuestOSCategoryVO.java b/core/src/com/cloud/storage/GuestOSCategoryVO.java
index b67fb87..fa1b73d 100644
--- a/core/src/com/cloud/storage/GuestOSCategoryVO.java
+++ b/core/src/com/cloud/storage/GuestOSCategoryVO.java
@@ -26,10 +26,11 @@ import javax.persistence.Id;
 import javax.persistence.Table;
 
 import org.apache.cloudstack.api.Identity;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="guest_os_category")
-public class GuestOSCategoryVO implements GuestOsCategory, Identity {
+public class GuestOSCategoryVO implements GuestOsCategory, Identity, InternalIdentity {
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/storage/GuestOSVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/storage/GuestOSVO.java b/core/src/com/cloud/storage/GuestOSVO.java
index 4281917..5f3e4a9 100644
--- a/core/src/com/cloud/storage/GuestOSVO.java
+++ b/core/src/com/cloud/storage/GuestOSVO.java
@@ -26,10 +26,11 @@ import javax.persistence.Id;
 import javax.persistence.Table;
 
 import org.apache.cloudstack.api.Identity;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="guest_os")
-public class GuestOSVO implements GuestOS, Identity {
+public class GuestOSVO implements GuestOS, Identity, InternalIdentity {
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/storage/LaunchPermissionVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/storage/LaunchPermissionVO.java b/core/src/com/cloud/storage/LaunchPermissionVO.java
index 8bfe09d..992bac2 100644
--- a/core/src/com/cloud/storage/LaunchPermissionVO.java
+++ b/core/src/com/cloud/storage/LaunchPermissionVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.storage;
 
+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="launch_permission")
-public class LaunchPermissionVO {
+public class LaunchPermissionVO implements InternalIdentity {
     @Id
     @Column(name="id")
     private Long id;
@@ -41,7 +43,7 @@ public class LaunchPermissionVO {
         this.accountId = accountId;
     }
 
-    public Long getId() {
+    public long getId() {
         return id;
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/storage/S3VO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/storage/S3VO.java b/core/src/com/cloud/storage/S3VO.java
index ab16b2a..3017f7e 100644
--- a/core/src/com/cloud/storage/S3VO.java
+++ b/core/src/com/cloud/storage/S3VO.java
@@ -21,6 +21,7 @@ package com.cloud.storage;
 import com.cloud.agent.api.to.S3TO;
 import com.cloud.utils.db.GenericDao;
 import org.apache.cloudstack.api.Identity;
+import org.apache.cloudstack.api.InternalIdentity;
 
 import javax.persistence.Column;
 import javax.persistence.Entity;
@@ -32,7 +33,7 @@ import java.util.Date;
 
 @Entity
 @Table(name = "s3")
-public class S3VO implements S3, Identity {
+public class S3VO implements S3, Identity, InternalIdentity {
 
     public static final String ID_COLUMN_NAME = "id";
 

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/storage/SnapshotPolicyVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/storage/SnapshotPolicyVO.java b/core/src/com/cloud/storage/SnapshotPolicyVO.java
index e5b0cb5..2240ec5 100644
--- a/core/src/com/cloud/storage/SnapshotPolicyVO.java
+++ b/core/src/com/cloud/storage/SnapshotPolicyVO.java
@@ -28,10 +28,11 @@ import javax.persistence.Table;
 import org.apache.cloudstack.api.Identity;
 import com.cloud.storage.snapshot.SnapshotPolicy;
 import com.cloud.utils.DateUtil.IntervalType;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="snapshot_policy")
-public class SnapshotPolicyVO implements SnapshotPolicy{
+public class SnapshotPolicyVO implements SnapshotPolicy, InternalIdentity {
 
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/storage/SnapshotScheduleVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/storage/SnapshotScheduleVO.java b/core/src/com/cloud/storage/SnapshotScheduleVO.java
index 4b89c6f..80966b3 100644
--- a/core/src/com/cloud/storage/SnapshotScheduleVO.java
+++ b/core/src/com/cloud/storage/SnapshotScheduleVO.java
@@ -30,10 +30,11 @@ import javax.persistence.TemporalType;
 
 import org.apache.cloudstack.api.Identity;
 import com.cloud.storage.snapshot.SnapshotSchedule;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="snapshot_schedule")
-public class SnapshotScheduleVO implements SnapshotSchedule {
+public class SnapshotScheduleVO implements SnapshotSchedule, InternalIdentity {
 
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/storage/SnapshotVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/storage/SnapshotVO.java b/core/src/com/cloud/storage/SnapshotVO.java
index 885a479..44d97f5 100644
--- a/core/src/com/cloud/storage/SnapshotVO.java
+++ b/core/src/com/cloud/storage/SnapshotVO.java
@@ -32,10 +32,11 @@ import org.apache.cloudstack.api.Identity;
 import com.cloud.hypervisor.Hypervisor.HypervisorType;
 import com.cloud.utils.db.GenericDao;
 import com.google.gson.annotations.Expose;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="snapshots")
-public class SnapshotVO implements Snapshot, Identity {
+public class SnapshotVO implements Snapshot, Identity, InternalIdentity {
 
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/storage/StoragePoolDetailVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/storage/StoragePoolDetailVO.java b/core/src/com/cloud/storage/StoragePoolDetailVO.java
index 2e1af7b..48487e5 100644
--- a/core/src/com/cloud/storage/StoragePoolDetailVO.java
+++ b/core/src/com/cloud/storage/StoragePoolDetailVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.storage;
 
+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="storage_pool_details")
-public class StoragePoolDetailVO {
+public class StoragePoolDetailVO implements InternalIdentity {
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/storage/StoragePoolHostVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/storage/StoragePoolHostVO.java b/core/src/com/cloud/storage/StoragePoolHostVO.java
index 41c7ce8..a50e3eb 100644
--- a/core/src/com/cloud/storage/StoragePoolHostVO.java
+++ b/core/src/com/cloud/storage/StoragePoolHostVO.java
@@ -28,6 +28,7 @@ import javax.persistence.Temporal;
 import javax.persistence.TemporalType;
 
 import com.cloud.utils.db.GenericDaoBase;
+import org.apache.cloudstack.api.InternalIdentity;
 
 /**
  * Join table for storage pools and hosts
@@ -35,7 +36,7 @@ import com.cloud.utils.db.GenericDaoBase;
  */
 @Entity
 @Table(name="storage_pool_host_ref")
-public class StoragePoolHostVO implements StoragePoolHostAssoc {
+public class StoragePoolHostVO implements StoragePoolHostAssoc, InternalIdentity {
 	@Id
 	@GeneratedValue(strategy=GenerationType.IDENTITY)
 	private Long id;
@@ -75,7 +76,7 @@ public class StoragePoolHostVO implements StoragePoolHostAssoc {
 	}
 
 
-    public Long getId() {
+    public long getId() {
         return id;
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/storage/StoragePoolVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/storage/StoragePoolVO.java b/core/src/com/cloud/storage/StoragePoolVO.java
index 9ed9f7e..343e440 100644
--- a/core/src/com/cloud/storage/StoragePoolVO.java
+++ b/core/src/com/cloud/storage/StoragePoolVO.java
@@ -33,10 +33,11 @@ import javax.persistence.Transient;
 import org.apache.cloudstack.api.Identity;
 import com.cloud.storage.Storage.StoragePoolType;
 import com.cloud.utils.db.GenericDao;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="storage_pool")
-public class StoragePoolVO implements StoragePool, Identity {
+public class StoragePoolVO implements StoragePool, Identity, InternalIdentity {
     @Id
     @TableGenerator(name="storage_pool_sq", table="sequence", pkColumnName="name", valueColumnName="value", pkColumnValue="storage_pool_seq", allocationSize=1)
     @Column(name="id", updatable=false, nullable = false)

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/storage/StoragePoolWorkVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/storage/StoragePoolWorkVO.java b/core/src/com/cloud/storage/StoragePoolWorkVO.java
index c5101ea..440065d 100644
--- a/core/src/com/cloud/storage/StoragePoolWorkVO.java
+++ b/core/src/com/cloud/storage/StoragePoolWorkVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.storage;
 
+import org.apache.cloudstack.api.InternalIdentity;
+
 import javax.persistence.Column;
 import javax.persistence.Entity;
 
@@ -26,9 +28,9 @@ import javax.persistence.Table;
 
 @Entity
 @Table(name="storage_pool_work")
-public class StoragePoolWorkVO {
+public class StoragePoolWorkVO implements InternalIdentity {
     
-    public Long getId() {
+    public long getId() {
         return id;
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/storage/SwiftVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/storage/SwiftVO.java b/core/src/com/cloud/storage/SwiftVO.java
index 239bd75..c99f0ef 100644
--- a/core/src/com/cloud/storage/SwiftVO.java
+++ b/core/src/com/cloud/storage/SwiftVO.java
@@ -29,10 +29,11 @@ import javax.persistence.Table;
 import com.cloud.agent.api.to.SwiftTO;
 import org.apache.cloudstack.api.Identity;
 import com.cloud.utils.db.GenericDao;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="swift")
-public class SwiftVO implements Swift {
+public class SwiftVO implements Swift, InternalIdentity {
 
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/storage/UploadVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/storage/UploadVO.java b/core/src/com/cloud/storage/UploadVO.java
index 6555517..be2b642 100755
--- a/core/src/com/cloud/storage/UploadVO.java
+++ b/core/src/com/cloud/storage/UploadVO.java
@@ -32,10 +32,11 @@ import javax.persistence.TemporalType;
 
 import com.cloud.utils.NumbersUtil;
 import com.cloud.utils.db.GenericDaoBase;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="upload")
-public class UploadVO implements Upload {
+public class UploadVO implements Upload, InternalIdentity {
 	@Id
 	@GeneratedValue(strategy=GenerationType.IDENTITY)
 	long id;

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/storage/VMTemplateDetailVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/storage/VMTemplateDetailVO.java b/core/src/com/cloud/storage/VMTemplateDetailVO.java
index e3f7487..c007802 100644
--- a/core/src/com/cloud/storage/VMTemplateDetailVO.java
+++ b/core/src/com/cloud/storage/VMTemplateDetailVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.storage;
 
+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="vm_template_details")
-public class VMTemplateDetailVO {
+public class VMTemplateDetailVO implements InternalIdentity {
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/storage/VMTemplateHostVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/storage/VMTemplateHostVO.java b/core/src/com/cloud/storage/VMTemplateHostVO.java
index 9c85dd2..e07a9b9 100755
--- a/core/src/com/cloud/storage/VMTemplateHostVO.java
+++ b/core/src/com/cloud/storage/VMTemplateHostVO.java
@@ -30,6 +30,7 @@ import javax.persistence.Temporal;
 import javax.persistence.TemporalType;
 
 import com.cloud.utils.db.GenericDaoBase;
+import org.apache.cloudstack.api.InternalIdentity;
 
 /**
  * Join table for storage hosts and templates
@@ -37,7 +38,7 @@ import com.cloud.utils.db.GenericDaoBase;
  */
 @Entity
 @Table(name="template_host_ref")
-public class VMTemplateHostVO implements VMTemplateStorageResourceAssoc {
+public class VMTemplateHostVO implements VMTemplateStorageResourceAssoc, InternalIdentity {
 	@Id
 	@GeneratedValue(strategy=GenerationType.IDENTITY)
 	Long id;

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/storage/VMTemplateS3VO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/storage/VMTemplateS3VO.java b/core/src/com/cloud/storage/VMTemplateS3VO.java
index a75c37d..02f3ff5 100644
--- a/core/src/com/cloud/storage/VMTemplateS3VO.java
+++ b/core/src/com/cloud/storage/VMTemplateS3VO.java
@@ -19,6 +19,7 @@
 package com.cloud.storage;
 
 import com.cloud.utils.db.GenericDaoBase;
+import org.apache.cloudstack.api.InternalIdentity;
 
 import javax.persistence.Column;
 import javax.persistence.Entity;
@@ -32,7 +33,7 @@ import java.util.Date;
 
 @Entity
 @Table(name = "template_s3_ref")
-public class VMTemplateS3VO {
+public class VMTemplateS3VO implements InternalIdentity {
 
     public static final String S3_ID_COLUMN_NAME = "s3_id";
 

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/storage/VMTemplateStoragePoolVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/storage/VMTemplateStoragePoolVO.java b/core/src/com/cloud/storage/VMTemplateStoragePoolVO.java
index f497c09..cb8c7aa 100644
--- a/core/src/com/cloud/storage/VMTemplateStoragePoolVO.java
+++ b/core/src/com/cloud/storage/VMTemplateStoragePoolVO.java
@@ -30,6 +30,7 @@ import javax.persistence.Temporal;
 import javax.persistence.TemporalType;
 
 import com.cloud.utils.db.GenericDaoBase;
+import org.apache.cloudstack.api.InternalIdentity;
 
 /**
  * Join table for storage pools and templates
@@ -37,7 +38,7 @@ import com.cloud.utils.db.GenericDaoBase;
  */
 @Entity
 @Table(name="template_spool_ref")
-public class VMTemplateStoragePoolVO implements VMTemplateStorageResourceAssoc{
+public class VMTemplateStoragePoolVO implements VMTemplateStorageResourceAssoc, InternalIdentity {
 	@Id
 	@GeneratedValue(strategy=GenerationType.IDENTITY)
 	long id;

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/storage/VMTemplateSwiftVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/storage/VMTemplateSwiftVO.java b/core/src/com/cloud/storage/VMTemplateSwiftVO.java
index a009e23..6c7a73d 100755
--- a/core/src/com/cloud/storage/VMTemplateSwiftVO.java
+++ b/core/src/com/cloud/storage/VMTemplateSwiftVO.java
@@ -26,6 +26,7 @@ import javax.persistence.Id;
 import javax.persistence.Table;
 
 import com.cloud.utils.db.GenericDaoBase;
+import org.apache.cloudstack.api.InternalIdentity;
 
 /**
  * Join table for swift and templates
@@ -34,7 +35,7 @@ import com.cloud.utils.db.GenericDaoBase;
  */
 @Entity
 @Table(name = "template_swift_ref")
-public class VMTemplateSwiftVO {
+public class VMTemplateSwiftVO implements InternalIdentity {
     @Id
     @GeneratedValue(strategy = GenerationType.IDENTITY)
     Long id;

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/storage/VMTemplateVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/storage/VMTemplateVO.java b/core/src/com/cloud/storage/VMTemplateVO.java
index fdfd5a1..aa089ac 100755
--- a/core/src/com/cloud/storage/VMTemplateVO.java
+++ b/core/src/com/cloud/storage/VMTemplateVO.java
@@ -37,10 +37,11 @@ import com.cloud.storage.Storage.ImageFormat;
 import com.cloud.storage.Storage.TemplateType;
 import com.cloud.template.VirtualMachineTemplate;
 import com.cloud.utils.db.GenericDao;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="vm_template")
-public class VMTemplateVO implements VirtualMachineTemplate {
+public class VMTemplateVO implements VirtualMachineTemplate, InternalIdentity {
     @Id
     @TableGenerator(name="vm_template_sq", table="sequence", pkColumnName="name", valueColumnName="value", pkColumnValue="vm_template_seq", allocationSize=1)
     @Column(name="id", nullable = false)

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/storage/VMTemplateZoneVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/storage/VMTemplateZoneVO.java b/core/src/com/cloud/storage/VMTemplateZoneVO.java
index e7169b8..93a67b5 100644
--- a/core/src/com/cloud/storage/VMTemplateZoneVO.java
+++ b/core/src/com/cloud/storage/VMTemplateZoneVO.java
@@ -29,10 +29,11 @@ import javax.persistence.TemporalType;
 
 import com.cloud.utils.db.GenericDao;
 import com.cloud.utils.db.GenericDaoBase;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="template_zone_ref")
-public class VMTemplateZoneVO {
+public class VMTemplateZoneVO implements InternalIdentity {
 	@Id
 	@GeneratedValue(strategy=GenerationType.IDENTITY)
 	Long id;
@@ -64,7 +65,7 @@ public class VMTemplateZoneVO {
 		this.lastUpdated = lastUpdated;
 	}
 
-	public Long getId() {
+	public long getId() {
 		return id;
 	}
 

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/storage/VolumeHostVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/storage/VolumeHostVO.java b/core/src/com/cloud/storage/VolumeHostVO.java
index d3d88ae..f4fc7ab 100755
--- a/core/src/com/cloud/storage/VolumeHostVO.java
+++ b/core/src/com/cloud/storage/VolumeHostVO.java
@@ -33,6 +33,7 @@ import javax.persistence.TemporalType;
 import com.cloud.storage.Storage.ImageFormat;
 import com.cloud.storage.VMTemplateStorageResourceAssoc.Status;
 import com.cloud.utils.db.GenericDaoBase;
+import org.apache.cloudstack.api.InternalIdentity;
 
 /**
  * Join table for storage hosts and volumes
@@ -40,7 +41,7 @@ import com.cloud.utils.db.GenericDaoBase;
  */
 @Entity
 @Table(name="volume_host_ref")
-public class VolumeHostVO {
+public class VolumeHostVO implements InternalIdentity {
 	@Id
 	@GeneratedValue(strategy=GenerationType.IDENTITY)
 	Long id;

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/storage/VolumeVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/storage/VolumeVO.java b/core/src/com/cloud/storage/VolumeVO.java
index d541b94..070fb64 100755
--- a/core/src/com/cloud/storage/VolumeVO.java
+++ b/core/src/com/cloud/storage/VolumeVO.java
@@ -35,10 +35,11 @@ import org.apache.cloudstack.api.Identity;
 import com.cloud.storage.Storage.StoragePoolType;
 import com.cloud.utils.NumbersUtil;
 import com.cloud.utils.db.GenericDao;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name = "volumes")
-public class VolumeVO implements Volume, Identity {
+public class VolumeVO implements Volume, Identity, InternalIdentity {
     @Id
     @TableGenerator(name = "volume_sq", table = "sequence", pkColumnName = "name", valueColumnName = "value", pkColumnValue = "volume_seq", allocationSize = 1)
     @GeneratedValue(strategy = GenerationType.TABLE)

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/user/AccountVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/user/AccountVO.java b/core/src/com/cloud/user/AccountVO.java
index 5958d49..d7228e6 100644
--- a/core/src/com/cloud/user/AccountVO.java
+++ b/core/src/com/cloud/user/AccountVO.java
@@ -30,10 +30,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="account")
-public class AccountVO implements Account, Identity {
+public class AccountVO implements Account, Identity, InternalIdentity {
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/user/SSHKeyPairVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/user/SSHKeyPairVO.java b/core/src/com/cloud/user/SSHKeyPairVO.java
index 0e13dc5..025e858 100644
--- a/core/src/com/cloud/user/SSHKeyPairVO.java
+++ b/core/src/com/cloud/user/SSHKeyPairVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.user;
 
+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.Transient;
 
 @Entity
 @Table(name="ssh_keypairs")
-public class SSHKeyPairVO implements SSHKeyPair {
+public class SSHKeyPairVO implements SSHKeyPair, InternalIdentity {
 	
 	@Id
 	@GeneratedValue(strategy=GenerationType.IDENTITY)

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/user/UserAccountVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/user/UserAccountVO.java b/core/src/com/cloud/user/UserAccountVO.java
index 1236061..cfad617 100644
--- a/core/src/com/cloud/user/UserAccountVO.java
+++ b/core/src/com/cloud/user/UserAccountVO.java
@@ -29,12 +29,13 @@ 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")
 @SecondaryTable(name="account",
 pkJoinColumns={@PrimaryKeyJoinColumn(name="account_id", referencedColumnName="id")})
-public class UserAccountVO implements UserAccount {
+public class UserAccountVO implements UserAccount, InternalIdentity {
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")
@@ -101,7 +102,7 @@ public class UserAccountVO implements UserAccount {
     public UserAccountVO() {}
 
     @Override
-    public Long getId() {
+    public long getId() {
         return id;
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/user/UserStatisticsVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/user/UserStatisticsVO.java b/core/src/com/cloud/user/UserStatisticsVO.java
index d560c3e..eb59a74 100644
--- a/core/src/com/cloud/user/UserStatisticsVO.java
+++ b/core/src/com/cloud/user/UserStatisticsVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.user;
 
+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="user_statistics")
-public class UserStatisticsVO {
+public class UserStatisticsVO implements InternalIdentity {
 	@Id
 	@GeneratedValue(strategy=GenerationType.IDENTITY)
 	@Column(name="id")
@@ -88,7 +90,7 @@ public class UserStatisticsVO {
 		return accountId;
 	}
 
-	public Long getId() {
+	public long getId() {
         return id;
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/user/UserVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/user/UserVO.java b/core/src/com/cloud/user/UserVO.java
index 99dd51b..919f413 100644
--- a/core/src/com/cloud/user/UserVO.java
+++ b/core/src/com/cloud/user/UserVO.java
@@ -32,6 +32,7 @@ import org.apache.cloudstack.api.Identity;
 import com.cloud.user.Account.State;
 import com.cloud.utils.db.Encrypt;
 import com.cloud.utils.db.GenericDao;
+import org.apache.cloudstack.api.InternalIdentity;
 
 /**
  * A bean representing a user
@@ -39,7 +40,7 @@ import com.cloud.utils.db.GenericDao;
  */
 @Entity
 @Table(name = "user")
-public class UserVO implements User, Identity {
+public class UserVO implements User, Identity, InternalIdentity {
     @Id
     @GeneratedValue(strategy = GenerationType.IDENTITY)
     @Column(name = "id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/vm/InstanceGroupVMMapVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/vm/InstanceGroupVMMapVO.java b/core/src/com/cloud/vm/InstanceGroupVMMapVO.java
index 09cfd9c..996655d 100644
--- a/core/src/com/cloud/vm/InstanceGroupVMMapVO.java
+++ b/core/src/com/cloud/vm/InstanceGroupVMMapVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.vm;
 
+import org.apache.cloudstack.api.InternalIdentity;
+
 import javax.persistence.Column;
 import javax.persistence.Entity;
 import javax.persistence.GeneratedValue;
@@ -34,7 +36,7 @@ import javax.persistence.Table;
 @SecondaryTable(name="instance_group", 
 		pkJoinColumns={@PrimaryKeyJoinColumn(name="group_id", referencedColumnName="id")})
 		})
-public class InstanceGroupVMMapVO {
+public class InstanceGroupVMMapVO implements InternalIdentity {
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")
@@ -54,7 +56,7 @@ public class InstanceGroupVMMapVO {
         this.instanceId = instanceId;
     }
 
-    public Long getId() {
+    public long getId() {
         return id;
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/vm/InstanceGroupVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/vm/InstanceGroupVO.java b/core/src/com/cloud/vm/InstanceGroupVO.java
index f87676a..39bebb1 100644
--- a/core/src/com/cloud/vm/InstanceGroupVO.java
+++ b/core/src/com/cloud/vm/InstanceGroupVO.java
@@ -30,12 +30,13 @@ 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="instance_group")
 @SecondaryTable(name="account",
         pkJoinColumns={@PrimaryKeyJoinColumn(name="account_id", referencedColumnName="id")})
-public class InstanceGroupVO implements InstanceGroup, Identity {
+public class InstanceGroupVO implements InstanceGroup, Identity, InternalIdentity {
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/vm/UserVmDetailVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/vm/UserVmDetailVO.java b/core/src/com/cloud/vm/UserVmDetailVO.java
index bf2f323..245b577 100644
--- a/core/src/com/cloud/vm/UserVmDetailVO.java
+++ b/core/src/com/cloud/vm/UserVmDetailVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.vm;
 
+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="user_vm_details")
-public class UserVmDetailVO {
+public class UserVmDetailVO implements InternalIdentity {
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/core/src/com/cloud/vm/VMInstanceVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/vm/VMInstanceVO.java b/core/src/com/cloud/vm/VMInstanceVO.java
index 8cb5816..cd5d581 100644
--- a/core/src/com/cloud/vm/VMInstanceVO.java
+++ b/core/src/com/cloud/vm/VMInstanceVO.java
@@ -42,12 +42,13 @@ import com.cloud.utils.db.GenericDao;
 import com.cloud.utils.db.StateMachine;
 import com.cloud.utils.fsm.FiniteStateObject;
 import com.cloud.vm.VirtualMachine.State;
+import org.apache.cloudstack.api.InternalIdentity;
 
 @Entity
 @Table(name="vm_instance")
 @Inheritance(strategy=InheritanceType.JOINED)
 @DiscriminatorColumn(name="type", discriminatorType=DiscriminatorType.STRING, length=32)
-public class VMInstanceVO implements VirtualMachine, FiniteStateObject<State, VirtualMachine.Event> {
+public class VMInstanceVO implements VirtualMachine, InternalIdentity, FiniteStateObject<State, VirtualMachine.Event> {
 	@Id
     @TableGenerator(name="vm_instance_sq", table="sequence", pkColumnName="name", valueColumnName="value", pkColumnValue="vm_instance_seq", allocationSize=1)
     @Column(name="id", updatable=false, nullable = false)
@@ -470,5 +471,5 @@ public class VMInstanceVO implements VirtualMachine, FiniteStateObject<State, Vi
     public boolean canPlugNics() {
         return false;
     }
-
-}
+
+}

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/plugins/file-systems/netapp/src/com/cloud/netapp/LunVO.java
----------------------------------------------------------------------
diff --git a/plugins/file-systems/netapp/src/com/cloud/netapp/LunVO.java b/plugins/file-systems/netapp/src/com/cloud/netapp/LunVO.java
index af2e575..861bb3c 100644
--- a/plugins/file-systems/netapp/src/com/cloud/netapp/LunVO.java
+++ b/plugins/file-systems/netapp/src/com/cloud/netapp/LunVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.netapp;
 
+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="netapp_lun")
-public class LunVO {
+public class LunVO implements InternalIdentity {
 		
 	@Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
@@ -85,7 +87,7 @@ public class LunVO {
 		this.targetIqn = targetIqn;
 	}
 
-	public Long getId() {
+	public long getId() {
 		return id;
 	}
 

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/plugins/file-systems/netapp/src/com/cloud/netapp/NetappVolumeVO.java
----------------------------------------------------------------------
diff --git a/plugins/file-systems/netapp/src/com/cloud/netapp/NetappVolumeVO.java b/plugins/file-systems/netapp/src/com/cloud/netapp/NetappVolumeVO.java
index 04318d0..abcd20f 100644
--- a/plugins/file-systems/netapp/src/com/cloud/netapp/NetappVolumeVO.java
+++ b/plugins/file-systems/netapp/src/com/cloud/netapp/NetappVolumeVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.netapp;
 
+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="netapp_volume")
-public class NetappVolumeVO {
+public class NetappVolumeVO implements InternalIdentity {
 	
 	@Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
@@ -132,7 +134,7 @@ public class NetappVolumeVO {
 		this.volumeSize = volumeSize;
 	}
 	
-    public Long getId() {
+    public long getId() {
 		return id;
 	}
 

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/plugins/file-systems/netapp/src/com/cloud/netapp/PoolVO.java
----------------------------------------------------------------------
diff --git a/plugins/file-systems/netapp/src/com/cloud/netapp/PoolVO.java b/plugins/file-systems/netapp/src/com/cloud/netapp/PoolVO.java
index 713db46..71e8342 100644
--- a/plugins/file-systems/netapp/src/com/cloud/netapp/PoolVO.java
+++ b/plugins/file-systems/netapp/src/com/cloud/netapp/PoolVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.netapp;
 
+import org.apache.cloudstack.api.InternalIdentity;
+
 import javax.persistence.Column;
 import javax.persistence.Entity;
 import javax.persistence.GeneratedValue;
@@ -25,9 +27,9 @@ import javax.persistence.Table;
 
 @Entity
 @Table(name="netapp_pool")
-public class PoolVO {
+public class PoolVO implements InternalIdentity {
 	
-	public Long getId() {
+	public long getId() {
 		return id;
 	}
 

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057ac12d/plugins/hypervisors/simulator/src/com/cloud/simulator/MockConfigurationVO.java
----------------------------------------------------------------------
diff --git a/plugins/hypervisors/simulator/src/com/cloud/simulator/MockConfigurationVO.java b/plugins/hypervisors/simulator/src/com/cloud/simulator/MockConfigurationVO.java
index 3ed862b..5959347 100644
--- a/plugins/hypervisors/simulator/src/com/cloud/simulator/MockConfigurationVO.java
+++ b/plugins/hypervisors/simulator/src/com/cloud/simulator/MockConfigurationVO.java
@@ -16,6 +16,8 @@
 // under the License.
 package com.cloud.simulator;
 
+import org.apache.cloudstack.api.InternalIdentity;
+
 import java.util.HashMap;
 import java.util.Map;
 
@@ -28,7 +30,7 @@ import javax.persistence.Table;
 
 @Entity
 @Table(name="mockconfiguration")
-public class MockConfigurationVO {
+public class MockConfigurationVO 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/MockHostVO.java
----------------------------------------------------------------------
diff --git a/plugins/hypervisors/simulator/src/com/cloud/simulator/MockHostVO.java b/plugins/hypervisors/simulator/src/com/cloud/simulator/MockHostVO.java
index c86dfa6..0242135 100644
--- a/plugins/hypervisors/simulator/src/com/cloud/simulator/MockHostVO.java
+++ b/plugins/hypervisors/simulator/src/com/cloud/simulator/MockHostVO.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="mockhost")
 
-public class MockHostVO implements MockHost {
+public class MockHostVO implements MockHost, InternalIdentity {
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")