Removed references to secondarystoragevmmanager from code that doesn't use it.

This commit is contained in:
Alex Huang 2014-01-15 17:56:57 -08:00
parent 4be3b99337
commit 7f34282dfa
15 changed files with 208 additions and 497 deletions

View File

@ -79,7 +79,6 @@ 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.secondary.SecondaryStorageVmManager;
import com.cloud.tags.dao.ResourceTagsDaoImpl;
import com.cloud.template.TemplateManager;
import com.cloud.user.AccountManager;
@ -110,11 +109,6 @@ import com.cloud.vm.snapshot.dao.VMSnapshotDaoImpl;
useDefaultFilters = false)
public class ChildTestConfiguration extends TestConfiguration {
@Bean
public SecondaryStorageVmManager secondaryStoreageMgr() {
return Mockito.mock(SecondaryStorageVmManager.class);
}
@Bean
public HostDao hostDao() {
return Mockito.spy(new HostDaoImpl());

View File

@ -27,8 +27,6 @@ import java.util.UUID;
import javax.ejb.Local;
import javax.inject.Inject;
import com.cloud.dc.dao.ClusterDao;
import com.cloud.vm.dao.VMInstanceDao;
import org.apache.log4j.Logger;
import org.apache.cloudstack.framework.config.ConfigKey;
@ -71,7 +69,6 @@ import com.cloud.network.Networks.BroadcastDomainType;
import com.cloud.network.Networks.TrafficType;
import com.cloud.network.dao.NetworkDao;
import com.cloud.network.dao.NetworkVO;
import com.cloud.network.dao.PhysicalNetworkDao;
import com.cloud.network.dao.PhysicalNetworkTrafficTypeDao;
import com.cloud.network.dao.PhysicalNetworkTrafficTypeVO;
import com.cloud.secstorage.CommandExecLogDao;
@ -95,41 +92,38 @@ import com.cloud.vm.VirtualMachine;
import com.cloud.vm.VirtualMachineProfile;
import com.cloud.vm.VmDetailConstants;
import com.cloud.vm.dao.NicDao;
import com.cloud.vm.dao.VMInstanceDao;
@Local(value = HypervisorGuru.class)
public class VMwareGuru extends HypervisorGuruBase implements HypervisorGuru, Configurable {
private static final Logger s_logger = Logger.getLogger(VMwareGuru.class);
@Inject
NetworkDao _networkDao;
private NetworkDao _networkDao;
@Inject
GuestOSDao _guestOsDao;
private GuestOSDao _guestOsDao;
@Inject
HostDao _hostDao;
private HostDao _hostDao;
@Inject
HostDetailsDao _hostDetailsDao;
private HostDetailsDao _hostDetailsDao;
@Inject
CommandExecLogDao _cmdExecLogDao;
private CommandExecLogDao _cmdExecLogDao;
@Inject
VmwareManager _vmwareMgr;
private VmwareManager _vmwareMgr;
@Inject
SecondaryStorageVmManager _secStorageMgr;
private SecondaryStorageVmManager _secStorageMgr;
@Inject
NetworkModel _networkMgr;
private NetworkModel _networkMgr;
@Inject
ConfigurationDao _configDao;
private ConfigurationDao _configDao;
@Inject
NicDao _nicDao;
private NicDao _nicDao;
@Inject
PhysicalNetworkDao _physicalNetworkDao;
private PhysicalNetworkTrafficTypeDao _physicalNetworkTrafficTypeDao;
@Inject
PhysicalNetworkTrafficTypeDao _physicalNetworkTrafficTypeDao;
private VMInstanceDao _vmDao;
@Inject
VMInstanceDao _vmDao;
@Inject
ClusterDao _clusterDao;
@Inject
ClusterManager _clusterMgr;
private ClusterManager _clusterMgr;
protected VMwareGuru() {
super();
@ -204,7 +198,7 @@ public class VMwareGuru extends HypervisorGuruBase implements HypervisorGuru, Co
}
}
long clusterId = this.getClusterId(vm.getId());
long clusterId = getClusterId(vm.getId());
details.put(Config.VmwareReserveCpu.key(), VmwareReserveCpu.valueIn(clusterId).toString());
details.put(Config.VmwareReserveMem.key(), VmwareReserveMemory.valueIn(clusterId).toString());
to.setDetails(details);

View File

@ -38,7 +38,6 @@ import javax.naming.ConfigurationException;
import org.apache.log4j.Logger;
import com.google.gson.Gson;
import com.vmware.vim25.AboutInfo;
import com.vmware.vim25.ManagedObjectReference;
@ -75,7 +74,6 @@ import com.cloud.exception.InvalidParameterValueException;
import com.cloud.exception.ResourceInUseException;
import com.cloud.host.Host;
import com.cloud.host.Status;
import com.cloud.host.dao.HostDao;
import com.cloud.hypervisor.Hypervisor.HypervisorType;
import com.cloud.hypervisor.dao.HypervisorCapabilitiesDao;
import com.cloud.hypervisor.vmware.LegacyZoneVO;
@ -104,11 +102,9 @@ import com.cloud.network.Networks.BroadcastDomainType;
import com.cloud.network.dao.CiscoNexusVSMDeviceDao;
import com.cloud.org.Cluster.ClusterType;
import com.cloud.secstorage.CommandExecLogDao;
import com.cloud.serializer.GsonHelper;
import com.cloud.server.ConfigurationServer;
import com.cloud.storage.JavaStorageLayer;
import com.cloud.storage.StorageLayer;
import com.cloud.storage.secondary.SecondaryStorageVmManager;
import com.cloud.utils.FileUtil;
import com.cloud.utils.NumbersUtil;
import com.cloud.utils.Pair;
@ -132,85 +128,77 @@ public class VmwareManagerImpl extends ManagerBase implements VmwareManager, Vmw
private static final long DEFAULT_HOST_SCAN_INTERVAL = 600000; // every 10 minutes
private long _hostScanInterval = DEFAULT_HOST_SCAN_INTERVAL;
int _timeout;
private int _timeout;
private String _instance;
@Inject
AgentManager _agentMgr;
private AgentManager _agentMgr;
@Inject
protected NetworkModel _netMgr;
private NetworkModel _netMgr;
@Inject
HostDao _hostDao;
private ClusterDao _clusterDao;
@Inject
ClusterDao _clusterDao;
private ClusterDetailsDao _clusterDetailsDao;
@Inject
ClusterDetailsDao _clusterDetailsDao;
private CommandExecLogDao _cmdExecLogDao;
@Inject
CommandExecLogDao _cmdExecLogDao;
private DataStoreManager _dataStoreMgr;
@Inject
SecondaryStorageVmManager _ssvmMgr;
private CiscoNexusVSMDeviceDao _nexusDao;
@Inject
DataStoreManager _dataStoreMgr;
private ClusterVSMMapDao _vsmMapDao;
@Inject
CiscoNexusVSMDeviceDao _nexusDao;
private ConfigurationDao _configDao;
@Inject
ClusterVSMMapDao _vsmMapDao;
private ConfigurationServer _configServer;
@Inject
ConfigurationDao _configDao;
private HypervisorCapabilitiesDao _hvCapabilitiesDao;
@Inject
ConfigurationServer _configServer;
private DataCenterDao _dcDao;
@Inject
HypervisorCapabilitiesDao _hvCapabilitiesDao;
private VmwareDatacenterDao _vmwareDcDao;
@Inject
DataCenterDao _dcDao;
private VmwareDatacenterZoneMapDao _vmwareDcZoneMapDao;
@Inject
VmwareDatacenterDao _vmwareDcDao;
private LegacyZoneDao _legacyZoneDao;
@Inject
VmwareDatacenterZoneMapDao _vmwareDcZoneMapDao;
private ManagementServerHostPeerDao _mshostPeerDao;
@Inject
LegacyZoneDao _legacyZoneDao;
@Inject
ManagementServerHostPeerDao _mshostPeerDao;
@Inject
ClusterManager _clusterMgr;
private ClusterManager _clusterMgr;
String _mountParent;
StorageLayer _storage;
String _privateNetworkVSwitchName = "vSwitch0";
private String _mountParent;
private StorageLayer _storage;
private final String _privateNetworkVSwitchName = "vSwitch0";
int _portsPerDvPortGroup = 256;
boolean _nexusVSwitchActive;
boolean _fullCloneFlag;
boolean _instanceNameFlag;
String _serviceConsoleName;
String _managemetPortGroupName;
String _defaultSystemVmNicAdapterType = VirtualEthernetCardType.E1000.toString();
String _recycleHungWorker = "false";
long _hungWorkerTimeout = 7200000; // 2 hour
int _additionalPortRangeStart;
int _additionalPortRangeSize;
int _routerExtraPublicNics = 2;
int _vCenterSessionTimeout = 1200000; // Timeout in milliseconds
private int _portsPerDvPortGroup = 256;
private boolean _fullCloneFlag;
private boolean _instanceNameFlag;
private String _serviceConsoleName;
private String _managemetPortGroupName;
private String _defaultSystemVmNicAdapterType = VirtualEthernetCardType.E1000.toString();
private String _recycleHungWorker = "false";
private int _additionalPortRangeStart;
private int _additionalPortRangeSize;
private int _routerExtraPublicNics = 2;
private int _vCenterSessionTimeout = 1200000; // Timeout in milliseconds
String _reserveCpu = "false";
private String _reserveCpu = "false";
String _reserveMem = "false";
private String _reserveMem = "false";
String _rootDiskController = DiskControllerType.ide.toString();
private String _rootDiskController = DiskControllerType.ide.toString();
Map<String, String> _storageMounts = new HashMap<String, String>();
private final Map<String, String> _storageMounts = new HashMap<String, String>();
Random _rand = new Random(System.currentTimeMillis());
Gson _gson;
private final Random _rand = new Random(System.currentTimeMillis());
VmwareStorageManager _storageMgr;
GlobalLock _exclusiveOpLock = GlobalLock.getInternLock("vmware.exclusive.op");
private final VmwareStorageManager _storageMgr;
private final GlobalLock _exclusiveOpLock = GlobalLock.getInternLock("vmware.exclusive.op");
private final ScheduledExecutorService _hostScanScheduler = Executors.newScheduledThreadPool(1, new NamedThreadFactory("Vmware-Host-Scan"));
public VmwareManagerImpl() {
_gson = GsonHelper.getGsonLogger();
_storageMgr = new VmwareStorageManagerImpl(this);
}
@ -310,10 +298,6 @@ public class VmwareManagerImpl extends ManagerBase implements VmwareManager, Vmw
_recycleHungWorker = "false";
}
value = _configDao.getValue(Config.VmwareHungWorkerTimeout.key());
if (value != null)
_hungWorkerTimeout = Long.parseLong(value) * 1000;
_rootDiskController = _configDao.getValue(Config.VmwareRootDiskControllerType.key());
if (_rootDiskController == null || _rootDiskController.isEmpty()) {
_rootDiskController = DiskControllerType.ide.toString();

View File

@ -85,7 +85,6 @@ import com.cloud.org.Cluster.ClusterType;
import com.cloud.org.Managed.ManagedState;
import com.cloud.secstorage.CommandExecLogDao;
import com.cloud.server.ConfigurationServer;
import com.cloud.storage.secondary.SecondaryStorageVmManager;
import com.cloud.user.Account;
import com.cloud.user.AccountManager;
import com.cloud.user.AccountService;
@ -363,11 +362,6 @@ public class VmwareDatacenterApiUnitTest {
return Mockito.mock(ClusterManager.class);
}
@Bean
public SecondaryStorageVmManager secondaryStorageVmManager() {
return Mockito.mock(SecondaryStorageVmManager.class);
}
@Bean
public CommandExecLogDao commandExecLogDao() {
return Mockito.mock(CommandExecLogDao.class);

View File

@ -259,7 +259,6 @@ import com.cloud.storage.dao.VMTemplateHostDaoImpl;
import com.cloud.storage.dao.VMTemplateZoneDaoImpl;
import com.cloud.storage.dao.VolumeDaoImpl;
import com.cloud.storage.dao.VolumeHostDaoImpl;
import com.cloud.storage.secondary.SecondaryStorageVmManager;
import com.cloud.storage.snapshot.SnapshotApiService;
import com.cloud.storage.snapshot.SnapshotManager;
import com.cloud.tags.dao.ResourceTagDao;
@ -623,11 +622,6 @@ public class IntegrationTestConfiguration {
return Mockito.mock(ResourceMetaDataService.class);
}
@Bean
public SecondaryStorageVmManager secondaryStorageVmManager() {
return Mockito.mock(SecondaryStorageVmManager.class);
}
@Bean
public Site2SiteVpnManager site2SiteVpnManager() {
return Mockito.mock(Site2SiteVpnManager.class);

View File

@ -47,7 +47,6 @@ import org.apache.cloudstack.api.command.admin.host.UpdateHostCmd;
import org.apache.cloudstack.api.command.admin.host.UpdateHostPasswordCmd;
import org.apache.cloudstack.context.CallContext;
import org.apache.cloudstack.framework.config.dao.ConfigurationDao;
import org.apache.cloudstack.region.dao.RegionDao;
import org.apache.cloudstack.storage.datastore.db.PrimaryDataStoreDao;
import org.apache.cloudstack.storage.datastore.db.StoragePoolVO;
import org.apache.cloudstack.utils.identity.ManagementServerNode;
@ -129,7 +128,6 @@ import com.cloud.storage.VMTemplateVO;
import com.cloud.storage.dao.GuestOSCategoryDao;
import com.cloud.storage.dao.StoragePoolHostDao;
import com.cloud.storage.dao.VMTemplateDao;
import com.cloud.storage.secondary.SecondaryStorageVmManager;
import com.cloud.user.Account;
import com.cloud.user.AccountManager;
import com.cloud.user.User;
@ -168,55 +166,51 @@ public class ResourceManagerImpl extends ManagerBase implements ResourceManager,
Gson _gson;
@Inject
AccountManager _accountMgr;
private AccountManager _accountMgr;
@Inject
AgentManager _agentMgr;
private AgentManager _agentMgr;
@Inject
StorageManager _storageMgr;
private StorageManager _storageMgr;
@Inject
protected SecondaryStorageVmManager _secondaryStorageMgr;
private DataCenterDao _dcDao;
@Inject
protected RegionDao _regionDao;
private HostPodDao _podDao;
@Inject
protected DataCenterDao _dcDao;
private ClusterDetailsDao _clusterDetailsDao;
@Inject
protected HostPodDao _podDao;
private ClusterDao _clusterDao;
@Inject
protected ClusterDetailsDao _clusterDetailsDao;
private CapacityDao _capacityDao;
@Inject
protected ClusterDao _clusterDao;
private HostDao _hostDao;
@Inject
protected CapacityDao _capacityDao;
private HostDetailsDao _hostDetailsDao;
@Inject
protected HostDao _hostDao;
private ConfigurationDao _configDao;
@Inject
protected HostDetailsDao _hostDetailsDao;
private HostTagsDao _hostTagsDao;
@Inject
protected ConfigurationDao _configDao;
private GuestOSCategoryDao _guestOSCategoryDao;
@Inject
protected HostTagsDao _hostTagsDao;
private PrimaryDataStoreDao _storagePoolDao;
@Inject
protected GuestOSCategoryDao _guestOSCategoryDao;
private DataCenterIpAddressDao _privateIPAddressDao;
@Inject
protected PrimaryDataStoreDao _storagePoolDao;
private IPAddressDao _publicIPAddressDao;
@Inject
protected DataCenterIpAddressDao _privateIPAddressDao;
private VirtualMachineManager _vmMgr;
@Inject
protected IPAddressDao _publicIPAddressDao;
private VMInstanceDao _vmDao;
@Inject
protected VirtualMachineManager _vmMgr;
private HighAvailabilityManager _haMgr;
@Inject
protected VMInstanceDao _vmDao;
@Inject
protected HighAvailabilityManager _haMgr;
@Inject
protected StorageService _storageSvr;
private StorageService _storageSvr;
@Inject
PlannerHostReservationDao _plannerHostReserveDao;
@Inject
protected DedicatedResourceDao _dedicatedDao;
private DedicatedResourceDao _dedicatedDao;
protected List<? extends Discoverer> _discoverers;
private List<? extends Discoverer> _discoverers;
public List<? extends Discoverer> getDiscoverers() {
return _discoverers;
@ -227,22 +221,22 @@ public class ResourceManagerImpl extends ManagerBase implements ResourceManager,
}
@Inject
protected ClusterManager _clusterMgr;
private ClusterManager _clusterMgr;
@Inject
protected StoragePoolHostDao _storagePoolHostDao;
private StoragePoolHostDao _storagePoolHostDao;
@Inject
protected VMTemplateDao _templateDao;
private VMTemplateDao _templateDao;
@Inject
protected ConfigurationManager _configMgr;
private ConfigurationManager _configMgr;
@Inject
protected ClusterVSMMapDao _clusterVSMMapDao;
private ClusterVSMMapDao _clusterVSMMapDao;
protected long _nodeId = ManagementServerNode.getManagementServerId();
private final long _nodeId = ManagementServerNode.getManagementServerId();
protected HashMap<String, ResourceStateAdapter> _resourceStateAdapters = new HashMap<String, ResourceStateAdapter>();
private final HashMap<String, ResourceStateAdapter> _resourceStateAdapters = new HashMap<String, ResourceStateAdapter>();
protected HashMap<Integer, List<ResourceListener>> _lifeCycleListeners = new HashMap<Integer, List<ResourceListener>>();
private final HashMap<Integer, List<ResourceListener>> _lifeCycleListeners = new HashMap<Integer, List<ResourceListener>>();
private HypervisorType _defaultSystemVMHypervisor;
private static final int ACQUIRE_GLOBAL_LOCK_TIMEOUT_FOR_COOPERATION = 30; // seconds

View File

@ -40,6 +40,9 @@ import javax.crypto.spec.SecretKeySpec;
import javax.inject.Inject;
import javax.naming.ConfigurationException;
import org.apache.commons.codec.binary.Base64;
import org.apache.log4j.Logger;
import org.apache.cloudstack.acl.ControlledEntity;
import org.apache.cloudstack.acl.SecurityChecker.AccessType;
import org.apache.cloudstack.affinity.AffinityGroupProcessor;
@ -438,7 +441,6 @@ import org.apache.cloudstack.context.CallContext;
import org.apache.cloudstack.engine.orchestration.service.VolumeOrchestrationService;
import org.apache.cloudstack.engine.subsystem.api.storage.DataStoreManager;
import org.apache.cloudstack.engine.subsystem.api.storage.StoragePoolAllocator;
import org.apache.cloudstack.engine.subsystem.api.storage.VolumeDataFactory;
import org.apache.cloudstack.framework.config.ConfigDepot;
import org.apache.cloudstack.framework.config.ConfigKey;
import org.apache.cloudstack.framework.config.dao.ConfigurationDao;
@ -450,8 +452,6 @@ import org.apache.cloudstack.storage.datastore.db.ImageStoreVO;
import org.apache.cloudstack.storage.datastore.db.PrimaryDataStoreDao;
import org.apache.cloudstack.storage.datastore.db.StoragePoolVO;
import org.apache.cloudstack.utils.identity.ManagementServerNode;
import org.apache.commons.codec.binary.Base64;
import org.apache.log4j.Logger;
import com.cloud.agent.AgentManager;
import com.cloud.agent.api.GetVncPortAnswer;
@ -468,7 +468,6 @@ import com.cloud.capacity.dao.CapacityDao;
import com.cloud.capacity.dao.CapacityDaoImpl.SummedCapacity;
import com.cloud.cluster.ClusterManager;
import com.cloud.configuration.Config;
import com.cloud.configuration.ConfigurationManager;
import com.cloud.consoleproxy.ConsoleProxyManagementState;
import com.cloud.consoleproxy.ConsoleProxyManager;
import com.cloud.dc.AccountVlanMapVO;
@ -553,7 +552,6 @@ import com.cloud.storage.dao.GuestOSDao;
import com.cloud.storage.dao.VMTemplateDao;
import com.cloud.storage.dao.VolumeDao;
import com.cloud.storage.secondary.SecondaryStorageVmManager;
import com.cloud.storage.snapshot.SnapshotManager;
import com.cloud.tags.ResourceTagVO;
import com.cloud.tags.dao.ResourceTagDao;
import com.cloud.template.TemplateManager;
@ -699,38 +697,28 @@ public class ManagementServerImpl extends ManagerBase implements ManagementServe
private ImageStoreDao _imgStoreDao;
@Inject
ProjectManager _projectMgr;
private ProjectManager _projectMgr;
@Inject
ResourceManager _resourceMgr;
private ResourceManager _resourceMgr;
@Inject
SnapshotManager _snapshotMgr;
private HighAvailabilityManager _haMgr;
@Inject
HighAvailabilityManager _haMgr;
private DataStoreManager dataStoreMgr;
@Inject
TemplateManager templateMgr;
private HostTagsDao _hostTagsDao;
@Inject
DataStoreManager dataStoreMgr;
private ConfigDepot _configDepot;
@Inject
HostTagsDao _hostTagsDao;
private UserVmManager _userVmMgr;
@Inject
ConfigurationServer _configServer;
private AccountService _accountService;
@Inject
ConfigDepot _configDepot;
@Inject
UserVmManager _userVmMgr;
@Inject
VolumeDataFactory _volFactory;
@Inject
AccountService _accountService;
@Inject
ConfigurationManager _configMgr;
@Inject
ServiceOfferingDao _offeringDao;
private ServiceOfferingDao _offeringDao;
@Inject
DeploymentPlanningManager _dpMgr;
private DeploymentPlanningManager _dpMgr;
LockMasterListener _lockMasterListener;
private LockMasterListener _lockMasterListener;
private final ScheduledExecutorService _eventExecutor = Executors.newScheduledThreadPool(1, new NamedThreadFactory("EventChecker"));
private final ScheduledExecutorService _alertExecutor = Executors.newScheduledThreadPool(1, new NamedThreadFactory("AlertChecker"));

View File

@ -26,6 +26,8 @@ import java.util.concurrent.ExecutionException;
import javax.inject.Inject;
import org.apache.log4j.Logger;
import org.apache.cloudstack.api.command.user.volume.AttachVolumeCmd;
import org.apache.cloudstack.api.command.user.volume.CreateVolumeCmd;
import org.apache.cloudstack.api.command.user.volume.DetachVolumeCmd;
@ -38,14 +40,10 @@ import org.apache.cloudstack.engine.orchestration.service.VolumeOrchestrationSer
import org.apache.cloudstack.engine.subsystem.api.storage.ChapInfo;
import org.apache.cloudstack.engine.subsystem.api.storage.DataStore;
import org.apache.cloudstack.engine.subsystem.api.storage.DataStoreManager;
import org.apache.cloudstack.engine.subsystem.api.storage.DataStoreProviderManager;
import org.apache.cloudstack.engine.subsystem.api.storage.HostScope;
import org.apache.cloudstack.engine.subsystem.api.storage.PrimaryDataStoreInfo;
import org.apache.cloudstack.engine.subsystem.api.storage.Scope;
import org.apache.cloudstack.engine.subsystem.api.storage.SnapshotDataFactory;
import org.apache.cloudstack.engine.subsystem.api.storage.SnapshotService;
import org.apache.cloudstack.engine.subsystem.api.storage.StoragePoolAllocator;
import org.apache.cloudstack.engine.subsystem.api.storage.TemplateDataFactory;
import org.apache.cloudstack.engine.subsystem.api.storage.VolumeDataFactory;
import org.apache.cloudstack.engine.subsystem.api.storage.VolumeInfo;
import org.apache.cloudstack.engine.subsystem.api.storage.VolumeService;
@ -68,37 +66,27 @@ import org.apache.cloudstack.storage.command.DettachCommand;
import org.apache.cloudstack.storage.datastore.db.PrimaryDataStoreDao;
import org.apache.cloudstack.storage.datastore.db.StoragePoolDetailsDao;
import org.apache.cloudstack.storage.datastore.db.StoragePoolVO;
import org.apache.cloudstack.storage.datastore.db.TemplateDataStoreDao;
import org.apache.cloudstack.storage.datastore.db.VolumeDataStoreDao;
import org.apache.cloudstack.storage.datastore.db.VolumeDataStoreVO;
import org.apache.cloudstack.storage.image.datastore.ImageStoreEntity;
import org.apache.cloudstack.utils.identity.ManagementServerNode;
import org.apache.log4j.Logger;
import com.cloud.agent.AgentManager;
import com.cloud.agent.api.Answer;
import com.cloud.agent.api.to.DataTO;
import com.cloud.agent.api.to.DiskTO;
import com.cloud.alert.AlertManager;
import com.cloud.api.ApiDBUtils;
import com.cloud.capacity.CapacityManager;
import com.cloud.capacity.dao.CapacityDao;
import com.cloud.configuration.Config;
import com.cloud.configuration.ConfigurationManager;
import com.cloud.configuration.Resource.ResourceType;
import com.cloud.consoleproxy.ConsoleProxyManager;
import com.cloud.dc.ClusterVO;
import com.cloud.dc.DataCenter;
import com.cloud.dc.DataCenterVO;
import com.cloud.dc.dao.ClusterDao;
import com.cloud.dc.dao.DataCenterDao;
import com.cloud.dc.dao.HostPodDao;
import com.cloud.domain.Domain;
import com.cloud.domain.dao.DomainDao;
import com.cloud.event.ActionEvent;
import com.cloud.event.EventTypes;
import com.cloud.event.UsageEventUtils;
import com.cloud.event.dao.EventDao;
import com.cloud.exception.ConcurrentOperationException;
import com.cloud.exception.InvalidParameterValueException;
import com.cloud.exception.PermissionDeniedException;
@ -108,29 +96,15 @@ import com.cloud.host.HostVO;
import com.cloud.host.dao.HostDao;
import com.cloud.hypervisor.Hypervisor.HypervisorType;
import com.cloud.hypervisor.HypervisorCapabilitiesVO;
import com.cloud.hypervisor.HypervisorGuruManager;
import com.cloud.hypervisor.dao.HypervisorCapabilitiesDao;
import com.cloud.network.NetworkModel;
import com.cloud.org.Grouping;
import com.cloud.resource.ResourceManager;
import com.cloud.server.ManagementServer;
import com.cloud.service.dao.ServiceOfferingDao;
import com.cloud.storage.Storage.ImageFormat;
import com.cloud.storage.dao.DiskOfferingDao;
import com.cloud.storage.dao.SnapshotDao;
import com.cloud.storage.dao.SnapshotPolicyDao;
import com.cloud.storage.dao.StoragePoolHostDao;
import com.cloud.storage.dao.StoragePoolWorkDao;
import com.cloud.storage.dao.VMTemplateDao;
import com.cloud.storage.dao.VMTemplatePoolDao;
import com.cloud.storage.dao.VolumeDao;
import com.cloud.storage.dao.VolumeDetailsDao;
import com.cloud.storage.download.DownloadMonitor;
import com.cloud.storage.secondary.SecondaryStorageVmManager;
import com.cloud.storage.snapshot.SnapshotApiService;
import com.cloud.storage.snapshot.SnapshotManager;
import com.cloud.storage.snapshot.SnapshotScheduler;
import com.cloud.tags.dao.ResourceTagDao;
import com.cloud.template.TemplateManager;
import com.cloud.user.Account;
import com.cloud.user.AccountManager;
@ -138,7 +112,6 @@ import com.cloud.user.ResourceLimitService;
import com.cloud.user.User;
import com.cloud.user.VmDiskStatisticsVO;
import com.cloud.user.dao.AccountDao;
import com.cloud.user.dao.UserDao;
import com.cloud.user.dao.VmDiskStatisticsDao;
import com.cloud.utils.EnumUtils;
import com.cloud.utils.NumbersUtil;
@ -155,20 +128,15 @@ import com.cloud.utils.db.UUIDManager;
import com.cloud.utils.exception.CloudRuntimeException;
import com.cloud.utils.fsm.NoTransitionException;
import com.cloud.utils.fsm.StateMachine2;
import com.cloud.vm.UserVmManager;
import com.cloud.vm.UserVmVO;
import com.cloud.vm.VMInstanceVO;
import com.cloud.vm.VirtualMachine;
import com.cloud.vm.VirtualMachine.State;
import com.cloud.vm.VirtualMachineManager;
import com.cloud.vm.VmWork;
import com.cloud.vm.VmWorkConstants;
import com.cloud.vm.VmWorkJobHandler;
import com.cloud.vm.VmWorkJobHandlerProxy;
import com.cloud.vm.VmWorkSerializer;
import com.cloud.vm.dao.ConsoleProxyDao;
import com.cloud.vm.dao.DomainRouterDao;
import com.cloud.vm.dao.SecondaryStorageVmDao;
import com.cloud.vm.dao.UserVmDao;
import com.cloud.vm.dao.VMInstanceDao;
import com.cloud.vm.snapshot.VMSnapshotVO;
@ -180,153 +148,73 @@ public class VolumeApiServiceImpl extends ManagerBase implements VolumeApiServic
public static final String VM_WORK_JOB_HANDLER = VolumeApiServiceImpl.class.getSimpleName();
@Inject
VolumeOrchestrationService _volumeMgr;
private VolumeOrchestrationService _volumeMgr;
@Inject
EntityManager _entityMgr;
private EntityManager _entityMgr;
@Inject
protected UserVmManager _userVmMgr;
private AgentManager _agentMgr;
@Inject
protected AgentManager _agentMgr;
private TemplateManager _tmpltMgr;
@Inject
protected TemplateManager _tmpltMgr;
private AsyncJobManager _asyncMgr;
@Inject
protected AsyncJobManager _asyncMgr;
private SnapshotManager _snapshotMgr;
@Inject
protected SnapshotManager _snapshotMgr;
private AccountManager _accountMgr;
@Inject
protected SnapshotScheduler _snapshotScheduler;
private ConfigurationManager _configMgr;
@Inject
protected AccountManager _accountMgr;
private VolumeDao _volsDao;
@Inject
protected ConfigurationManager _configMgr;
private HostDao _hostDao;
@Inject
protected ConsoleProxyManager _consoleProxyMgr;
@Inject
protected SecondaryStorageVmManager _secStorageMgr;
@Inject
protected NetworkModel _networkMgr;
@Inject
protected ServiceOfferingDao _serviceOfferingDao;
@Inject
protected VolumeDao _volsDao;
@Inject
protected HostDao _hostDao;
@Inject
protected ConsoleProxyDao _consoleProxyDao;
@Inject
protected SnapshotDao _snapshotDao;
@Inject
protected SnapshotManager _snapMgr;
@Inject
protected SnapshotPolicyDao _snapshotPolicyDao;
@Inject
protected StoragePoolHostDao _storagePoolHostDao;
private SnapshotDao _snapshotDao;
@Inject
StoragePoolDetailsDao storagePoolDetailsDao;
@Inject
protected AlertManager _alertMgr;
@Inject
protected TemplateDataStoreDao _vmTemplateStoreDao = null;
@Inject
protected VMTemplatePoolDao _vmTemplatePoolDao = null;
@Inject
protected VMTemplateDao _vmTemplateDao = null;
@Inject
protected StoragePoolHostDao _poolHostDao = null;
@Inject
protected UserVmDao _userVmDao;
private UserVmDao _userVmDao;
@Inject
VolumeDataStoreDao _volumeStoreDao;
@Inject
protected VMInstanceDao _vmInstanceDao;
private VMInstanceDao _vmInstanceDao;
@Inject
protected PrimaryDataStoreDao _storagePoolDao = null;
private final PrimaryDataStoreDao _storagePoolDao = null;
@Inject
protected CapacityDao _capacityDao;
private DiskOfferingDao _diskOfferingDao;
@Inject
protected CapacityManager _capacityMgr;
private AccountDao _accountDao;
@Inject
protected DiskOfferingDao _diskOfferingDao;
private final DataCenterDao _dcDao = null;
@Inject
protected AccountDao _accountDao;
private VMTemplateDao _templateDao;
@Inject
protected EventDao _eventDao = null;
private VolumeDao _volumeDao;
@Inject
protected DataCenterDao _dcDao = null;
private ResourceLimitService _resourceLimitMgr;
@Inject
protected HostPodDao _podDao = null;
private VmDiskStatisticsDao _vmDiskStatsDao;
@Inject
protected VMTemplateDao _templateDao;
private VMSnapshotDao _vmSnapshotDao;
private List<StoragePoolAllocator> _storagePoolAllocators;
@Inject
protected ServiceOfferingDao _offeringDao;
private ConfigurationDao _configDao;
@Inject
protected DomainDao _domainDao;
private DataStoreManager dataStoreMgr;
@Inject
protected UserDao _userDao;
private VolumeService volService;
@Inject
protected ClusterDao _clusterDao;
private VolumeDataFactory volFactory;
@Inject
protected VirtualMachineManager _vmMgr;
private SnapshotApiService snapshotMgr;
@Inject
protected DomainRouterDao _domrDao;
@Inject
protected SecondaryStorageVmDao _secStrgDao;
@Inject
protected StoragePoolWorkDao _storagePoolWorkDao;
@Inject
protected HypervisorGuruManager _hvGuruMgr;
@Inject
protected VolumeDao _volumeDao;
@Inject
protected OCFS2Manager _ocfs2Mgr;
@Inject
protected ResourceLimitService _resourceLimitMgr;
@Inject
protected SecondaryStorageVmManager _ssvmMgr;
@Inject
protected ResourceManager _resourceMgr;
@Inject
protected DownloadMonitor _downloadMonitor;
@Inject
protected ResourceTagDao _resourceTagDao;
@Inject
protected VmDiskStatisticsDao _vmDiskStatsDao;
@Inject
protected VMSnapshotDao _vmSnapshotDao;
protected List<StoragePoolAllocator> _storagePoolAllocators;
@Inject
ConfigurationDao _configDao;
@Inject
VolumeDetailsDao _volDetailDao;
@Inject
ManagementServer _msServer;
@Inject
DataStoreManager dataStoreMgr;
@Inject
DataStoreProviderManager dataStoreProviderMgr;
@Inject
VolumeService volService;
@Inject
VolumeDataFactory volFactory;
@Inject
TemplateDataFactory tmplFactory;
@Inject
SnapshotDataFactory snapshotFactory;
@Inject
SnapshotApiService snapshotMgr;
@Inject
SnapshotService snapshotSrv;
@Inject
UUIDManager _uuidMgr;
private UUIDManager _uuidMgr;
@Inject
protected HypervisorCapabilitiesDao _hypervisorCapabilitiesDao;
@Inject
StorageManager storageMgr;
private HypervisorCapabilitiesDao _hypervisorCapabilitiesDao;
@Inject
protected AsyncJobManager _jobMgr;
private AsyncJobManager _jobMgr;
@Inject
protected VmWorkJobDao _workJobDao;

View File

@ -31,10 +31,8 @@ import org.springframework.stereotype.Component;
import org.apache.cloudstack.engine.subsystem.api.storage.DataObject;
import org.apache.cloudstack.engine.subsystem.api.storage.DataStore;
import org.apache.cloudstack.engine.subsystem.api.storage.DataStoreManager;
import org.apache.cloudstack.engine.subsystem.api.storage.EndPoint;
import org.apache.cloudstack.engine.subsystem.api.storage.EndPointSelector;
import org.apache.cloudstack.engine.subsystem.api.storage.TemplateDataFactory;
import org.apache.cloudstack.engine.subsystem.api.storage.VolumeInfo;
import org.apache.cloudstack.framework.async.AsyncCompletionCallback;
import org.apache.cloudstack.framework.config.dao.ConfigurationDao;
@ -42,7 +40,6 @@ import org.apache.cloudstack.storage.command.DownloadCommand;
import org.apache.cloudstack.storage.command.DownloadCommand.ResourceType;
import org.apache.cloudstack.storage.command.DownloadProgressCommand;
import org.apache.cloudstack.storage.command.DownloadProgressCommand.RequestType;
import org.apache.cloudstack.storage.datastore.db.ImageStoreDao;
import org.apache.cloudstack.storage.datastore.db.TemplateDataStoreDao;
import org.apache.cloudstack.storage.datastore.db.TemplateDataStoreVO;
import org.apache.cloudstack.storage.datastore.db.VolumeDataStoreDao;
@ -60,7 +57,6 @@ import com.cloud.storage.VMTemplateStorageResourceAssoc.Status;
import com.cloud.storage.Volume;
import com.cloud.storage.dao.VMTemplateDao;
import com.cloud.storage.dao.VolumeDao;
import com.cloud.storage.secondary.SecondaryStorageVmManager;
import com.cloud.storage.template.TemplateConstants;
import com.cloud.storage.upload.UploadListener;
import com.cloud.template.VirtualMachineTemplate;
@ -74,39 +70,28 @@ public class DownloadMonitorImpl extends ManagerBase implements DownloadMonitor
static final Logger s_logger = Logger.getLogger(DownloadMonitorImpl.class);
@Inject
TemplateDataStoreDao _vmTemplateStoreDao;
private TemplateDataStoreDao _vmTemplateStoreDao;
@Inject
ImageStoreDao _imageStoreDao;
private VolumeDao _volumeDao;
@Inject
VolumeDao _volumeDao;
private VolumeDataStoreDao _volumeStoreDao;
@Inject
VolumeDataStoreDao _volumeStoreDao;
@Inject
VMTemplateDao _templateDao = null;
private final VMTemplateDao _templateDao = null;
@Inject
private AgentManager _agentMgr;
@Inject
SecondaryStorageVmManager _secMgr;
private ConfigurationDao _configDao;
@Inject
ConfigurationDao _configDao;
@Inject
EndPointSelector _epSelector;
@Inject
TemplateDataFactory tmplFactory;
private EndPointSelector _epSelector;
private Boolean _sslCopy = new Boolean(false);
private String _copyAuthPasswd;
private String _proxy = null;
Timer _timer;
@Inject
DataStoreManager storeMgr;
private Timer _timer;
@Override
public boolean configure(String name, Map<String, Object> params) {
final Map<String, String> configs = _configDao.getConfiguration("management-server", params);
_sslCopy = Boolean.parseBoolean(configs.get("secstorage.encrypt.copy"));
_proxy = configs.get(Config.SecStorageProxy.key());
String cert = configs.get("secstorage.ssl.cert.domain");

View File

@ -18,7 +18,6 @@ package com.cloud.storage.secondary;
import org.apache.log4j.Logger;
import com.cloud.agent.AgentManager;
import com.cloud.agent.Listener;
import com.cloud.agent.api.AgentControlAnswer;
import com.cloud.agent.api.AgentControlCommand;
@ -35,11 +34,9 @@ public class SecondaryStorageListener implements Listener {
private final static Logger s_logger = Logger.getLogger(SecondaryStorageListener.class);
SecondaryStorageVmManager _ssVmMgr = null;
AgentManager _agentMgr = null;
public SecondaryStorageListener(SecondaryStorageVmManager ssVmMgr, AgentManager agentMgr) {
public SecondaryStorageListener(SecondaryStorageVmManager ssVmMgr) {
_ssVmMgr = ssVmMgr;
_agentMgr = agentMgr;
}
@Override

View File

@ -211,8 +211,6 @@ public class SecondaryStorageManagerImpl extends ManagerBase implements Secondar
UserVmDetailsDao _vmDetailsDao;
@Inject
protected ResourceManager _resourceMgr;
//@Inject // TODO this is a very strange usage, a singleton class need to inject itself?
protected SecondaryStorageVmManager _ssvmMgr;
@Inject
NetworkDao _networkDao;
@Inject
@ -250,7 +248,6 @@ public class SecondaryStorageManagerImpl extends ManagerBase implements Secondar
private final GlobalLock _allocLock = GlobalLock.getInternLock(getAllocLockName());
public SecondaryStorageManagerImpl() {
_ssvmMgr = this;
}
@Override
@ -825,7 +822,7 @@ public class SecondaryStorageManagerImpl extends ManagerBase implements Secondar
value = agentMgrConfigs.get("port");
_mgmtPort = NumbersUtil.parseInt(value, 8250);
_listener = new SecondaryStorageListener(this, _agentMgr);
_listener = new SecondaryStorageListener(this);
_agentMgr.registerForHostEvents(_listener, true, false, true);
_itMgr.registerGuru(VirtualMachine.Type.SecondaryStorageVm, this);

View File

@ -34,7 +34,6 @@ import org.apache.cloudstack.api.command.user.snapshot.DeleteSnapshotPoliciesCmd
import org.apache.cloudstack.api.command.user.snapshot.ListSnapshotPoliciesCmd;
import org.apache.cloudstack.api.command.user.snapshot.ListSnapshotsCmd;
import org.apache.cloudstack.context.CallContext;
import org.apache.cloudstack.engine.orchestration.service.VolumeOrchestrationService;
import org.apache.cloudstack.engine.subsystem.api.storage.DataStore;
import org.apache.cloudstack.engine.subsystem.api.storage.DataStoreManager;
import org.apache.cloudstack.engine.subsystem.api.storage.EndPoint;
@ -54,7 +53,6 @@ import org.apache.cloudstack.storage.datastore.db.SnapshotDataStoreDao;
import org.apache.cloudstack.storage.datastore.db.SnapshotDataStoreVO;
import org.apache.cloudstack.storage.datastore.db.StoragePoolVO;
import com.cloud.agent.AgentManager;
import com.cloud.agent.api.Answer;
import com.cloud.agent.api.Command;
import com.cloud.agent.api.DeleteSnapshotsDirCommand;
@ -64,7 +62,6 @@ import com.cloud.configuration.Config;
import com.cloud.configuration.Resource.ResourceType;
import com.cloud.dc.ClusterVO;
import com.cloud.dc.dao.ClusterDao;
import com.cloud.dc.dao.DataCenterDao;
import com.cloud.domain.dao.DomainDao;
import com.cloud.event.ActionEvent;
import com.cloud.event.ActionEventUtils;
@ -94,17 +91,14 @@ import com.cloud.storage.StoragePool;
import com.cloud.storage.VMTemplateVO;
import com.cloud.storage.Volume;
import com.cloud.storage.VolumeVO;
import com.cloud.storage.dao.DiskOfferingDao;
import com.cloud.storage.dao.SnapshotDao;
import com.cloud.storage.dao.SnapshotPolicyDao;
import com.cloud.storage.dao.SnapshotScheduleDao;
import com.cloud.storage.dao.VMTemplateDao;
import com.cloud.storage.dao.VolumeDao;
import com.cloud.storage.secondary.SecondaryStorageVmManager;
import com.cloud.storage.template.TemplateConstants;
import com.cloud.tags.ResourceTagVO;
import com.cloud.tags.dao.ResourceTagDao;
import com.cloud.template.TemplateManager;
import com.cloud.user.Account;
import com.cloud.user.AccountManager;
import com.cloud.user.AccountVO;
@ -138,46 +132,38 @@ import com.cloud.vm.snapshot.dao.VMSnapshotDao;
public class SnapshotManagerImpl extends ManagerBase implements SnapshotManager, SnapshotApiService {
private static final Logger s_logger = Logger.getLogger(SnapshotManagerImpl.class);
@Inject
protected VMTemplateDao _templateDao;
private VMTemplateDao _templateDao;
@Inject
protected UserVmDao _vmDao;
private UserVmDao _vmDao;
@Inject
protected VolumeDao _volsDao;
private VolumeDao _volsDao;
@Inject
protected AccountDao _accountDao;
private AccountDao _accountDao;
@Inject
protected DataCenterDao _dcDao;
private SnapshotDao _snapshotDao;
@Inject
protected DiskOfferingDao _diskOfferingDao;
private SnapshotDataStoreDao _snapshotStoreDao;
@Inject
protected SnapshotDao _snapshotDao;
private PrimaryDataStoreDao _storagePoolDao;
@Inject
protected SnapshotDataStoreDao _snapshotStoreDao;
private final SnapshotPolicyDao _snapshotPolicyDao = null;
@Inject
protected PrimaryDataStoreDao _storagePoolDao;
private SnapshotScheduleDao _snapshotScheduleDao;
@Inject
protected SnapshotPolicyDao _snapshotPolicyDao = null;
private DomainDao _domainDao;
@Inject
protected SnapshotScheduleDao _snapshotScheduleDao;
private StorageManager _storageMgr;
@Inject
protected DomainDao _domainDao;
private SnapshotScheduler _snapSchedMgr;
@Inject
protected StorageManager _storageMgr;
@Inject
protected AgentManager _agentMgr;
@Inject
protected SnapshotScheduler _snapSchedMgr;
@Inject
protected AccountManager _accountMgr;
private AccountManager _accountMgr;
@Inject
private AlertManager _alertMgr;
@Inject
protected ClusterDao _clusterDao;
private ClusterDao _clusterDao;
@Inject
private ResourceLimitService _resourceLimitMgr;
@Inject
private SecondaryStorageVmManager _ssvmMgr;
@Inject
private DomainManager _domainMgr;
@Inject
private ResourceTagDao _resourceTagDao;
@ -185,33 +171,23 @@ public class SnapshotManagerImpl extends ManagerBase implements SnapshotManager,
private ConfigurationDao _configDao;
@Inject
private VMSnapshotDao _vmSnapshotDao;
String _name;
@Inject
TemplateManager templateMgr;
private DataStoreManager dataStoreMgr;
@Inject
VolumeOrchestrationService volumeMgr;
private SnapshotService snapshotSrv;
@Inject
DataStoreManager dataStoreMgr;
private VolumeDataFactory volFactory;
@Inject
SnapshotService snapshotSrv;
private SnapshotDataFactory snapshotFactory;
@Inject
VolumeDataFactory volFactory;
@Inject
SnapshotDataFactory snapshotFactory;
@Inject
EndPointSelector _epSelector;
private EndPointSelector _epSelector;
@Inject
private ResourceManager _resourceMgr;
@Inject
StorageStrategyFactory _storageStrategyFactory;
private StorageStrategyFactory _storageStrategyFactory;
private int _totalRetries;
private int _pauseInterval;
private int _backupsnapshotwait;
Boolean backup;
protected SearchBuilder<SnapshotVO> PolicySnapshotSearch;
protected SearchBuilder<SnapshotPolicyVO> PoliciesForSnapSearch;
@Override
public Answer sendToPool(Volume vol, Command cmd) {
@ -970,8 +946,6 @@ public class SnapshotManagerImpl extends ManagerBase implements SnapshotManager,
public boolean configure(String name, Map<String, Object> params) throws ConfigurationException {
String value = _configDao.getValue(Config.BackupSnapshotWait.toString());
_backupsnapshotwait = NumbersUtil.parseInt(value, Integer.parseInt(Config.BackupSnapshotWait.getDefaultValue()));
backup = Boolean.parseBoolean(_configDao.getValue(Config.BackupSnapshotAfterTakingSnapshot.toString()));
Type.HOURLY.setMax(NumbersUtil.parseInt(_configDao.getValue("snapshot.max.hourly"), HOURLYMAX));
Type.DAILY.setMax(NumbersUtil.parseInt(_configDao.getValue("snapshot.max.daily"), DAILYMAX));

View File

@ -67,8 +67,6 @@ import com.cloud.storage.UploadVO;
import com.cloud.storage.VMTemplateVO;
import com.cloud.storage.VolumeVO;
import com.cloud.storage.dao.UploadDao;
import com.cloud.storage.dao.VMTemplateDao;
import com.cloud.storage.secondary.SecondaryStorageVmManager;
import com.cloud.utils.NumbersUtil;
import com.cloud.utils.component.ManagerBase;
import com.cloud.utils.concurrency.NamedThreadFactory;
@ -89,35 +87,30 @@ public class UploadMonitorImpl extends ManagerBase implements UploadMonitor {
static final Logger s_logger = Logger.getLogger(UploadMonitorImpl.class);
@Inject
UploadDao _uploadDao;
private UploadDao _uploadDao;
@Inject
SecondaryStorageVmDao _secStorageVmDao;
private SecondaryStorageVmDao _secStorageVmDao;
@Inject
HostDao _serverDao = null;
@Inject
VMTemplateDao _templateDao = null;
private final HostDao _serverDao = null;
@Inject
private AgentManager _agentMgr;
@Inject
ConfigurationDao _configDao;
private ConfigurationDao _configDao;
@Inject
ResourceManager _resourceMgr;
private ResourceManager _resourceMgr;
@Inject
SecondaryStorageVmManager _ssvmMgr;
private EndPointSelector _epSelector;
@Inject
EndPointSelector _epSelector;
@Inject
DataStoreManager storeMgr;
private DataStoreManager storeMgr;
private String _name;
private Boolean _sslCopy = new Boolean(false);
private String _ssvmUrlDomain;
private ScheduledExecutorService _executor = null;
Timer _timer;
int _cleanupInterval;
int _urlExpirationInterval;
private Timer _timer;
private int _cleanupInterval;
private int _urlExpirationInterval;
final Map<UploadVO, UploadListener> _listenerMap = new ConcurrentHashMap<UploadVO, UploadListener>();

View File

@ -72,12 +72,10 @@ import org.apache.cloudstack.framework.async.AsyncCallFuture;
import org.apache.cloudstack.framework.config.ConfigKey;
import org.apache.cloudstack.framework.config.Configurable;
import org.apache.cloudstack.framework.config.dao.ConfigurationDao;
import org.apache.cloudstack.framework.jobs.AsyncJobManager;
import org.apache.cloudstack.managed.context.ManagedContextRunnable;
import org.apache.cloudstack.storage.command.AttachCommand;
import org.apache.cloudstack.storage.command.CommandResult;
import org.apache.cloudstack.storage.command.DettachCommand;
import org.apache.cloudstack.storage.datastore.db.ImageStoreDao;
import org.apache.cloudstack.storage.datastore.db.PrimaryDataStoreDao;
import org.apache.cloudstack.storage.datastore.db.StoragePoolVO;
import org.apache.cloudstack.storage.datastore.db.TemplateDataStoreDao;
@ -99,7 +97,6 @@ import com.cloud.configuration.Config;
import com.cloud.configuration.Resource.ResourceType;
import com.cloud.dc.DataCenter;
import com.cloud.dc.DataCenterVO;
import com.cloud.dc.dao.ClusterDao;
import com.cloud.dc.dao.DataCenterDao;
import com.cloud.domain.Domain;
import com.cloud.domain.dao.DomainDao;
@ -107,7 +104,6 @@ import com.cloud.event.ActionEvent;
import com.cloud.event.EventTypes;
import com.cloud.event.UsageEventUtils;
import com.cloud.event.UsageEventVO;
import com.cloud.event.dao.EventDao;
import com.cloud.event.dao.UsageEventDao;
import com.cloud.exception.InvalidParameterValueException;
import com.cloud.exception.PermissionDeniedException;
@ -117,11 +113,8 @@ import com.cloud.host.HostVO;
import com.cloud.host.dao.HostDao;
import com.cloud.hypervisor.Hypervisor;
import com.cloud.hypervisor.Hypervisor.HypervisorType;
import com.cloud.hypervisor.HypervisorGuruManager;
import com.cloud.projects.Project;
import com.cloud.projects.ProjectManager;
import com.cloud.resource.ResourceManager;
import com.cloud.server.ConfigurationServer;
import com.cloud.storage.DataStoreRole;
import com.cloud.storage.GuestOSVO;
import com.cloud.storage.LaunchPermissionVO;
@ -148,16 +141,10 @@ import com.cloud.storage.dao.GuestOSDao;
import com.cloud.storage.dao.LaunchPermissionDao;
import com.cloud.storage.dao.SnapshotDao;
import com.cloud.storage.dao.StoragePoolHostDao;
import com.cloud.storage.dao.UploadDao;
import com.cloud.storage.dao.VMTemplateDao;
import com.cloud.storage.dao.VMTemplateDetailsDao;
import com.cloud.storage.dao.VMTemplateHostDao;
import com.cloud.storage.dao.VMTemplatePoolDao;
import com.cloud.storage.dao.VMTemplateZoneDao;
import com.cloud.storage.dao.VolumeDao;
import com.cloud.storage.download.DownloadMonitor;
import com.cloud.storage.secondary.SecondaryStorageVmManager;
import com.cloud.storage.upload.UploadMonitor;
import com.cloud.template.TemplateAdapter.TemplateAdapterType;
import com.cloud.user.Account;
import com.cloud.user.AccountManager;
@ -166,11 +153,8 @@ import com.cloud.user.AccountVO;
import com.cloud.user.ResourceLimitService;
import com.cloud.user.User;
import com.cloud.user.dao.AccountDao;
import com.cloud.user.dao.UserAccountDao;
import com.cloud.user.dao.UserDao;
import com.cloud.uservm.UserVm;
import com.cloud.utils.EnumUtils;
import com.cloud.utils.NumbersUtil;
import com.cloud.utils.Pair;
import com.cloud.utils.component.AdapterBase;
import com.cloud.utils.component.ManagerBase;
@ -180,12 +164,10 @@ import com.cloud.utils.db.Transaction;
import com.cloud.utils.db.TransactionCallbackNoReturn;
import com.cloud.utils.db.TransactionStatus;
import com.cloud.utils.exception.CloudRuntimeException;
import com.cloud.vm.UserVmManager;
import com.cloud.vm.UserVmVO;
import com.cloud.vm.VMInstanceVO;
import com.cloud.vm.VirtualMachine.State;
import com.cloud.vm.dao.UserVmDao;
import com.cloud.vm.dao.UserVmDetailsDao;
import com.cloud.vm.dao.VMInstanceDao;
@Local(value = {TemplateManager.class, TemplateApiService.class})
@ -193,116 +175,78 @@ public class TemplateManagerImpl extends ManagerBase implements TemplateManager,
private final static Logger s_logger = Logger.getLogger(TemplateManagerImpl.class);
@Inject
VMTemplateDao _tmpltDao;
private VMTemplateDao _tmpltDao;
@Inject
TemplateDataStoreDao _tmplStoreDao;
private TemplateDataStoreDao _tmplStoreDao;
@Inject
VMTemplatePoolDao _tmpltPoolDao;
private VMTemplatePoolDao _tmpltPoolDao;
@Inject
VMTemplateZoneDao _tmpltZoneDao;
private VMTemplateZoneDao _tmpltZoneDao;
@Inject
protected UserVmDetailsDao _vmDetailsDao;
private VMInstanceDao _vmInstanceDao;
@Inject
protected VMTemplateDetailsDao _templateDetailsDao;
private PrimaryDataStoreDao _poolDao;
@Inject
VMInstanceDao _vmInstanceDao;
private StoragePoolHostDao _poolHostDao;
@Inject
PrimaryDataStoreDao _poolDao;
private AccountDao _accountDao;
@Inject
StoragePoolHostDao _poolHostDao;
private AgentManager _agentMgr;
@Inject
EventDao _eventDao;
private AccountManager _accountMgr;
@Inject
DownloadMonitor _downloadMonitor;
private HostDao _hostDao;
@Inject
UploadMonitor _uploadMonitor;
private DataCenterDao _dcDao;
@Inject
UserAccountDao _userAccountDao;
private UserVmDao _userVmDao;
@Inject
AccountDao _accountDao;
private VolumeDao _volumeDao;
@Inject
UserDao _userDao;
private SnapshotDao _snapshotDao;
@Inject
AgentManager _agentMgr;
private ConfigurationDao _configDao;
@Inject
AccountManager _accountMgr;
private DomainDao _domainDao;
@Inject
HostDao _hostDao;
private GuestOSDao _guestOSDao;
@Inject
DataCenterDao _dcDao;
private StorageManager _storageMgr;
@Inject
UserVmDao _userVmDao;
private UsageEventDao _usageEventDao;
@Inject
VolumeDao _volumeDao;
private AccountService _accountService;
@Inject
SnapshotDao _snapshotDao;
private ResourceLimitService _resourceLimitMgr;
@Inject
ConfigurationDao _configDao;
private LaunchPermissionDao _launchPermissionDao;
@Inject
ClusterDao _clusterDao;
private ProjectManager _projectMgr;
@Inject
DomainDao _domainDao;
private VolumeDataFactory _volFactory;
@Inject
UploadDao _uploadDao;
private TemplateDataFactory _tmplFactory;
@Inject
protected GuestOSDao _guestOSDao;
private SnapshotDataFactory _snapshotFactory;
@Inject
StorageManager _storageMgr;
private TemplateService _tmpltSvr;
@Inject
AsyncJobManager _asyncMgr;
private DataStoreManager _dataStoreMgr;
@Inject
UserVmManager _vmMgr;
private VolumeOrchestrationService _volumeMgr;
@Inject
UsageEventDao _usageEventDao;
private EndPointSelector _epSelector;
@Inject
HypervisorGuruManager _hvGuruMgr;
@Inject
AccountService _accountService;
@Inject
ResourceLimitService _resourceLimitMgr;
@Inject
SecondaryStorageVmManager _ssvmMgr;
@Inject
LaunchPermissionDao _launchPermissionDao;
@Inject
ProjectManager _projectMgr;
@Inject
VolumeDataFactory _volFactory;
@Inject
TemplateDataFactory _tmplFactory;
@Inject
SnapshotDataFactory _snapshotFactory;
@Inject
TemplateService _tmpltSvr;
@Inject
DataStoreManager _dataStoreMgr;
@Inject
protected ResourceManager _resourceMgr;
@Inject
VolumeOrchestrationService _volumeMgr;
@Inject
ImageStoreDao _imageStoreDao;
@Inject
EndPointSelector _epSelector;
@Inject
UserVmJoinDao _userVmJoinDao;
@Inject
VMTemplateHostDao _vmTemplateHostDao;
private UserVmJoinDao _userVmJoinDao;
private boolean _disableExtraction = false;
private ExecutorService _preloadExecutor;
private List<TemplateAdapter> _adapters;
@Inject
ConfigurationServer _configServer;
int _primaryStorageDownloadWait;
int _storagePoolMaxWaitSeconds = 3600;
boolean _disableExtraction = false;
ExecutorService _preloadExecutor;
protected List<TemplateAdapter> _adapters;
private StorageCacheManager cacheMgr;
@Inject
StorageCacheManager cacheMgr;
@Inject
EndPointSelector selector;
private EndPointSelector selector;
private TemplateAdapter getAdapter(HypervisorType type) {
TemplateAdapter adapter = null;
@ -842,13 +786,10 @@ public class TemplateManagerImpl extends ManagerBase implements TemplateManager,
@Override
public boolean configure(String name, Map<String, Object> params) throws ConfigurationException {
String value = _configDao.getValue(Config.PrimaryStorageDownloadWait.toString());
_primaryStorageDownloadWait = NumbersUtil.parseInt(value, Integer.parseInt(Config.PrimaryStorageDownloadWait.getDefaultValue()));
String disableExtraction = _configDao.getValue(Config.DisableExtraction.toString());
_disableExtraction = (disableExtraction == null) ? false : Boolean.parseBoolean(disableExtraction);
_storagePoolMaxWaitSeconds = NumbersUtil.parseInt(_configDao.getValue(Config.StoragePoolMaxWaitSeconds.key()), 3600);
_preloadExecutor = Executors.newFixedThreadPool(8, new NamedThreadFactory("Template-Preloader"));
return true;

View File

@ -106,7 +106,6 @@ import com.cloud.storage.dao.DiskOfferingDaoImpl;
import com.cloud.storage.dao.SnapshotDaoImpl;
import com.cloud.storage.dao.StoragePoolDetailsDaoImpl;
import com.cloud.storage.dao.VolumeDaoImpl;
import com.cloud.storage.secondary.SecondaryStorageVmManager;
import com.cloud.tags.dao.ResourceTagsDaoImpl;
import com.cloud.user.AccountDetailsDao;
import com.cloud.user.AccountManager;
@ -180,11 +179,6 @@ public class ChildTestConfiguration {
return Mockito.mock(ProjectManager.class);
}
@Bean
public SecondaryStorageVmManager ssvmMgr() {
return Mockito.mock(SecondaryStorageVmManager.class);
}
@Bean
public VpcManager vpcMgr() {
return Mockito.mock(VpcManager.class);