You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by ed...@apache.org on 2013/01/15 03:04:55 UTC
[12/44] Revert "Merge remote-tracking branch 'origin/javelin' into
javelin"
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/110465b5/server/src/com/cloud/configuration/DefaultComponentLibrary.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/configuration/DefaultComponentLibrary.java b/server/src/com/cloud/configuration/DefaultComponentLibrary.java
deleted file mode 100755
index 2bb5409..0000000
--- a/server/src/com/cloud/configuration/DefaultComponentLibrary.java
+++ /dev/null
@@ -1,495 +0,0 @@
-// 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.configuration;
-
-import java.io.Serializable;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import com.cloud.agent.manager.ClusteredAgentManagerImpl;
-import com.cloud.alert.AlertManagerImpl;
-import com.cloud.alert.dao.AlertDaoImpl;
-import com.cloud.api.query.QueryManagerImpl;
-import com.cloud.api.query.dao.AccountJoinDaoImpl;
-import com.cloud.api.query.dao.AsyncJobJoinDaoImpl;
-import com.cloud.api.query.dao.DomainRouterJoinDaoImpl;
-import com.cloud.api.query.dao.InstanceGroupJoinDaoImpl;
-import com.cloud.api.query.dao.ProjectAccountJoinDaoImpl;
-import com.cloud.api.query.dao.ProjectInvitationJoinDaoImpl;
-import com.cloud.api.query.dao.ProjectJoinDaoImpl;
-import com.cloud.api.query.dao.ResourceTagJoinDaoImpl;
-import com.cloud.api.query.dao.SecurityGroupJoinDaoImpl;
-import com.cloud.api.query.dao.StoragePoolJoinDaoImpl;
-import com.cloud.api.query.dao.UserAccountJoinDaoImpl;
-import com.cloud.api.query.dao.UserVmJoinDaoImpl;
-import com.cloud.api.query.dao.HostJoinDaoImpl;
-import com.cloud.api.query.dao.VolumeJoinDaoImpl;
-import com.cloud.async.AsyncJobExecutorContextImpl;
-import com.cloud.async.AsyncJobManagerImpl;
-import com.cloud.async.SyncQueueManagerImpl;
-import com.cloud.async.dao.AsyncJobDaoImpl;
-import com.cloud.async.dao.SyncQueueDaoImpl;
-import com.cloud.async.dao.SyncQueueItemDaoImpl;
-import com.cloud.capacity.CapacityManagerImpl;
-import com.cloud.capacity.dao.CapacityDaoImpl;
-import com.cloud.certificate.dao.CertificateDaoImpl;
-import com.cloud.cluster.CheckPointManagerImpl;
-import com.cloud.cluster.ClusterFenceManagerImpl;
-import com.cloud.cluster.ClusterManagerImpl;
-import com.cloud.cluster.agentlb.dao.HostTransferMapDaoImpl;
-import com.cloud.cluster.dao.ManagementServerHostDaoImpl;
-import com.cloud.cluster.dao.ManagementServerHostPeerDaoImpl;
-import com.cloud.cluster.dao.StackMaidDaoImpl;
-import com.cloud.configuration.dao.ConfigurationDaoImpl;
-import com.cloud.configuration.dao.ResourceCountDaoImpl;
-import com.cloud.configuration.dao.ResourceLimitDaoImpl;
-import com.cloud.consoleproxy.ConsoleProxyManagerImpl;
-import com.cloud.dao.EntityManager;
-import com.cloud.dao.EntityManagerImpl;
-import com.cloud.dc.ClusterDetailsDaoImpl;
-import com.cloud.dc.dao.AccountVlanMapDaoImpl;
-import com.cloud.dc.dao.ClusterDaoImpl;
-import com.cloud.dc.dao.ClusterVSMMapDaoImpl;
-import com.cloud.dc.dao.DataCenterDaoImpl;
-import com.cloud.dc.dao.DataCenterIpAddressDaoImpl;
-import com.cloud.dc.dao.DcDetailsDaoImpl;
-import com.cloud.dc.dao.HostPodDaoImpl;
-import com.cloud.dc.dao.PodVlanMapDaoImpl;
-import com.cloud.dc.dao.StorageNetworkIpAddressDaoImpl;
-import com.cloud.dc.dao.StorageNetworkIpRangeDaoImpl;
-import com.cloud.dc.dao.VlanDaoImpl;
-import com.cloud.domain.dao.DomainDaoImpl;
-import com.cloud.event.dao.EventDaoImpl;
-import com.cloud.event.dao.UsageEventDaoImpl;
-import com.cloud.ha.HighAvailabilityManagerImpl;
-import com.cloud.ha.dao.HighAvailabilityDaoImpl;
-import com.cloud.host.dao.HostDaoImpl;
-import com.cloud.host.dao.HostDetailsDaoImpl;
-import com.cloud.host.dao.HostTagsDaoImpl;
-import com.cloud.hypervisor.HypervisorGuruManagerImpl;
-import com.cloud.hypervisor.dao.HypervisorCapabilitiesDaoImpl;
-import com.cloud.keystore.KeystoreDaoImpl;
-import com.cloud.keystore.KeystoreManagerImpl;
-import com.cloud.maint.UpgradeManagerImpl;
-import com.cloud.maint.dao.AgentUpgradeDaoImpl;
-import com.cloud.network.ExternalLoadBalancerUsageManagerImpl;
-import com.cloud.network.NetworkManagerImpl;
-import com.cloud.network.StorageNetworkManagerImpl;
-import com.cloud.network.as.AutoScaleManagerImpl;
-import com.cloud.network.as.dao.AutoScalePolicyConditionMapDaoImpl;
-import com.cloud.network.as.dao.AutoScalePolicyDaoImpl;
-import com.cloud.network.as.dao.AutoScaleVmGroupDaoImpl;
-import com.cloud.network.as.dao.AutoScaleVmGroupPolicyMapDaoImpl;
-import com.cloud.network.as.dao.AutoScaleVmProfileDaoImpl;
-import com.cloud.network.as.dao.ConditionDaoImpl;
-import com.cloud.network.as.dao.CounterDaoImpl;
-import com.cloud.network.dao.ExternalFirewallDeviceDaoImpl;
-import com.cloud.network.dao.ExternalLoadBalancerDeviceDaoImpl;
-import com.cloud.network.dao.FirewallRulesCidrsDaoImpl;
-import com.cloud.network.dao.FirewallRulesDaoImpl;
-import com.cloud.network.dao.IPAddressDaoImpl;
-import com.cloud.network.dao.InlineLoadBalancerNicMapDaoImpl;
-import com.cloud.network.dao.LBStickinessPolicyDaoImpl;
-import com.cloud.network.dao.LoadBalancerDaoImpl;
-import com.cloud.network.dao.LoadBalancerVMMapDaoImpl;
-import com.cloud.network.dao.NetworkDaoImpl;
-import com.cloud.network.dao.NetworkDomainDaoImpl;
-import com.cloud.network.dao.NetworkExternalFirewallDaoImpl;
-import com.cloud.network.dao.NetworkExternalLoadBalancerDaoImpl;
-import com.cloud.network.dao.NetworkRuleConfigDaoImpl;
-import com.cloud.network.dao.NetworkServiceMapDaoImpl;
-import com.cloud.network.dao.PhysicalNetworkDaoImpl;
-import com.cloud.network.dao.PhysicalNetworkServiceProviderDaoImpl;
-import com.cloud.network.dao.PhysicalNetworkTrafficTypeDaoImpl;
-import com.cloud.network.dao.PortProfileDaoImpl;
-import com.cloud.network.dao.RemoteAccessVpnDaoImpl;
-import com.cloud.network.dao.Site2SiteCustomerGatewayDaoImpl;
-import com.cloud.network.dao.Site2SiteVpnConnectionDaoImpl;
-import com.cloud.network.dao.Site2SiteVpnGatewayDaoImpl;
-import com.cloud.network.dao.VirtualRouterProviderDaoImpl;
-import com.cloud.network.dao.VpnUserDaoImpl;
-import com.cloud.network.element.VirtualRouterElement;
-import com.cloud.network.element.VirtualRouterElementService;
-import com.cloud.network.firewall.FirewallManagerImpl;
-import com.cloud.network.lb.LoadBalancingRulesManagerImpl;
-import com.cloud.network.router.VpcVirtualNetworkApplianceManagerImpl;
-import com.cloud.network.rules.RulesManagerImpl;
-import com.cloud.network.rules.dao.PortForwardingRulesDaoImpl;
-import com.cloud.network.security.SecurityGroupManagerImpl2;
-import com.cloud.network.security.dao.SecurityGroupDaoImpl;
-import com.cloud.network.security.dao.SecurityGroupRuleDaoImpl;
-import com.cloud.network.security.dao.SecurityGroupRulesDaoImpl;
-import com.cloud.network.security.dao.SecurityGroupVMMapDaoImpl;
-import com.cloud.network.security.dao.SecurityGroupWorkDaoImpl;
-import com.cloud.network.security.dao.VmRulesetLogDaoImpl;
-import com.cloud.network.vpc.NetworkACLManagerImpl;
-import com.cloud.network.vpc.VpcManagerImpl;
-import com.cloud.network.vpc.dao.PrivateIpDaoImpl;
-import com.cloud.network.vpc.dao.StaticRouteDaoImpl;
-import com.cloud.network.vpc.dao.VpcDaoImpl;
-import com.cloud.network.vpc.dao.VpcGatewayDaoImpl;
-import com.cloud.network.vpc.dao.VpcOfferingDaoImpl;
-import com.cloud.network.vpc.dao.VpcOfferingServiceMapDaoImpl;
-import com.cloud.network.vpn.RemoteAccessVpnManagerImpl;
-import com.cloud.network.vpn.Site2SiteVpnManagerImpl;
-import com.cloud.offerings.dao.NetworkOfferingDaoImpl;
-import com.cloud.offerings.dao.NetworkOfferingServiceMapDaoImpl;
-import com.cloud.projects.ProjectManagerImpl;
-import com.cloud.projects.dao.ProjectAccountDaoImpl;
-import com.cloud.projects.dao.ProjectDaoImpl;
-import com.cloud.projects.dao.ProjectInvitationDaoImpl;
-import com.cloud.resource.ResourceManagerImpl;
-import com.cloud.resourcelimit.ResourceLimitManagerImpl;
-import com.cloud.service.dao.ServiceOfferingDaoImpl;
-import com.cloud.storage.OCFS2ManagerImpl;
-import com.cloud.storage.StorageManagerImpl;
-import com.cloud.storage.dao.DiskOfferingDaoImpl;
-import com.cloud.storage.dao.GuestOSCategoryDaoImpl;
-import com.cloud.storage.dao.GuestOSDaoImpl;
-import com.cloud.storage.dao.LaunchPermissionDaoImpl;
-import com.cloud.storage.dao.S3DaoImpl;
-import com.cloud.storage.dao.SnapshotDaoImpl;
-import com.cloud.storage.dao.SnapshotPolicyDaoImpl;
-import com.cloud.storage.dao.SnapshotScheduleDaoImpl;
-import com.cloud.storage.dao.StoragePoolDaoImpl;
-import com.cloud.storage.dao.StoragePoolHostDaoImpl;
-import com.cloud.storage.dao.StoragePoolWorkDaoImpl;
-import com.cloud.storage.dao.SwiftDaoImpl;
-import com.cloud.storage.dao.UploadDaoImpl;
-import com.cloud.storage.dao.VMTemplateDaoImpl;
-import com.cloud.storage.dao.VMTemplateDetailsDaoImpl;
-import com.cloud.storage.dao.VMTemplateHostDaoImpl;
-import com.cloud.storage.dao.VMTemplatePoolDaoImpl;
-import com.cloud.storage.dao.VMTemplateS3DaoImpl;
-import com.cloud.storage.dao.VMTemplateSwiftDaoImpl;
-import com.cloud.storage.dao.VMTemplateZoneDaoImpl;
-import com.cloud.storage.dao.VolumeDaoImpl;
-import com.cloud.storage.dao.VolumeHostDaoImpl;
-import com.cloud.storage.download.DownloadMonitorImpl;
-import com.cloud.storage.s3.S3ManagerImpl;
-import com.cloud.storage.secondary.SecondaryStorageManagerImpl;
-import com.cloud.storage.snapshot.SnapshotManagerImpl;
-import com.cloud.storage.snapshot.SnapshotSchedulerImpl;
-import com.cloud.storage.swift.SwiftManagerImpl;
-import com.cloud.storage.upload.UploadMonitorImpl;
-import com.cloud.tags.TaggedResourceManagerImpl;
-import com.cloud.tags.dao.ResourceTagsDaoImpl;
-import com.cloud.template.HyervisorTemplateAdapter;
-import com.cloud.template.TemplateAdapter;
-import com.cloud.template.TemplateAdapter.TemplateAdapterType;
-import com.cloud.template.TemplateManagerImpl;
-import com.cloud.user.AccountDetailsDaoImpl;
-import com.cloud.user.AccountManagerImpl;
-import com.cloud.user.DomainManagerImpl;
-import com.cloud.user.dao.AccountDaoImpl;
-import com.cloud.user.dao.SSHKeyPairDaoImpl;
-import com.cloud.user.dao.UserAccountDaoImpl;
-import com.cloud.user.dao.UserDaoImpl;
-import com.cloud.user.dao.UserStatisticsDaoImpl;
-import com.cloud.user.dao.UserStatsLogDaoImpl;
-import com.cloud.utils.component.Adapter;
-import com.cloud.utils.component.ComponentLibrary;
-import com.cloud.utils.component.ComponentLibraryBase;
-import com.cloud.utils.component.LegacyComponentLocator.ComponentInfo;
-import com.cloud.utils.component.Manager;
-import com.cloud.utils.component.PluggableService;
-import com.cloud.utils.db.GenericDao;
-import com.cloud.uuididentity.IdentityServiceImpl;
-import com.cloud.uuididentity.dao.IdentityDaoImpl;
-import com.cloud.vm.ClusteredVirtualMachineManagerImpl;
-import com.cloud.vm.ItWorkDaoImpl;
-import com.cloud.vm.UserVmManagerImpl;
-import com.cloud.vm.dao.ConsoleProxyDaoImpl;
-import com.cloud.vm.dao.DomainRouterDaoImpl;
-import com.cloud.vm.dao.InstanceGroupDaoImpl;
-import com.cloud.vm.dao.InstanceGroupVMMapDaoImpl;
-import com.cloud.vm.dao.NicDaoImpl;
-import com.cloud.vm.dao.SecondaryStorageVmDaoImpl;
-import com.cloud.vm.dao.UserVmDaoImpl;
-import com.cloud.vm.dao.UserVmDetailsDaoImpl;
-import com.cloud.vm.dao.VMInstanceDaoImpl;
-import com.cloud.event.dao.EventJoinDaoImpl;
-
-
-
-public class DefaultComponentLibrary extends ComponentLibraryBase implements ComponentLibrary {
- protected void populateDaos() {
- addDao("StackMaidDao", StackMaidDaoImpl.class);
- addDao("VMTemplateZoneDao", VMTemplateZoneDaoImpl.class);
- addDao("VMTemplateDetailsDao", VMTemplateDetailsDaoImpl.class);
- addDao("DomainRouterDao", DomainRouterDaoImpl.class);
- addDao("HostDao", HostDaoImpl.class);
- addDao("VMInstanceDao", VMInstanceDaoImpl.class);
- addDao("UserVmDao", UserVmDaoImpl.class);
- ComponentInfo<? extends GenericDao<?, ? extends Serializable>> info = addDao("ServiceOfferingDao", ServiceOfferingDaoImpl.class);
- info.addParameter("cache.size", "50");
- info.addParameter("cache.time.to.live", "600");
- info = addDao("DiskOfferingDao", DiskOfferingDaoImpl.class);
- info.addParameter("cache.size", "50");
- info.addParameter("cache.time.to.live", "600");
- info = addDao("DataCenterDao", DataCenterDaoImpl.class);
- info.addParameter("cache.size", "50");
- info.addParameter("cache.time.to.live", "600");
- info = addDao("HostPodDao", HostPodDaoImpl.class);
- info.addParameter("cache.size", "50");
- info.addParameter("cache.time.to.live", "600");
- addDao("IPAddressDao", IPAddressDaoImpl.class);
- info = addDao("VlanDao", VlanDaoImpl.class);
- info.addParameter("cache.size", "30");
- info.addParameter("cache.time.to.live", "3600");
- addDao("PodVlanMapDao", PodVlanMapDaoImpl.class);
- addDao("AccountVlanMapDao", AccountVlanMapDaoImpl.class);
- addDao("VolumeDao", VolumeDaoImpl.class);
- addDao("EventDao", EventDaoImpl.class);
- info = addDao("UserDao", UserDaoImpl.class);
- info.addParameter("cache.size", "5000");
- info.addParameter("cache.time.to.live", "300");
- addDao("UserStatisticsDao", UserStatisticsDaoImpl.class);
- addDao("UserStatsLogDao", UserStatsLogDaoImpl.class);
- addDao("FirewallRulesDao", FirewallRulesDaoImpl.class);
- addDao("LoadBalancerDao", LoadBalancerDaoImpl.class);
- addDao("NetworkRuleConfigDao", NetworkRuleConfigDaoImpl.class);
- addDao("LoadBalancerVMMapDao", LoadBalancerVMMapDaoImpl.class);
- addDao("LBStickinessPolicyDao", LBStickinessPolicyDaoImpl.class);
- addDao("CounterDao", CounterDaoImpl.class);
- addDao("ConditionDao", ConditionDaoImpl.class);
- addDao("AutoScalePolicyDao", AutoScalePolicyDaoImpl.class);
- addDao("AutoScalePolicyConditionMapDao", AutoScalePolicyConditionMapDaoImpl.class);
- addDao("AutoScaleVmProfileDao", AutoScaleVmProfileDaoImpl.class);
- addDao("AutoScaleVmGroupDao", AutoScaleVmGroupDaoImpl.class);
- addDao("AutoScaleVmGroupPolicyMapDao", AutoScaleVmGroupPolicyMapDaoImpl.class);
- addDao("DataCenterIpAddressDao", DataCenterIpAddressDaoImpl.class);
- addDao("SecurityGroupDao", SecurityGroupDaoImpl.class);
- addDao("SecurityGroupRuleDao", SecurityGroupRuleDaoImpl.class);
- addDao("SecurityGroupVMMapDao", SecurityGroupVMMapDaoImpl.class);
- addDao("SecurityGroupRulesDao", SecurityGroupRulesDaoImpl.class);
- addDao("SecurityGroupWorkDao", SecurityGroupWorkDaoImpl.class);
- addDao("VmRulesetLogDao", VmRulesetLogDaoImpl.class);
- addDao("AlertDao", AlertDaoImpl.class);
- addDao("CapacityDao", CapacityDaoImpl.class);
- addDao("DomainDao", DomainDaoImpl.class);
- addDao("AccountDao", AccountDaoImpl.class);
- addDao("ResourceLimitDao", ResourceLimitDaoImpl.class);
- addDao("ResourceCountDao", ResourceCountDaoImpl.class);
- addDao("UserAccountDao", UserAccountDaoImpl.class);
- addDao("VMTemplateHostDao", VMTemplateHostDaoImpl.class);
- addDao("VolumeHostDao", VolumeHostDaoImpl.class);
- addDao("VMTemplateSwiftDao", VMTemplateSwiftDaoImpl.class);
- addDao("VMTemplateS3Dao", VMTemplateS3DaoImpl.class);
- addDao("UploadDao", UploadDaoImpl.class);
- addDao("VMTemplatePoolDao", VMTemplatePoolDaoImpl.class);
- addDao("LaunchPermissionDao", LaunchPermissionDaoImpl.class);
- addDao("ConfigurationDao", ConfigurationDaoImpl.class);
- info = addDao("VMTemplateDao", VMTemplateDaoImpl.class);
- info.addParameter("cache.size", "100");
- info.addParameter("cache.time.to.live", "600");
- info.addParameter("routing.uniquename", "routing");
- addDao("HighAvailabilityDao", HighAvailabilityDaoImpl.class);
- addDao("ConsoleProxyDao", ConsoleProxyDaoImpl.class);
- addDao("SecondaryStorageVmDao", SecondaryStorageVmDaoImpl.class);
- addDao("ManagementServerHostDao", ManagementServerHostDaoImpl.class);
- addDao("ManagementServerHostPeerDao", ManagementServerHostPeerDaoImpl.class);
- addDao("AgentUpgradeDao", AgentUpgradeDaoImpl.class);
- addDao("SnapshotDao", SnapshotDaoImpl.class);
- addDao("AsyncJobDao", AsyncJobDaoImpl.class);
- addDao("SyncQueueDao", SyncQueueDaoImpl.class);
- addDao("SyncQueueItemDao", SyncQueueItemDaoImpl.class);
- addDao("GuestOSDao", GuestOSDaoImpl.class);
- addDao("GuestOSCategoryDao", GuestOSCategoryDaoImpl.class);
- addDao("StoragePoolDao", StoragePoolDaoImpl.class);
- addDao("StoragePoolHostDao", StoragePoolHostDaoImpl.class);
- addDao("DetailsDao", HostDetailsDaoImpl.class);
- addDao("SnapshotPolicyDao", SnapshotPolicyDaoImpl.class);
- addDao("SnapshotScheduleDao", SnapshotScheduleDaoImpl.class);
- addDao("ClusterDao", ClusterDaoImpl.class);
- addDao("CertificateDao", CertificateDaoImpl.class);
- addDao("NetworkConfigurationDao", NetworkDaoImpl.class);
- addDao("NetworkOfferingDao", NetworkOfferingDaoImpl.class);
- addDao("NicDao", NicDaoImpl.class);
- addDao("InstanceGroupDao", InstanceGroupDaoImpl.class);
- addDao("InstanceGroupJoinDao", InstanceGroupJoinDaoImpl.class);
- addDao("InstanceGroupVMMapDao", InstanceGroupVMMapDaoImpl.class);
- addDao("RemoteAccessVpnDao", RemoteAccessVpnDaoImpl.class);
- addDao("VpnUserDao", VpnUserDaoImpl.class);
- addDao("ItWorkDao", ItWorkDaoImpl.class);
- addDao("FirewallRulesDao", FirewallRulesDaoImpl.class);
- addDao("PortForwardingRulesDao", PortForwardingRulesDaoImpl.class);
- addDao("FirewallRulesCidrsDao", FirewallRulesCidrsDaoImpl.class);
- addDao("SSHKeyPairDao", SSHKeyPairDaoImpl.class);
- addDao("UsageEventDao", UsageEventDaoImpl.class);
- addDao("ClusterDetailsDao", ClusterDetailsDaoImpl.class);
- addDao("UserVmDetailsDao", UserVmDetailsDaoImpl.class);
- addDao("StoragePoolWorkDao", StoragePoolWorkDaoImpl.class);
- addDao("HostTagsDao", HostTagsDaoImpl.class);
- addDao("NetworkDomainDao", NetworkDomainDaoImpl.class);
- addDao("KeystoreDao", KeystoreDaoImpl.class);
- addDao("DcDetailsDao", DcDetailsDaoImpl.class);
- addDao("SwiftDao", SwiftDaoImpl.class);
- addDao("S3Dao", S3DaoImpl.class);
- addDao("AgentTransferMapDao", HostTransferMapDaoImpl.class);
- addDao("ProjectDao", ProjectDaoImpl.class);
- addDao("InlineLoadBalancerNicMapDao", InlineLoadBalancerNicMapDaoImpl.class);
- addDao("ProjectsAccountDao", ProjectAccountDaoImpl.class);
- addDao("ProjectInvitationDao", ProjectInvitationDaoImpl.class);
- addDao("IdentityDao", IdentityDaoImpl.class);
- addDao("AccountDetailsDao", AccountDetailsDaoImpl.class);
- addDao("NetworkOfferingServiceMapDao", NetworkOfferingServiceMapDaoImpl.class);
- info = addDao("HypervisorCapabilitiesDao",HypervisorCapabilitiesDaoImpl.class);
- info.addParameter("cache.size", "100");
- info.addParameter("cache.time.to.live", "600");
- addDao("PhysicalNetworkDao", PhysicalNetworkDaoImpl.class);
- addDao("PhysicalNetworkServiceProviderDao", PhysicalNetworkServiceProviderDaoImpl.class);
- addDao("VirtualRouterProviderDao", VirtualRouterProviderDaoImpl.class);
- addDao("ExternalLoadBalancerDeviceDao", ExternalLoadBalancerDeviceDaoImpl.class);
- addDao("ExternalFirewallDeviceDao", ExternalFirewallDeviceDaoImpl.class);
- addDao("NetworkExternalLoadBalancerDao", NetworkExternalLoadBalancerDaoImpl.class);
- addDao("NetworkExternalFirewallDao", NetworkExternalFirewallDaoImpl.class);
- addDao("ClusterVSMMapDao", ClusterVSMMapDaoImpl.class);
- addDao("PortProfileDao", PortProfileDaoImpl.class);
- addDao("PhysicalNetworkTrafficTypeDao", PhysicalNetworkTrafficTypeDaoImpl.class);
- addDao("NetworkServiceMapDao", NetworkServiceMapDaoImpl.class);
- addDao("StorageNetworkIpAddressDao", StorageNetworkIpAddressDaoImpl.class);
- addDao("StorageNetworkIpRangeDao", StorageNetworkIpRangeDaoImpl.class);
- addDao("VpcDao", VpcDaoImpl.class);
- addDao("VpcOfferingDao", VpcOfferingDaoImpl.class);
- addDao("VpcOfferingServiceMapDao", VpcOfferingServiceMapDaoImpl.class);
- addDao("PrivateIpDao", PrivateIpDaoImpl.class);
- addDao("VpcGatewayDao", VpcGatewayDaoImpl.class);
- addDao("StaticRouteDao", StaticRouteDaoImpl.class);
- addDao("TagsDao", ResourceTagsDaoImpl.class);
- addDao("Site2SiteVpnGatewayDao", Site2SiteVpnGatewayDaoImpl.class);
- addDao("Site2SiteCustomerGatewayDao", Site2SiteCustomerGatewayDaoImpl.class);
- addDao("Site2SiteVpnConnnectionDao", Site2SiteVpnConnectionDaoImpl.class);
-
- addDao("UserVmJoinDao", UserVmJoinDaoImpl.class);
- addDao("DomainRouterJoinDao", DomainRouterJoinDaoImpl.class);
- addDao("SecurityGroupJoinDao", SecurityGroupJoinDaoImpl.class);
- addDao("ResourceTagJoinDao", ResourceTagJoinDaoImpl.class);
- addDao("EventJoinDao", EventJoinDaoImpl.class);
- addDao("UserAccountJoinDao", UserAccountJoinDaoImpl.class);
- addDao("ProjectJoinDao", ProjectJoinDaoImpl.class);
- addDao("ProjectAccountJoinDao", ProjectAccountJoinDaoImpl.class);
- addDao("ProjectInvitationJoinDao", ProjectInvitationJoinDaoImpl.class);
- addDao("HostJoinDao", HostJoinDaoImpl.class);
- addDao("VolumeJoinDao", VolumeJoinDaoImpl.class);
- addDao("AccountJoinDao", AccountJoinDaoImpl.class);
- addDao("AsyncJobJoinDao", AsyncJobJoinDaoImpl.class);
- addDao("StoragePoolJoinDao", StoragePoolJoinDaoImpl.class);
- }
-
- @Override
- public synchronized Map<String, ComponentInfo<GenericDao<?, ?>>> getDaos() {
- if (_daos.size() == 0) {
- populateDaos();
- }
- //FIXME: Incorrect method return definition
- return _daos;
- }
-
- protected void populateManagers() {
- addManager("StackMaidManager", CheckPointManagerImpl.class);
- addManager("Cluster Manager", ClusterManagerImpl.class);
- addManager("ClusterFenceManager", ClusterFenceManagerImpl.class);
- addManager("ClusteredAgentManager", ClusteredAgentManagerImpl.class);
- addManager("SyncQueueManager", SyncQueueManagerImpl.class);
- addManager("AsyncJobManager", AsyncJobManagerImpl.class);
- addManager("AsyncJobExecutorContext", AsyncJobExecutorContextImpl.class);
- addManager("configuration manager", ConfigurationManagerImpl.class);
- addManager("account manager", AccountManagerImpl.class);
- addManager("domain manager", DomainManagerImpl.class);
- addManager("resource limit manager", ResourceLimitManagerImpl.class);
- addManager("network manager", NetworkManagerImpl.class);
- addManager("download manager", DownloadMonitorImpl.class);
- addManager("upload manager", UploadMonitorImpl.class);
- addManager("keystore manager", KeystoreManagerImpl.class);
- addManager("secondary storage vm manager", SecondaryStorageManagerImpl.class);
- addManager("vm manager", UserVmManagerImpl.class);
- addManager("upgrade manager", UpgradeManagerImpl.class);
- addManager("StorageManager", StorageManagerImpl.class);
- addManager("Alert Manager", AlertManagerImpl.class);
- addManager("Template Manager", TemplateManagerImpl.class);
- addManager("Snapshot Manager", SnapshotManagerImpl.class);
- addManager("SnapshotScheduler", SnapshotSchedulerImpl.class);
- addManager("SecurityGroupManager", SecurityGroupManagerImpl2.class);
- addManager("EntityManager", EntityManagerImpl.class);
- addManager("LoadBalancingRulesManager", LoadBalancingRulesManagerImpl.class);
- addManager("AutoScaleManager", AutoScaleManagerImpl.class);
- addManager("RulesManager", RulesManagerImpl.class);
- addManager("RemoteAccessVpnManager", RemoteAccessVpnManagerImpl.class);
- addManager("Capacity Manager", CapacityManagerImpl.class);
- addManager("VirtualMachineManager", ClusteredVirtualMachineManagerImpl.class);
- addManager("HypervisorGuruManager", HypervisorGuruManagerImpl.class);
- addManager("ResourceManager", ResourceManagerImpl.class);
- addManager("IdentityManager", IdentityServiceImpl.class);
- addManager("OCFS2Manager", OCFS2ManagerImpl.class);
- addManager("FirewallManager", FirewallManagerImpl.class);
- ComponentInfo<? extends Manager> info = addManager("ConsoleProxyManager", ConsoleProxyManagerImpl.class);
- info.addParameter("consoleproxy.sslEnabled", "true");
- addManager("ProjectManager", ProjectManagerImpl.class);
- addManager("SwiftManager", SwiftManagerImpl.class);
- addManager("S3Manager", S3ManagerImpl.class);
- addManager("StorageNetworkManager", StorageNetworkManagerImpl.class);
- addManager("ExternalLoadBalancerUsageManager", ExternalLoadBalancerUsageManagerImpl.class);
- addManager("HA Manager", HighAvailabilityManagerImpl.class);
- addManager("VPC Manager", VpcManagerImpl.class);
- addManager("VpcVirtualRouterManager", VpcVirtualNetworkApplianceManagerImpl.class);
- addManager("NetworkACLManager", NetworkACLManagerImpl.class);
- addManager("TaggedResourcesManager", TaggedResourceManagerImpl.class);
- addManager("Site2SiteVpnManager", Site2SiteVpnManagerImpl.class);
- addManager("QueryManager", QueryManagerImpl.class);
- }
-
- @Override
- public synchronized Map<String, ComponentInfo<Manager>> getManagers() {
- if (_managers.size() == 0) {
- populateManagers();
- }
- return _managers;
- }
-
- protected void populateAdapters() {
- addAdapter(TemplateAdapter.class, TemplateAdapterType.Hypervisor.getName(), HyervisorTemplateAdapter.class);
- }
-
- @Override
- public synchronized Map<String, List<ComponentInfo<Adapter>>> getAdapters() {
- if (_adapters.size() == 0) {
- populateAdapters();
- }
- return _adapters;
- }
-
- @Override
- public synchronized Map<Class<?>, Class<?>> getFactories() {
- HashMap<Class<?>, Class<?>> factories = new HashMap<Class<?>, Class<?>>();
- factories.put(EntityManager.class, EntityManagerImpl.class);
- return factories;
- }
-
- protected void populateServices() {
- addService("VirtualRouterElementService", VirtualRouterElementService.class, VirtualRouterElement.class);
- }
-
- @Override
- public synchronized Map<String, ComponentInfo<PluggableService>> getPluggableServices() {
- if (_pluggableServices.size() == 0) {
- populateServices();
- }
- return _pluggableServices;
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/110465b5/server/src/com/cloud/configuration/PremiumComponentLibrary.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/configuration/PremiumComponentLibrary.java b/server/src/com/cloud/configuration/PremiumComponentLibrary.java
deleted file mode 100755
index b25f462..0000000
--- a/server/src/com/cloud/configuration/PremiumComponentLibrary.java
+++ /dev/null
@@ -1,72 +0,0 @@
-// 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.configuration;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import com.cloud.baremetal.BareMetalPingServiceImpl;
-import com.cloud.baremetal.BareMetalTemplateAdapter;
-import com.cloud.baremetal.BareMetalVmManagerImpl;
-import com.cloud.baremetal.ExternalDhcpManagerImpl;
-import com.cloud.baremetal.PxeServerManager.PxeServerType;
-import com.cloud.baremetal.PxeServerManagerImpl;
-import com.cloud.baremetal.PxeServerService;
-import com.cloud.ha.HighAvailabilityManagerExtImpl;
-import com.cloud.network.ExternalNetworkDeviceManagerImpl;
-import com.cloud.network.NetworkUsageManagerImpl;
-import com.cloud.secstorage.CommandExecLogDaoImpl;
-import com.cloud.secstorage.PremiumSecondaryStorageManagerImpl;
-import com.cloud.template.TemplateAdapter;
-import com.cloud.template.TemplateAdapter.TemplateAdapterType;
-import com.cloud.upgrade.PremiumDatabaseUpgradeChecker;
-import com.cloud.usage.dao.UsageDaoImpl;
-import com.cloud.usage.dao.UsageIPAddressDaoImpl;
-import com.cloud.usage.dao.UsageJobDaoImpl;
-import com.cloud.utils.component.SystemIntegrityChecker;
-
-public class PremiumComponentLibrary extends DefaultComponentLibrary {
- @Override
- protected void populateDaos() {
- super.populateDaos();
- addDao("UsageJobDao", UsageJobDaoImpl.class);
- addDao("UsageDao", UsageDaoImpl.class);
- addDao("UsageIpAddressDao", UsageIPAddressDaoImpl.class);
- addDao("CommandExecLogDao", CommandExecLogDaoImpl.class);
- }
-
- @Override
- protected void populateManagers() {
- // override FOSS SSVM manager
- super.populateManagers();
- addManager("secondary storage vm manager", PremiumSecondaryStorageManagerImpl.class);
-
- addManager("HA Manager", HighAvailabilityManagerExtImpl.class);
- addManager("ExternalNetworkManager", ExternalNetworkDeviceManagerImpl.class);
- addManager("BareMetalVmManager", BareMetalVmManagerImpl.class);
- addManager("ExternalDhcpManager", ExternalDhcpManagerImpl.class);
- addManager("PxeServerManager", PxeServerManagerImpl.class);
- addManager("NetworkUsageManager", NetworkUsageManagerImpl.class);
- }
-
- @Override
- protected void populateAdapters() {
- super.populateAdapters();
- addAdapter(PxeServerService.class, PxeServerType.PING.getName(), BareMetalPingServiceImpl.class);
- addAdapter(TemplateAdapter.class, TemplateAdapterType.BareMetal.getName(), BareMetalTemplateAdapter.class);
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/110465b5/server/src/com/cloud/configuration/dao/ResourceCountDaoImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/configuration/dao/ResourceCountDaoImpl.java b/server/src/com/cloud/configuration/dao/ResourceCountDaoImpl.java
index 2c550ea..2612192 100644
--- a/server/src/com/cloud/configuration/dao/ResourceCountDaoImpl.java
+++ b/server/src/com/cloud/configuration/dao/ResourceCountDaoImpl.java
@@ -34,7 +34,6 @@ import com.cloud.configuration.ResourceLimit;
import com.cloud.domain.dao.DomainDaoImpl;
import com.cloud.exception.UnsupportedServiceException;
import com.cloud.user.dao.AccountDaoImpl;
-import com.cloud.utils.component.ComponentLocator;
import com.cloud.utils.db.DB;
import com.cloud.utils.db.GenericDaoBase;
import com.cloud.utils.db.SearchBuilder;
@@ -44,90 +43,90 @@ import com.cloud.utils.db.Transaction;
@Component
@Local(value={ResourceCountDao.class})
public class ResourceCountDaoImpl extends GenericDaoBase<ResourceCountVO, Long> implements ResourceCountDao {
- private SearchBuilder<ResourceCountVO> TypeSearch;
-
- private SearchBuilder<ResourceCountVO> AccountSearch;
- private SearchBuilder<ResourceCountVO> DomainSearch;
-
- //protected final DomainDaoImpl _domainDao = ComponentLocator.inject(DomainDaoImpl.class);
- //protected final AccountDaoImpl _accountDao = ComponentLocator.inject(AccountDaoImpl.class);
-
- @Inject protected DomainDaoImpl _domainDao;
- @Inject protected AccountDaoImpl _accountDao;
-
- public ResourceCountDaoImpl() {
- TypeSearch = createSearchBuilder();
- TypeSearch.and("type", TypeSearch.entity().getType(), SearchCriteria.Op.EQ);
- TypeSearch.and("accountId", TypeSearch.entity().getAccountId(), SearchCriteria.Op.EQ);
- TypeSearch.and("domainId", TypeSearch.entity().getDomainId(), SearchCriteria.Op.EQ);
- TypeSearch.done();
-
- AccountSearch = createSearchBuilder();
- AccountSearch.and("accountId", AccountSearch.entity().getAccountId(), SearchCriteria.Op.NNULL);
- AccountSearch.done();
-
- DomainSearch = createSearchBuilder();
- DomainSearch.and("domainId", DomainSearch.entity().getDomainId(), SearchCriteria.Op.NNULL);
- DomainSearch.done();
- }
-
- @Override
- public ResourceCountVO findByOwnerAndType(long ownerId, ResourceOwnerType ownerType, ResourceType type) {
- SearchCriteria<ResourceCountVO> sc = TypeSearch.create();
- sc.setParameters("type", type);
-
- if (ownerType == ResourceOwnerType.Account) {
- sc.setParameters("accountId", ownerId);
- return findOneIncludingRemovedBy(sc);
- } else if (ownerType == ResourceOwnerType.Domain) {
- sc.setParameters("domainId", ownerId);
+ private final SearchBuilder<ResourceCountVO> TypeSearch;
+
+ private final SearchBuilder<ResourceCountVO> AccountSearch;
+ private final SearchBuilder<ResourceCountVO> DomainSearch;
+
+ //protected final DomainDaoImpl _domainDao = ComponentLocator.inject(DomainDaoImpl.class);
+ //protected final AccountDaoImpl _accountDao = ComponentLocator.inject(AccountDaoImpl.class);
+
+ @Inject protected DomainDaoImpl _domainDao;
+ @Inject protected AccountDaoImpl _accountDao;
+
+ public ResourceCountDaoImpl() {
+ TypeSearch = createSearchBuilder();
+ TypeSearch.and("type", TypeSearch.entity().getType(), SearchCriteria.Op.EQ);
+ TypeSearch.and("accountId", TypeSearch.entity().getAccountId(), SearchCriteria.Op.EQ);
+ TypeSearch.and("domainId", TypeSearch.entity().getDomainId(), SearchCriteria.Op.EQ);
+ TypeSearch.done();
+
+ AccountSearch = createSearchBuilder();
+ AccountSearch.and("accountId", AccountSearch.entity().getAccountId(), SearchCriteria.Op.NNULL);
+ AccountSearch.done();
+
+ DomainSearch = createSearchBuilder();
+ DomainSearch.and("domainId", DomainSearch.entity().getDomainId(), SearchCriteria.Op.NNULL);
+ DomainSearch.done();
+ }
+
+ @Override
+ public ResourceCountVO findByOwnerAndType(long ownerId, ResourceOwnerType ownerType, ResourceType type) {
+ SearchCriteria<ResourceCountVO> sc = TypeSearch.create();
+ sc.setParameters("type", type);
+
+ if (ownerType == ResourceOwnerType.Account) {
+ sc.setParameters("accountId", ownerId);
+ return findOneIncludingRemovedBy(sc);
+ } else if (ownerType == ResourceOwnerType.Domain) {
+ sc.setParameters("domainId", ownerId);
return findOneIncludingRemovedBy(sc);
- } else {
- return null;
- }
- }
-
- @Override
- public long getResourceCount(long ownerId, ResourceOwnerType ownerType, ResourceType type) {
- ResourceCountVO vo = findByOwnerAndType(ownerId, ownerType, type);
- if (vo != null) {
- return vo.getCount();
- } else {
- return 0;
- }
- }
-
- @Override
- public void setResourceCount(long ownerId, ResourceOwnerType ownerType, ResourceType type, long count) {
- ResourceCountVO resourceCountVO = findByOwnerAndType(ownerId, ownerType, type);
+ } else {
+ return null;
+ }
+ }
+
+ @Override
+ public long getResourceCount(long ownerId, ResourceOwnerType ownerType, ResourceType type) {
+ ResourceCountVO vo = findByOwnerAndType(ownerId, ownerType, type);
+ if (vo != null) {
+ return vo.getCount();
+ } else {
+ return 0;
+ }
+ }
+
+ @Override
+ public void setResourceCount(long ownerId, ResourceOwnerType ownerType, ResourceType type, long count) {
+ ResourceCountVO resourceCountVO = findByOwnerAndType(ownerId, ownerType, type);
if (count != resourceCountVO.getCount()) {
resourceCountVO.setCount(count);
update(resourceCountVO.getId(), resourceCountVO);
}
- }
+ }
- @Override @Deprecated
- public void updateDomainCount(long domainId, ResourceType type, boolean increment, long delta) {
- delta = increment ? delta : delta * -1;
+ @Override @Deprecated
+ public void updateDomainCount(long domainId, ResourceType type, boolean increment, long delta) {
+ delta = increment ? delta : delta * -1;
ResourceCountVO resourceCountVO = findByOwnerAndType(domainId, ResourceOwnerType.Domain, type);
- resourceCountVO.setCount(resourceCountVO.getCount() + delta);
- update(resourceCountVO.getId(), resourceCountVO);
- }
-
- @Override
- public boolean updateById(long id, boolean increment, long delta) {
- delta = increment ? delta : delta * -1;
-
- ResourceCountVO resourceCountVO = findById(id);
- resourceCountVO.setCount(resourceCountVO.getCount() + delta);
- return update(resourceCountVO.getId(), resourceCountVO);
- }
-
- @Override
- public Set<Long> listRowsToUpdateForDomain(long domainId, ResourceType type) {
- Set<Long> rowIds = new HashSet<Long>();
- Set<Long> domainIdsToUpdate = _domainDao.getDomainParentIds(domainId);
+ resourceCountVO.setCount(resourceCountVO.getCount() + delta);
+ update(resourceCountVO.getId(), resourceCountVO);
+ }
+
+ @Override
+ public boolean updateById(long id, boolean increment, long delta) {
+ delta = increment ? delta : delta * -1;
+
+ ResourceCountVO resourceCountVO = findById(id);
+ resourceCountVO.setCount(resourceCountVO.getCount() + delta);
+ return update(resourceCountVO.getId(), resourceCountVO);
+ }
+
+ @Override
+ public Set<Long> listRowsToUpdateForDomain(long domainId, ResourceType type) {
+ Set<Long> rowIds = new HashSet<Long>();
+ Set<Long> domainIdsToUpdate = _domainDao.getDomainParentIds(domainId);
for (Long domainIdToUpdate : domainIdsToUpdate) {
ResourceCountVO domainCountRecord = findByOwnerAndType(domainIdToUpdate, ResourceOwnerType.Domain, type);
if (domainCountRecord != null) {
@@ -135,34 +134,34 @@ public class ResourceCountDaoImpl extends GenericDaoBase<ResourceCountVO, Long>
}
}
return rowIds;
- }
-
- @Override
- public Set<Long> listAllRowsToUpdate(long ownerId, ResourceOwnerType ownerType, ResourceType type) {
- Set<Long> rowIds = new HashSet<Long>();
-
- if (ownerType == ResourceOwnerType.Account) {
- //get records for account
- ResourceCountVO accountCountRecord = findByOwnerAndType(ownerId, ResourceOwnerType.Account, type);
- if (accountCountRecord != null) {
- rowIds.add(accountCountRecord.getId());
- }
-
- //get records for account's domain and all its parent domains
- rowIds.addAll(listRowsToUpdateForDomain(_accountDao.findByIdIncludingRemoved(ownerId).getDomainId(),type));
- } else if (ownerType == ResourceOwnerType.Domain) {
- return listRowsToUpdateForDomain(ownerId, type);
- }
-
- return rowIds;
- }
-
- @Override @DB
+ }
+
+ @Override
+ public Set<Long> listAllRowsToUpdate(long ownerId, ResourceOwnerType ownerType, ResourceType type) {
+ Set<Long> rowIds = new HashSet<Long>();
+
+ if (ownerType == ResourceOwnerType.Account) {
+ //get records for account
+ ResourceCountVO accountCountRecord = findByOwnerAndType(ownerId, ResourceOwnerType.Account, type);
+ if (accountCountRecord != null) {
+ rowIds.add(accountCountRecord.getId());
+ }
+
+ //get records for account's domain and all its parent domains
+ rowIds.addAll(listRowsToUpdateForDomain(_accountDao.findByIdIncludingRemoved(ownerId).getDomainId(),type));
+ } else if (ownerType == ResourceOwnerType.Domain) {
+ return listRowsToUpdateForDomain(ownerId, type);
+ }
+
+ return rowIds;
+ }
+
+ @Override @DB
public void createResourceCounts(long ownerId, ResourceLimit.ResourceOwnerType ownerType){
-
+
Transaction txn = Transaction.currentTxn();
txn.start();
-
+
ResourceType[] resourceTypes = Resource.ResourceType.values();
for (ResourceType resourceType : resourceTypes) {
if (!resourceType.supportsOwner(ownerType)) {
@@ -171,24 +170,24 @@ public class ResourceCountDaoImpl extends GenericDaoBase<ResourceCountVO, Long>
ResourceCountVO resourceCountVO = new ResourceCountVO(resourceType, 0, ownerId, ownerType);
persist(resourceCountVO);
}
-
+
txn.commit();
}
-
- private List<ResourceCountVO> listByDomainId(long domainId) {
- SearchCriteria<ResourceCountVO> sc = TypeSearch.create();
+
+ private List<ResourceCountVO> listByDomainId(long domainId) {
+ SearchCriteria<ResourceCountVO> sc = TypeSearch.create();
sc.setParameters("domainId", domainId);
return listBy(sc);
- }
-
+ }
+
private List<ResourceCountVO> listByAccountId(long accountId) {
- SearchCriteria<ResourceCountVO> sc = TypeSearch.create();
+ SearchCriteria<ResourceCountVO> sc = TypeSearch.create();
sc.setParameters("accountId", accountId);
return listBy(sc);
- }
-
+ }
+
@Override
public List<ResourceCountVO> listByOwnerId(long ownerId, ResourceOwnerType ownerType) {
if (ownerType == ResourceOwnerType.Account) {
@@ -199,26 +198,26 @@ public class ResourceCountDaoImpl extends GenericDaoBase<ResourceCountVO, Long>
return new ArrayList<ResourceCountVO>();
}
}
-
- @Override
- public List<ResourceCountVO> listResourceCountByOwnerType(ResourceOwnerType ownerType) {
- if (ownerType == ResourceOwnerType.Account) {
- return listBy(AccountSearch.create());
- } else if (ownerType == ResourceOwnerType.Domain) {
- return listBy(DomainSearch.create());
- } else {
- return new ArrayList<ResourceCountVO>();
- }
- }
-
- @Override
+
+ @Override
+ public List<ResourceCountVO> listResourceCountByOwnerType(ResourceOwnerType ownerType) {
+ if (ownerType == ResourceOwnerType.Account) {
+ return listBy(AccountSearch.create());
+ } else if (ownerType == ResourceOwnerType.Domain) {
+ return listBy(DomainSearch.create());
+ } else {
+ return new ArrayList<ResourceCountVO>();
+ }
+ }
+
+ @Override
public ResourceCountVO persist(ResourceCountVO resourceCountVO){
- ResourceOwnerType ownerType = resourceCountVO.getResourceOwnerType();
- ResourceType resourceType = resourceCountVO.getType();
- if (!resourceType.supportsOwner(ownerType)) {
- throw new UnsupportedServiceException("Resource type " + resourceType + " is not supported for owner of type " + ownerType.getName());
- }
-
+ ResourceOwnerType ownerType = resourceCountVO.getResourceOwnerType();
+ ResourceType resourceType = resourceCountVO.getType();
+ if (!resourceType.supportsOwner(ownerType)) {
+ throw new UnsupportedServiceException("Resource type " + resourceType + " is not supported for owner of type " + ownerType.getName());
+ }
+
return super.persist(resourceCountVO);
}
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/110465b5/server/src/com/cloud/consoleproxy/AgentBasedConsoleProxyManager.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/consoleproxy/AgentBasedConsoleProxyManager.java b/server/src/com/cloud/consoleproxy/AgentBasedConsoleProxyManager.java
index a3de946..a239997 100755
--- a/server/src/com/cloud/consoleproxy/AgentBasedConsoleProxyManager.java
+++ b/server/src/com/cloud/consoleproxy/AgentBasedConsoleProxyManager.java
@@ -49,7 +49,6 @@ import com.cloud.host.dao.HostDao;
import com.cloud.info.ConsoleProxyInfo;
import com.cloud.network.Network;
import com.cloud.utils.NumbersUtil;
-import com.cloud.utils.component.ComponentLocator;
import com.cloud.vm.ConsoleProxyVO;
import com.cloud.vm.ReservationContext;
import com.cloud.vm.UserVmVO;
@@ -87,9 +86,9 @@ public class AgentBasedConsoleProxyManager implements ConsoleProxyManager, Virtu
VirtualMachineManager _itMgr;
@Inject
protected ConsoleProxyDao _cpDao;
-
+
@Inject ConfigurationDao _configDao;
-
+
public int getVncPort(VMInstanceVO vm) {
if (vm.getHostId() == null) {
return -1;
@@ -112,7 +111,7 @@ public class AgentBasedConsoleProxyManager implements ConsoleProxyManager, Virtu
if (value != null) {
_consoleProxyUrlPort = NumbersUtil.parseInt(value, ConsoleProxyManager.DEFAULT_PROXY_URL_PORT);
}
-
+
value = configs.get("consoleproxy.port");
if (value != null) {
_consoleProxyPort = NumbersUtil.parseInt(value, ConsoleProxyManager.DEFAULT_PROXY_VNC_PORT);
@@ -126,10 +125,10 @@ public class AgentBasedConsoleProxyManager implements ConsoleProxyManager, Virtu
_instance = configs.get("instance.name");
_consoleProxyUrlDomain = configs.get("consoleproxy.url.domain");
-
+
_listener = new ConsoleProxyListener(this);
_agentMgr.registerForHostEvents(_listener, true, true, false);
-
+
_itMgr.registerGuru(VirtualMachine.Type.ConsoleProxy, this);
if (s_logger.isInfoEnabled()) {
@@ -177,20 +176,20 @@ public class AgentBasedConsoleProxyManager implements ConsoleProxyManager, Virtu
}
publicIp = host.getPrivateIpAddress();
}
-
+
int urlPort = _consoleProxyUrlPort;
if (host.getProxyPort() != null && host.getProxyPort().intValue() > 0) {
urlPort = host.getProxyPort().intValue();
}
-
+
return new ConsoleProxyInfo(_sslEnabled, publicIp, _consoleProxyPort, urlPort, _consoleProxyUrlDomain);
} else {
s_logger.warn("Host that VM is running is no longer available, console access to VM " + userVmId + " will be temporarily unavailable.");
}
return null;
}
-
+
@Override
public void onLoadReport(ConsoleProxyLoadReportCommand cmd) {
}
@@ -273,16 +272,16 @@ public class AgentBasedConsoleProxyManager implements ConsoleProxyManager, Virtu
@Override
public void setManagementState(ConsoleProxyManagementState state) {
}
-
+
@Override
public ConsoleProxyManagementState getManagementState() {
- return null;
+ return null;
}
-
+
@Override
public void resumeLastManagementState() {
}
-
+
@Override
public void startAgentHttpHandlerInVM(StartupProxyCommand startupCmd) {
}
@@ -299,7 +298,7 @@ public class AgentBasedConsoleProxyManager implements ConsoleProxyManager, Virtu
}
return VirtualMachineName.getConsoleProxyId(vmName);
}
-
+
@Override
public ConsoleProxyVO findByName(String name) {
// TODO Auto-generated method stub
@@ -329,7 +328,7 @@ public class AgentBasedConsoleProxyManager implements ConsoleProxyManager, Virtu
// TODO Auto-generated method stub
return false;
}
-
+
@Override
public boolean finalizeCommandsOnStart(Commands cmds, VirtualMachineProfile<ConsoleProxyVO> profile) {
// TODO Auto-generated method stub
@@ -346,7 +345,7 @@ public class AgentBasedConsoleProxyManager implements ConsoleProxyManager, Virtu
public void finalizeStop(VirtualMachineProfile<ConsoleProxyVO> profile, StopAnswer answer) {
// TODO Auto-generated method stub
}
-
+
@Override
public void finalizeExpunge(ConsoleProxyVO proxy) {
}
@@ -366,7 +365,7 @@ public class AgentBasedConsoleProxyManager implements ConsoleProxyManager, Virtu
//not supported
throw new UnsupportedOperationException("Unplug nic is not supported for vm of type " + vm.getType());
}
-
+
@Override
public void prepareStop(VirtualMachineProfile<ConsoleProxyVO> profile) {
}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/110465b5/server/src/com/cloud/consoleproxy/ConsoleProxyBalanceAllocator.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/consoleproxy/ConsoleProxyBalanceAllocator.java b/server/src/com/cloud/consoleproxy/ConsoleProxyBalanceAllocator.java
index 84f6fac..0a045eb 100644
--- a/server/src/com/cloud/consoleproxy/ConsoleProxyBalanceAllocator.java
+++ b/server/src/com/cloud/consoleproxy/ConsoleProxyBalanceAllocator.java
@@ -27,9 +27,6 @@ import javax.naming.ConfigurationException;
import org.springframework.stereotype.Component;
-import com.cloud.configuration.dao.ConfigurationDao;
-import com.cloud.utils.NumbersUtil;
-import com.cloud.utils.component.ComponentLocator;
import com.cloud.vm.ConsoleProxyVO;
import edu.emory.mathcs.backport.java.util.Collections;
@@ -37,45 +34,45 @@ import edu.emory.mathcs.backport.java.util.Collections;
@Component
@Local(value={ConsoleProxyAllocator.class})
public class ConsoleProxyBalanceAllocator implements ConsoleProxyAllocator {
-
+
private String _name;
private final Random _rand = new Random(System.currentTimeMillis());
-
+
@Override
- public ConsoleProxyVO allocProxy(List<ConsoleProxyVO> candidates, final Map<Long, Integer> loadInfo, long dataCenterId) {
- if(candidates != null) {
-
- List<ConsoleProxyVO> allocationList = new ArrayList<ConsoleProxyVO>();
- for(ConsoleProxyVO proxy : candidates) {
- allocationList.add(proxy);
- }
-
- Collections.sort(candidates, new Comparator<ConsoleProxyVO> () {
- @Override
- public int compare(ConsoleProxyVO x, ConsoleProxyVO y) {
- Integer loadOfX = loadInfo.get(x.getId());
- Integer loadOfY = loadInfo.get(y.getId());
-
- if(loadOfX != null && loadOfY != null) {
- if(loadOfX < loadOfY)
- return -1;
- else if(loadOfX > loadOfY)
- return 1;
- return 0;
- } else if(loadOfX == null && loadOfY == null) {
- return 0;
- } else {
- if(loadOfX == null)
- return -1;
- return 1;
- }
- }
- });
-
- if(allocationList.size() > 0)
- return allocationList.get(0);
- }
- return null;
+ public ConsoleProxyVO allocProxy(List<ConsoleProxyVO> candidates, final Map<Long, Integer> loadInfo, long dataCenterId) {
+ if(candidates != null) {
+
+ List<ConsoleProxyVO> allocationList = new ArrayList<ConsoleProxyVO>();
+ for(ConsoleProxyVO proxy : candidates) {
+ allocationList.add(proxy);
+ }
+
+ Collections.sort(candidates, new Comparator<ConsoleProxyVO> () {
+ @Override
+ public int compare(ConsoleProxyVO x, ConsoleProxyVO y) {
+ Integer loadOfX = loadInfo.get(x.getId());
+ Integer loadOfY = loadInfo.get(y.getId());
+
+ if(loadOfX != null && loadOfY != null) {
+ if(loadOfX < loadOfY)
+ return -1;
+ else if(loadOfX > loadOfY)
+ return 1;
+ return 0;
+ } else if(loadOfX == null && loadOfY == null) {
+ return 0;
+ } else {
+ if(loadOfX == null)
+ return -1;
+ return 1;
+ }
+ }
+ });
+
+ if(allocationList.size() > 0)
+ return allocationList.get(0);
+ }
+ return null;
}
@Override
@@ -83,7 +80,7 @@ public class ConsoleProxyBalanceAllocator implements ConsoleProxyAllocator {
_name = name;
return true;
}
-
+
@Override
public String getName() {
return _name;
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/110465b5/server/src/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java b/server/src/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java
index 6ceeb5f..502ba30 100755
--- a/server/src/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java
+++ b/server/src/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java
@@ -19,7 +19,6 @@ package com.cloud.consoleproxy;
import java.nio.charset.Charset;
import java.util.ArrayList;
import java.util.Date;
-import java.util.Enumeration;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
@@ -32,6 +31,9 @@ import javax.inject.Inject;
import javax.naming.ConfigurationException;
import javax.persistence.Table;
+import org.apache.cloudstack.api.ServerApiException;
+import com.cloud.offering.DiskOffering;
+import com.cloud.storage.dao.DiskOfferingDao;
import org.apache.log4j.Logger;
import org.springframework.context.annotation.Primary;
import org.springframework.stereotype.Component;
@@ -55,7 +57,6 @@ import com.cloud.agent.api.proxy.StartConsoleProxyAgentHttpHandlerCommand;
import com.cloud.agent.api.to.NicTO;
import com.cloud.agent.api.to.VirtualMachineTO;
import com.cloud.agent.manager.Commands;
-import org.apache.cloudstack.api.ServerApiException;
import com.cloud.api.commands.DestroyConsoleProxyCmd;
import com.cloud.certificate.dao.CertificateDao;
import com.cloud.cluster.ClusterManager;
@@ -110,7 +111,6 @@ import com.cloud.resource.UnableDeleteHostException;
import com.cloud.service.ServiceOfferingVO;
import com.cloud.service.dao.ServiceOfferingDao;
import com.cloud.servlet.ConsoleProxyServlet;
-import com.cloud.storage.DiskOfferingVO;
import com.cloud.storage.StorageManager;
import com.cloud.storage.StoragePoolStatus;
import com.cloud.storage.StoragePoolVO;
@@ -128,8 +128,6 @@ import com.cloud.utils.DateUtil;
import com.cloud.utils.NumbersUtil;
import com.cloud.utils.Pair;
import com.cloud.utils.Ternary;
-import com.cloud.utils.component.Adapters;
-import com.cloud.utils.component.ComponentLocator;
import com.cloud.utils.component.Manager;
import com.cloud.utils.db.DB;
import com.cloud.utils.db.GlobalLock;
@@ -140,7 +138,6 @@ import com.cloud.utils.db.Transaction;
import com.cloud.utils.events.SubscriptionMgr;
import com.cloud.utils.exception.CloudRuntimeException;
import com.cloud.utils.net.NetUtils;
-import com.cloud.uuididentity.dao.IdentityDao;
import com.cloud.vm.ConsoleProxyVO;
import com.cloud.vm.NicProfile;
import com.cloud.vm.ReservationContext;
@@ -221,6 +218,8 @@ public class ConsoleProxyManagerImpl implements ConsoleProxyManager, ConsoleProx
@Inject
ServiceOfferingDao _offeringDao;
@Inject
+ DiskOfferingDao _diskOfferingDao;
+ @Inject
NetworkOfferingDao _networkOfferingDao;
@Inject
StoragePoolDao _storagePoolDao;
@@ -229,14 +228,12 @@ public class ConsoleProxyManagerImpl implements ConsoleProxyManager, ConsoleProx
@Inject
ResourceManager _resourceMgr;
@Inject
- IdentityDao _identityDao;
- @Inject
NetworkDao _networkDao;
@Inject
RulesManager _rulesMgr;
@Inject
IPAddressDao _ipAddressDao;
-
+
private ConsoleProxyListener _listener;
private ServiceOfferingVO _serviceOffering;
@@ -269,7 +266,7 @@ public class ConsoleProxyManagerImpl implements ConsoleProxyManager, ConsoleProx
private Map<Long, ZoneHostInfo> _zoneHostInfoMap; // map <zone id, info about running host in zone>
private Map<Long, ConsoleProxyLoadInfo> _zoneProxyCountMap; // map <zone id, info about proxy VMs count in zone>
private Map<Long, ConsoleProxyLoadInfo> _zoneVmCountMap; // map <zone id, info about running VMs count in zone>
-
+
private String _hashKey;
private String _staticPublicIp;
private int _staticPort;
@@ -478,9 +475,9 @@ public class ConsoleProxyManagerImpl implements ConsoleProxyManager, ConsoleProx
assert (ksVo != null);
if (_staticPublicIp == null) {
- return new ConsoleProxyInfo(proxy.isSslEnabled(), proxy.getPublicIpAddress(), _consoleProxyPort, proxy.getPort(), ksVo.getDomainSuffix());
+ return new ConsoleProxyInfo(proxy.isSslEnabled(), proxy.getPublicIpAddress(), _consoleProxyPort, proxy.getPort(), ksVo.getDomainSuffix());
} else {
- return new ConsoleProxyInfo(proxy.isSslEnabled(), _staticPublicIp, _consoleProxyPort, _staticPort, ksVo.getDomainSuffix());
+ return new ConsoleProxyInfo(proxy.isSslEnabled(), _staticPublicIp, _consoleProxyPort, _staticPort, ksVo.getDomainSuffix());
}
}
@@ -809,10 +806,10 @@ public class ConsoleProxyManagerImpl implements ConsoleProxyManager, ConsoleProx
private ConsoleProxyAllocator getCurrentAllocator() {
// for now, only one adapter is supported
- for(ConsoleProxyAllocator allocator : _consoleProxyAllocators) {
- return allocator;
- }
-
+ for(ConsoleProxyAllocator allocator : _consoleProxyAllocators) {
+ return allocator;
+ }
+
return null;
}
@@ -903,26 +900,26 @@ public class ConsoleProxyManagerImpl implements ConsoleProxyManager, ConsoleProx
}
if(!cmd.isReauthenticating()) {
- String ticket = ConsoleProxyServlet.genAccessTicket(cmd.getHost(), cmd.getPort(), cmd.getSid(), cmd.getVmId());
- if (s_logger.isDebugEnabled()) {
- s_logger.debug("Console authentication. Ticket in 1 minute boundary for " + cmd.getHost() + ":" + cmd.getPort() + "-" + cmd.getVmId() + " is " + ticket);
- }
-
- if (!ticket.equals(ticketInUrl)) {
- Date now = new Date();
- // considering of minute round-up
- String minuteEarlyTicket = ConsoleProxyServlet.genAccessTicket(cmd.getHost(), cmd.getPort(), cmd.getSid(), cmd.getVmId(), new Date(now.getTime() - 60 * 1000));
-
- if (s_logger.isDebugEnabled()) {
- s_logger.debug("Console authentication. Ticket in 2-minute boundary for " + cmd.getHost() + ":" + cmd.getPort() + "-" + cmd.getVmId() + " is " + minuteEarlyTicket);
- }
-
- if (!minuteEarlyTicket.equals(ticketInUrl)) {
- s_logger.error("Access ticket expired or has been modified. vmId: " + cmd.getVmId() + "ticket in URL: " + ticketInUrl + ", tickets to check against: " + ticket + ","
- + minuteEarlyTicket);
- return new ConsoleAccessAuthenticationAnswer(cmd, false);
- }
- }
+ String ticket = ConsoleProxyServlet.genAccessTicket(cmd.getHost(), cmd.getPort(), cmd.getSid(), cmd.getVmId());
+ if (s_logger.isDebugEnabled()) {
+ s_logger.debug("Console authentication. Ticket in 1 minute boundary for " + cmd.getHost() + ":" + cmd.getPort() + "-" + cmd.getVmId() + " is " + ticket);
+ }
+
+ if (!ticket.equals(ticketInUrl)) {
+ Date now = new Date();
+ // considering of minute round-up
+ String minuteEarlyTicket = ConsoleProxyServlet.genAccessTicket(cmd.getHost(), cmd.getPort(), cmd.getSid(), cmd.getVmId(), new Date(now.getTime() - 60 * 1000));
+
+ if (s_logger.isDebugEnabled()) {
+ s_logger.debug("Console authentication. Ticket in 2-minute boundary for " + cmd.getHost() + ":" + cmd.getPort() + "-" + cmd.getVmId() + " is " + minuteEarlyTicket);
+ }
+
+ if (!minuteEarlyTicket.equals(ticketInUrl)) {
+ s_logger.error("Access ticket expired or has been modified. vmId: " + cmd.getVmId() + "ticket in URL: " + ticketInUrl + ", tickets to check against: " + ticket + ","
+ + minuteEarlyTicket);
+ return new ConsoleAccessAuthenticationAnswer(cmd, false);
+ }
+ }
}
if (cmd.getVmId() != null && cmd.getVmId().isEmpty()) {
@@ -932,14 +929,12 @@ public class ConsoleProxyManagerImpl implements ConsoleProxyManager, ConsoleProx
return new ConsoleAccessAuthenticationAnswer(cmd, false);
}
- vmId = _identityDao.getIdentityId("vm_instance", cmd.getVmId());
- if (vmId == null) {
- s_logger.error("Invalid vm id " + cmd.getVmId() + " sent from console access authentication");
- return new ConsoleAccessAuthenticationAnswer(cmd, false);
+ VirtualMachine vm = _instanceDao.findByUuid(cmd.getVmId());
+ if (vm == null) {
+ vm = _instanceDao.findById(Long.parseLong(cmd.getVmId()));
}
-
- VMInstanceVO vm = _instanceDao.findById(vmId);
if (vm == null) {
+ s_logger.error("Invalid vm id " + cmd.getVmId() + " sent from console access authentication");
return new ConsoleAccessAuthenticationAnswer(cmd, false);
}
@@ -959,38 +954,38 @@ public class ConsoleProxyManagerImpl implements ConsoleProxyManager, ConsoleProx
s_logger.warn("sid " + sid + " in url does not match stored sid " + vm.getVncPassword());
return new ConsoleAccessAuthenticationAnswer(cmd, false);
}
-
+
if(cmd.isReauthenticating()) {
ConsoleAccessAuthenticationAnswer authenticationAnswer = new ConsoleAccessAuthenticationAnswer(cmd, true);
authenticationAnswer.setReauthenticating(true);
s_logger.info("Re-authentication request, ask host " + vm.getHostId() + " for new console info");
- GetVncPortAnswer answer = (GetVncPortAnswer) _agentMgr.easySend(vm.getHostId(), new
- GetVncPortCommand(vm.getId(), vm.getInstanceName()));
+ GetVncPortAnswer answer = (GetVncPortAnswer) _agentMgr.easySend(vm.getHostId(), new
+ GetVncPortCommand(vm.getId(), vm.getInstanceName()));
if (answer != null && answer.getResult()) {
- Ternary<String, String, String> parsedHostInfo = ConsoleProxyServlet.parseHostInfo(answer.getAddress());
-
- if(parsedHostInfo.second() != null && parsedHostInfo.third() != null) {
-
+ Ternary<String, String, String> parsedHostInfo = ConsoleProxyServlet.parseHostInfo(answer.getAddress());
+
+ if(parsedHostInfo.second() != null && parsedHostInfo.third() != null) {
+
s_logger.info("Re-authentication result. vm: " + vm.getId() + ", tunnel url: " + parsedHostInfo.second()
- + ", tunnel session: " + parsedHostInfo.third());
-
- authenticationAnswer.setTunnelUrl(parsedHostInfo.second());
- authenticationAnswer.setTunnelSession(parsedHostInfo.third());
- } else {
+ + ", tunnel session: " + parsedHostInfo.third());
+
+ authenticationAnswer.setTunnelUrl(parsedHostInfo.second());
+ authenticationAnswer.setTunnelSession(parsedHostInfo.third());
+ } else {
s_logger.info("Re-authentication result. vm: " + vm.getId() + ", host address: " + parsedHostInfo.first()
- + ", port: " + answer.getPort());
-
- authenticationAnswer.setHost(parsedHostInfo.first());
- authenticationAnswer.setPort(answer.getPort());
- }
+ + ", port: " + answer.getPort());
+
+ authenticationAnswer.setHost(parsedHostInfo.first());
+ authenticationAnswer.setPort(answer.getPort());
+ }
} else {
s_logger.warn("Re-authentication request failed");
-
- authenticationAnswer.setSuccess(false);
+
+ authenticationAnswer.setSuccess(false);
}
-
+
return authenticationAnswer;
}
@@ -1198,11 +1193,11 @@ public class ConsoleProxyManagerImpl implements ConsoleProxyManager, ConsoleProx
}
} else {
if (s_logger.isDebugEnabled()) {
- if (secondaryStorageHost != null) {
- s_logger.debug("Zone host is ready, but console proxy template: " + template.getId() + " is not ready on secondary storage: " + secondaryStorageHost.getId());
- } else {
- s_logger.debug("Zone host is ready, but console proxy template: " + template.getId() + " is not ready on secondary storage.");
- }
+ if (secondaryStorageHost != null) {
+ s_logger.debug("Zone host is ready, but console proxy template: " + template.getId() + " is not ready on secondary storage: " + secondaryStorageHost.getId());
+ } else {
+ s_logger.debug("Zone host is ready, but console proxy template: " + template.getId() + " is not ready on secondary storage.");
+ }
}
}
}
@@ -1411,7 +1406,7 @@ public class ConsoleProxyManagerImpl implements ConsoleProxyManager, ConsoleProx
result = result && _hostDao.remove(host.getId());
}
}
-
+
return result;
} catch (ResourceUnavailableException e) {
s_logger.warn("Unable to expunge " + proxy, e);
@@ -1514,26 +1509,23 @@ public class ConsoleProxyManagerImpl implements ConsoleProxyManager, ConsoleProx
_itMgr.registerGuru(VirtualMachine.Type.ConsoleProxy, this);
boolean useLocalStorage = Boolean.parseBoolean(configs.get(Config.SystemVMUseLocalStorage.key()));
-
+
//check if there is a default service offering configured
- String cpvmSrvcOffIdStr = configs.get(Config.ConsoleProxyServiceOffering.key());
+ String cpvmSrvcOffIdStr = configs.get(Config.ConsoleProxyServiceOffering.key());
if (cpvmSrvcOffIdStr != null) {
-
- Long cpvmSrvcOffId = null;
- try {
- cpvmSrvcOffId = _identityDao.getIdentityId(DiskOfferingVO.class.getAnnotation(Table.class).name(),cpvmSrvcOffIdStr);
- } catch (Exception e) {
- String msg = "Can't find system service offering specified by global config, uuid=" + cpvmSrvcOffIdStr + " for console proxy vm";
- s_logger.warn(msg);
- }
- if(cpvmSrvcOffId != null){
- _serviceOffering = _offeringDao.findById(cpvmSrvcOffId);
+ DiskOffering diskOffering = _diskOfferingDao.findByUuid(cpvmSrvcOffIdStr);
+ if (diskOffering == null)
+ diskOffering = _diskOfferingDao.findById(Long.parseLong(cpvmSrvcOffIdStr));
+ if (diskOffering != null) {
+ _serviceOffering = _offeringDao.findById(diskOffering.getId());
+ } else {
+ s_logger.warn("Can't find system service offering specified by global config, uuid=" + cpvmSrvcOffIdStr + " for console proxy vm");
}
- }
+ }
if(_serviceOffering == null || !_serviceOffering.getSystemUse()){
- int ramSize = NumbersUtil.parseInt(_configDao.getValue("console.ram.size"), DEFAULT_PROXY_VM_RAMSIZE);
- int cpuFreq = NumbersUtil.parseInt(_configDao.getValue("console.cpu.mhz"), DEFAULT_PROXY_VM_CPUMHZ);
+ int ramSize = NumbersUtil.parseInt(_configDao.getValue("console.ram.size"), DEFAULT_PROXY_VM_RAMSIZE);
+ int cpuFreq = NumbersUtil.parseInt(_configDao.getValue("console.cpu.mhz"), DEFAULT_PROXY_VM_CPUMHZ);
_serviceOffering = new ServiceOfferingVO("System Offering For Console Proxy", 1, ramSize, cpuFreq, 0, 0, false, null, useLocalStorage, true, null, true, VirtualMachine.Type.ConsoleProxy, true);
_serviceOffering.setUniqueName(ServiceOffering.consoleProxyDefaultOffUniqueName);
_serviceOffering = _offeringDao.persistSystemServiceOffering(_serviceOffering);
@@ -1552,7 +1544,7 @@ public class ConsoleProxyManagerImpl implements ConsoleProxyManager, ConsoleProx
_staticPublicIp = _configDao.getValue("consoleproxy.static.publicIp");
if (_staticPublicIp != null) {
- _staticPort = NumbersUtil.parseInt(_configDao.getValue("consoleproxy.static.port"), 8443);
+ _staticPort = NumbersUtil.parseInt(_configDao.getValue("consoleproxy.static.port"), 8443);
}
if (s_logger.isInfoEnabled()) {
@@ -2011,7 +2003,7 @@ public class ConsoleProxyManagerImpl implements ConsoleProxyManager, ConsoleProx
sc.addAnd(sc.getEntity().getName(), Op.EQ, name);
return sc.find();
}
-
+
public String getHashKey() {
// although we may have race conditioning here, database transaction serialization should
// give us the same key
@@ -2036,8 +2028,8 @@ public class ConsoleProxyManagerImpl implements ConsoleProxyManager, ConsoleProx
//not supported
throw new UnsupportedOperationException("Unplug nic is not supported for vm of type " + vm.getType());
}
-
- @Override
- public void prepareStop(VirtualMachineProfile<ConsoleProxyVO> profile) {
- }
+
+ @Override
+ public void prepareStop(VirtualMachineProfile<ConsoleProxyVO> profile) {
+ }
}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/110465b5/server/src/com/cloud/consoleproxy/StaticConsoleProxyManager.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/consoleproxy/StaticConsoleProxyManager.java b/server/src/com/cloud/consoleproxy/StaticConsoleProxyManager.java
index c28a2e4..13d3112 100755
--- a/server/src/com/cloud/consoleproxy/StaticConsoleProxyManager.java
+++ b/server/src/com/cloud/consoleproxy/StaticConsoleProxyManager.java
@@ -30,7 +30,6 @@ import com.cloud.host.Host.Type;
import com.cloud.host.HostVO;
import com.cloud.info.ConsoleProxyInfo;
import com.cloud.resource.ResourceManager;
-import com.cloud.utils.component.ComponentLocator;
import com.cloud.vm.VMInstanceVO;
import com.cloud.vm.dao.ConsoleProxyDao;
@@ -41,31 +40,31 @@ public class StaticConsoleProxyManager extends AgentBasedConsoleProxyManager imp
@Inject ConsoleProxyDao _proxyDao;
@Inject ResourceManager _resourceMgr;
@Inject ConfigurationDao _configDao;
-
+
@Override
protected HostVO findHost(VMInstanceVO vm) {
-
+
List<HostVO> hosts = _resourceMgr.listAllUpAndEnabledHostsInOneZoneByType(Type.ConsoleProxy, vm.getDataCenterIdToDeployIn());
-
+
return hosts.isEmpty() ? null : hosts.get(0);
}
-
+
@Override
public ConsoleProxyInfo assignProxy(long dataCenterId, long userVmId) {
return new ConsoleProxyInfo(false, _ip, _consoleProxyPort, _consoleProxyUrlPort, _consoleProxyUrlDomain);
}
-
+
@Override
public boolean configure(String name, Map<String, Object> params) throws ConfigurationException {
super.configure(name, params);
-
+
Map<String, String> dbParams = _configDao.getConfiguration("ManagementServer", params);
-
+
_ip = dbParams.get("public.ip");
if (_ip == null) {
_ip = "127.0.0.1";
}
-
+
return true;
}
}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/110465b5/server/src/com/cloud/dc/dao/ClusterDaoImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/dc/dao/ClusterDaoImpl.java b/server/src/com/cloud/dc/dao/ClusterDaoImpl.java
index f06b24d..86dc65e 100644
--- a/server/src/com/cloud/dc/dao/ClusterDaoImpl.java
+++ b/server/src/com/cloud/dc/dao/ClusterDaoImpl.java
@@ -33,7 +33,6 @@ import com.cloud.dc.ClusterVO;
import com.cloud.dc.HostPodVO;
import com.cloud.hypervisor.Hypervisor.HypervisorType;
import com.cloud.org.Grouping;
-import com.cloud.utils.component.ComponentLocator;
import com.cloud.utils.db.GenericDaoBase;
import com.cloud.utils.db.GenericSearchBuilder;
import com.cloud.utils.db.JoinBuilder;
@@ -53,73 +52,73 @@ public class ClusterDaoImpl extends GenericDaoBase<ClusterVO, Long> implements C
protected final SearchBuilder<ClusterVO> AvailHyperSearch;
protected final SearchBuilder<ClusterVO> ZoneSearch;
protected final SearchBuilder<ClusterVO> ZoneHyTypeSearch;
-
+
private static final String GET_POD_CLUSTER_MAP_PREFIX = "SELECT pod_id, id FROM cloud.cluster WHERE cluster.id IN( ";
private static final String GET_POD_CLUSTER_MAP_SUFFIX = " )";
@Inject
protected HostPodDao _hostPodDao;
-
+
public ClusterDaoImpl() {
super();
-
+
HyTypeWithoutGuidSearch = createSearchBuilder();
HyTypeWithoutGuidSearch.and("hypervisorType", HyTypeWithoutGuidSearch.entity().getHypervisorType(), SearchCriteria.Op.EQ);
HyTypeWithoutGuidSearch.and("guid", HyTypeWithoutGuidSearch.entity().getGuid(), SearchCriteria.Op.NULL);
HyTypeWithoutGuidSearch.done();
-
+
ZoneHyTypeSearch = createSearchBuilder();
ZoneHyTypeSearch.and("hypervisorType", ZoneHyTypeSearch.entity().getHypervisorType(), SearchCriteria.Op.EQ);
ZoneHyTypeSearch.and("dataCenterId", ZoneHyTypeSearch.entity().getDataCenterId(), SearchCriteria.Op.EQ);
ZoneHyTypeSearch.done();
-
+
PodSearch = createSearchBuilder();
PodSearch.and("pod", PodSearch.entity().getPodId(), SearchCriteria.Op.EQ);
PodSearch.and("name", PodSearch.entity().getName(), SearchCriteria.Op.EQ);
PodSearch.done();
-
+
ZoneSearch = createSearchBuilder();
ZoneSearch.and("dataCenterId", ZoneSearch.entity().getDataCenterId(), SearchCriteria.Op.EQ);
ZoneSearch.groupBy(ZoneSearch.entity().getHypervisorType());
ZoneSearch.done();
-
+
AvailHyperSearch = createSearchBuilder();
AvailHyperSearch.and("zoneId", AvailHyperSearch.entity().getDataCenterId(), SearchCriteria.Op.EQ);
AvailHyperSearch.select(null, Func.DISTINCT, AvailHyperSearch.entity().getHypervisorType());
AvailHyperSearch.done();
}
-
+
@Override
public List<ClusterVO> listByZoneId(long zoneId) {
SearchCriteria<ClusterVO> sc = ZoneSearch.create();
sc.setParameters("dataCenterId", zoneId);
return listBy(sc);
}
-
+
@Override
public List<ClusterVO> listByPodId(long podId) {
SearchCriteria<ClusterVO> sc = PodSearch.create();
sc.setParameters("pod", podId);
-
+
return listBy(sc);
}
-
+
@Override
public ClusterVO findBy(String name, long podId) {
SearchCriteria<ClusterVO> sc = PodSearch.create();
sc.setParameters("pod", podId);
sc.setParameters("name", name);
-
+
return findOneBy(sc);
}
-
+
@Override
public List<ClusterVO> listByHyTypeWithoutGuid(String hyType) {
SearchCriteria<ClusterVO> sc = HyTypeWithoutGuidSearch.create();
sc.setParameters("hypervisorType", hyType);
-
+
return listBy(sc);
}
-
+
@Override
public List<ClusterVO> listByDcHyType(long dcId, String hyType) {
SearchCriteria<ClusterVO> sc = ZoneHyTypeSearch.create();
@@ -127,7 +126,7 @@ public class ClusterDaoImpl extends GenericDaoBase<ClusterVO, Long> implements C
sc.setParameters("hypervisorType", hyType);
return listBy(sc);
}
-
+
@Override
public List<HypervisorType> getAvailableHypervisorInZone(Long zoneId) {
SearchCriteria<ClusterVO> sc = AvailHyperSearch.create();
@@ -139,13 +138,13 @@ public class ClusterDaoImpl extends GenericDaoBase<ClusterVO, Long> implements C
for (ClusterVO cluster : clusters) {
hypers.add(cluster.getHypervisorType());
}
-
+
return hypers;
}
-
+
@Override
public Map<Long, List<Long>> getPodClusterIdMap(List<Long> clusterIds){
- Transaction txn = Transaction.currentTxn();
+ Transaction txn = Transaction.currentTxn();
PreparedStatement pstmt = null;
Map<Long, List<Long>> result = new HashMap<Long, List<Long>>();
@@ -158,20 +157,20 @@ public class ClusterDaoImpl extends GenericDaoBase<ClusterVO, Long> implements C
sql.delete(sql.length()-1, sql.length());
sql.append(GET_POD_CLUSTER_MAP_SUFFIX);
}
-
+
pstmt = txn.prepareAutoCloseStatement(sql.toString());
ResultSet rs = pstmt.executeQuery();
while (rs.next()) {
- Long podId = rs.getLong(1);
- Long clusterIdInPod = rs.getLong(2);
+ Long podId = rs.getLong(1);
+ Long clusterIdInPod = rs.getLong(2);
if(result.containsKey(podId)){
- List<Long> clusterList = result.get(podId);
- clusterList.add(clusterIdInPod);
- result.put(podId, clusterList);
+ List<Long> clusterList = result.get(podId);
+ clusterList.add(clusterIdInPod);
+ result.put(podId, clusterList);
}else{
- List<Long> clusterList = new ArrayList<Long>();
- clusterList.add(clusterIdInPod);
- result.put(podId, clusterList);
+ List<Long> clusterList = new ArrayList<Long>();
+ clusterList.add(clusterIdInPod);
+ result.put(podId, clusterList);
}
}
return result;
@@ -181,49 +180,49 @@ public class ClusterDaoImpl extends GenericDaoBase<ClusterVO, Long> implements C
throw new CloudRuntimeException("Caught: " + GET_POD_CLUSTER_MAP_PREFIX, e);
}
}
-
+
@Override
public List<Long> listDisabledClusters(long zoneId, Long podId) {
- GenericSearchBuilder<ClusterVO, Long> clusterIdSearch = createSearchBuilder(Long.class);
- clusterIdSearch.selectField(clusterIdSearch.entity().getId());
- clusterIdSearch.and("dataCenterId", clusterIdSearch.entity().getDataCenterId(), Op.EQ);
- if(podId != null){
- clusterIdSearch.and("podId", clusterIdSearch.entity().getPodId(), Op.EQ);
- }
- clusterIdSearch.and("allocationState", clusterIdSearch.entity().getAllocationState(), Op.EQ);
- clusterIdSearch.done();
-
-
- SearchCriteria<Long> sc = clusterIdSearch.create();
+ GenericSearchBuilder<ClusterVO, Long> clusterIdSearch = createSearchBuilder(Long.class);
+ clusterIdSearch.selectField(clusterIdSearch.entity().getId());
+ clusterIdSearch.and("dataCenterId", clusterIdSearch.entity().getDataCenterId(), Op.EQ);
+ if(podId != null){
+ clusterIdSearch.and("podId", clusterIdSearch.entity().getPodId(), Op.EQ);
+ }
+ clusterIdSearch.and("allocationState", clusterIdSearch.entity().getAllocationState(), Op.EQ);
+ clusterIdSearch.done();
+
+
+ SearchCriteria<Long> sc = clusterIdSearch.create();
sc.addAnd("dataCenterId", SearchCriteria.Op.EQ, zoneId);
if (podId != null) {
- sc.addAnd("podId", SearchCriteria.Op.EQ, podId);
- }
+ sc.addAnd("podId", SearchCriteria.Op.EQ, podId);
+ }
sc.addAnd("allocationState", SearchCriteria.Op.EQ, Grouping.AllocationState.Disabled);
return customSearch(sc, null);
}
@Override
public List<Long> listClustersWithDisabledPods(long zoneId) {
-
- GenericSearchBuilder<HostPodVO, Long> disabledPodIdSearch = _hostPodDao.createSearchBuilder(Long.class);
- disabledPodIdSearch.selectField(disabledPodIdSearch.entity().getId());
- disabledPodIdSearch.and("dataCenterId", disabledPodIdSearch.entity().getDataCenterId(), Op.EQ);
- disabledPodIdSearch.and("allocationState", disabledPodIdSearch.entity().getAllocationState(), Op.EQ);
-
- GenericSearchBuilder<ClusterVO, Long> clusterIdSearch = createSearchBuilder(Long.class);
- clusterIdSearch.selectField(clusterIdSearch.entity().getId());
- clusterIdSearch.join("disabledPodIdSearch", disabledPodIdSearch, clusterIdSearch.entity().getPodId(), disabledPodIdSearch.entity().getId(), JoinBuilder.JoinType.INNER);
- clusterIdSearch.done();
-
-
- SearchCriteria<Long> sc = clusterIdSearch.create();
+
+ GenericSearchBuilder<HostPodVO, Long> disabledPodIdSearch = _hostPodDao.createSearchBuilder(Long.class);
+ disabledPodIdSearch.selectField(disabledPodIdSearch.entity().getId());
+ disabledPodIdSearch.and("dataCenterId", disabledPodIdSearch.entity().getDataCenterId(), Op.EQ);
+ disabledPodIdSearch.and("allocationState", disabledPodIdSearch.entity().getAllocationState(), Op.EQ);
+
+ GenericSearchBuilder<ClusterVO, Long> clusterIdSearch = createSearchBuilder(Long.class);
+ clusterIdSearch.selectField(clusterIdSearch.entity().getId());
+ clusterIdSearch.join("disabledPodIdSearch", disabledPodIdSearch, clusterIdSearch.entity().getPodId(), disabledPodIdSearch.entity().getId(), JoinBuilder.JoinType.INNER);
+ clusterIdSearch.done();
+
+
+ SearchCriteria<Long> sc = clusterIdSearch.create();
sc.setJoinParameters("disabledPodIdSearch", "dataCenterId", zoneId);
sc.setJoinParameters("disabledPodIdSearch", "allocationState", Grouping.AllocationState.Disabled);
-
+
return customSearch(sc, null);
}
-
+
@Override
public boolean remove(Long id) {
Transaction txn = Transaction.currentTxn();
@@ -231,7 +230,7 @@ public class ClusterDaoImpl extends GenericDaoBase<ClusterVO, Long> implements C
ClusterVO cluster = createForUpdate();
cluster.setName(null);
cluster.setGuid(null);
-
+
update(id, cluster);
boolean result = super.remove(id);