You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by ah...@apache.org on 2013/01/10 23:47:20 UTC
[6/25] removed componentlocator and inject
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/f40e7b75/core/src/com/cloud/storage/template/DownloadManagerImpl.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/storage/template/DownloadManagerImpl.java b/core/src/com/cloud/storage/template/DownloadManagerImpl.java
index f8b075d..d5ed71e 100755
--- a/core/src/com/cloud/storage/template/DownloadManagerImpl.java
+++ b/core/src/com/cloud/storage/template/DownloadManagerImpl.java
@@ -29,8 +29,8 @@ import java.security.NoSuchAlgorithmException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
-import java.util.Enumeration;
import java.util.HashMap;
+import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.UUID;
@@ -43,7 +43,6 @@ import javax.naming.ConfigurationException;
import org.apache.log4j.Logger;
-import com.cloud.agent.api.Answer;
import com.cloud.agent.api.storage.DownloadAnswer;
import com.cloud.agent.api.storage.DownloadCommand;
import com.cloud.agent.api.storage.DownloadCommand.Proxy;
@@ -60,10 +59,6 @@ import com.cloud.storage.template.Processor.FormatInfo;
import com.cloud.storage.template.TemplateDownloader.DownloadCompleteCallback;
import com.cloud.storage.template.TemplateDownloader.Status;
import com.cloud.utils.NumbersUtil;
-import com.cloud.utils.component.Adapter;
-import com.cloud.utils.component.Adapters;
-import com.cloud.utils.component.ComponentLocator;
-import com.cloud.utils.component.LegacyComponentLocator.ComponentInfo;
import com.cloud.utils.exception.CloudRuntimeException;
import com.cloud.utils.script.OutputInterpreter;
import com.cloud.utils.script.Script;
@@ -72,7 +67,7 @@ import com.cloud.utils.script.Script;
public class DownloadManagerImpl implements DownloadManager {
private String _name;
StorageLayer _storage;
- Adapters<Processor> _processors;
+ Map<String, Processor> _processors;
public class Completion implements DownloadCompleteCallback {
private final String jobId;
@@ -94,14 +89,14 @@ public class DownloadManagerImpl implements DownloadManager {
private final boolean hvm;
private final ImageFormat format;
private String tmpltPath;
- private String description;
+ private final String description;
private String checksum;
- private Long accountId;
- private String installPathPrefix;
+ private final Long accountId;
+ private final String installPathPrefix;
private long templatesize;
private long templatePhysicalSize;
- private long id;
- private ResourceType resourceType;
+ private final long id;
+ private final ResourceType resourceType;
public DownloadJob(TemplateDownloader td, String jobId, long id, String tmpltName, ImageFormat format, boolean hvm, Long accountId, String descr, String cksum, String installPathPrefix, ResourceType resourceType) {
super();
@@ -160,10 +155,10 @@ public class DownloadManagerImpl implements DownloadManager {
}
public ResourceType getResourceType() {
- return resourceType;
- }
+ return resourceType;
+ }
- public void setTmpltPath(String tmpltPath) {
+ public void setTmpltPath(String tmpltPath) {
this.tmpltPath = tmpltPath;
}
@@ -205,9 +200,9 @@ public class DownloadManagerImpl implements DownloadManager {
public long getTemplatePhysicalSize() {
return templatePhysicalSize;
}
-
+
public void setCheckSum(String checksum) {
- this.checksum = checksum;
+ this.checksum = checksum;
}
}
@@ -216,7 +211,7 @@ public class DownloadManagerImpl implements DownloadManager {
private String _volumeDir;
private String createTmpltScr;
private String createVolScr;
- private Adapters<Processor> processors;
+ private List<Processor> processors;
private ExecutorService threadPool;
@@ -278,9 +273,9 @@ public class DownloadManagerImpl implements DownloadManager {
break;
}
}
-
+
private String computeCheckSum(File f) {
- byte[] buffer = new byte[8192];
+ byte[] buffer = new byte[8192];
int read = 0;
MessageDigest digest;
String checksum = null;
@@ -296,16 +291,16 @@ public class DownloadManagerImpl implements DownloadManager {
checksum = String.format("%032x",bigInt);
return checksum;
}catch(IOException e) {
- return null;
+ return null;
}catch (NoSuchAlgorithmException e) {
- return null;
+ return null;
}
finally {
try {
- if(is != null)
- is.close();
+ if(is != null)
+ is.close();
} catch (IOException e) {
- return null;
+ return null;
}
}
}
@@ -320,17 +315,17 @@ public class DownloadManagerImpl implements DownloadManager {
TemplateDownloader td = dnld.getTemplateDownloader();
String resourcePath = null;
ResourceType resourceType = dnld.getResourceType();
-
+
// once template path is set, remove the parent dir so that the template is installed with a relative path
String finalResourcePath = "";
if (resourceType == ResourceType.TEMPLATE){
- finalResourcePath += _templateDir + File.separator + dnld.getAccountId() + File.separator + dnld.getId() + File.separator;
- resourcePath = dnld.getInstallPathPrefix() + dnld.getAccountId() + File.separator + dnld.getId() + File.separator;// dnld.getTmpltName();
+ finalResourcePath += _templateDir + File.separator + dnld.getAccountId() + File.separator + dnld.getId() + File.separator;
+ resourcePath = dnld.getInstallPathPrefix() + dnld.getAccountId() + File.separator + dnld.getId() + File.separator;// dnld.getTmpltName();
}else {
- finalResourcePath += _volumeDir + File.separator + dnld.getId() + File.separator;
- resourcePath = dnld.getInstallPathPrefix() + dnld.getId() + File.separator;// dnld.getTmpltName();
+ finalResourcePath += _volumeDir + File.separator + dnld.getId() + File.separator;
+ resourcePath = dnld.getInstallPathPrefix() + dnld.getId() + File.separator;// dnld.getTmpltName();
}
-
+
_storage.mkdirs(resourcePath);
dnld.setTmpltPath(finalResourcePath);
@@ -389,9 +384,9 @@ public class DownloadManagerImpl implements DownloadManager {
// Set permissions for template/volume.properties
String propertiesFile = resourcePath;
if (resourceType == ResourceType.TEMPLATE){
- propertiesFile += "/template.properties";
+ propertiesFile += "/template.properties";
}else{
- propertiesFile += "/volume.properties";
+ propertiesFile += "/volume.properties";
}
File templateProperties = new File(propertiesFile);
_storage.setWorldReadableAndWriteable(templateProperties);
@@ -405,9 +400,9 @@ public class DownloadManagerImpl implements DownloadManager {
return "Unable to download due to " + e.getMessage();
}
- Enumeration<Processor> en = _processors.enumeration();
- while (en.hasMoreElements()) {
- Processor processor = en.nextElement();
+ Iterator<Processor> en = _processors.values().iterator();
+ while (en.hasNext()) {
+ Processor processor = en.next();
FormatInfo info = null;
try {
@@ -423,7 +418,7 @@ public class DownloadManagerImpl implements DownloadManager {
break;
}
}
-
+
if (!loc.save()) {
s_logger.warn("Cleaning up because we're unable to save the formats");
loc.purge();
@@ -450,9 +445,9 @@ public class DownloadManagerImpl implements DownloadManager {
String jobId = uuid.toString();
String tmpDir = "";
if(resourceType == ResourceType.TEMPLATE){
- tmpDir = installPathPrefix + File.separator + accountId + File.separator + id;
+ tmpDir = installPathPrefix + File.separator + accountId + File.separator + id;
}else {
- tmpDir = installPathPrefix + File.separator + id;
+ tmpDir = installPathPrefix + File.separator + id;
}
try {
@@ -463,7 +458,7 @@ public class DownloadManagerImpl implements DownloadManager {
}
// TO DO - define constant for volume properties.
File file = ResourceType.TEMPLATE == resourceType ? _storage.getFile(tmpDir + File.separator + TemplateLocation.Filename) :
- _storage.getFile(tmpDir + File.separator + "volume.properties");
+ _storage.getFile(tmpDir + File.separator + "volume.properties");
if ( file.exists() ) {
file.delete();
}
@@ -524,9 +519,9 @@ public class DownloadManagerImpl implements DownloadManager {
}
return 0;
}
-
+
public String getDownloadCheckSum(String jobId) {
- DownloadJob dj = jobs.get(jobId);
+ DownloadJob dj = jobs.get(jobId);
if (dj != null) {
return dj.getChecksum();
}
@@ -589,7 +584,7 @@ public class DownloadManagerImpl implements DownloadManager {
@Override
public DownloadAnswer handleDownloadCommand(SecondaryStorageResource resource, DownloadCommand cmd) {
- ResourceType resourceType = cmd.getResourceType();
+ ResourceType resourceType = cmd.getResourceType();
if (cmd instanceof DownloadProgressCommand) {
return handleDownloadProgressCmd( resource, (DownloadProgressCommand) cmd);
}
@@ -604,9 +599,9 @@ public class DownloadManagerImpl implements DownloadManager {
String installPathPrefix = null;
if (ResourceType.TEMPLATE == resourceType){
- installPathPrefix = resource.getRootDir(cmd) + File.separator + _templateDir;
+ installPathPrefix = resource.getRootDir(cmd) + File.separator + _templateDir;
}else {
- installPathPrefix = resource.getRootDir(cmd) + File.separator + _volumeDir;
+ installPathPrefix = resource.getRootDir(cmd) + File.separator + _volumeDir;
}
String user = null;
@@ -693,10 +688,10 @@ public class DownloadManagerImpl implements DownloadManager {
}
-
+
private List<String> listVolumes(String rootdir) {
List<String> result = new ArrayList<String>();
-
+
Script script = new Script(listVolScr, s_logger);
script.add("-r", rootdir);
ZfsPathParser zpp = new ZfsPathParser(rootdir);
@@ -705,12 +700,12 @@ public class DownloadManagerImpl implements DownloadManager {
s_logger.info("found " + zpp.getPaths().size() + " volumes" + zpp.getPaths());
return result;
}
-
-
-
+
+
+
private List<String> listTemplates(String rootdir) {
List<String> result = new ArrayList<String>();
-
+
Script script = new Script(listTmpltScr, s_logger);
script.add("-r", rootdir);
ZfsPathParser zpp = new ZfsPathParser(rootdir);
@@ -724,11 +719,11 @@ public class DownloadManagerImpl implements DownloadManager {
public Map<String, TemplateInfo> gatherTemplateInfo(String rootDir) {
Map<String, TemplateInfo> result = new HashMap<String, TemplateInfo>();
String templateDir = rootDir + File.separator + _templateDir;
-
+
if (! _storage.exists(templateDir)) {
_storage.mkdirs(templateDir);
}
-
+
List<String> publicTmplts = listTemplates(templateDir);
for (String tmplt : publicTmplts) {
String path = tmplt.substring(0, tmplt.lastIndexOf(File.separator));
@@ -746,18 +741,18 @@ public class DownloadManagerImpl implements DownloadManager {
}
TemplateInfo tInfo = loc.getTemplateInfo();
-
+
if ((tInfo.size == tInfo.physicalSize) && (tInfo.installPath.endsWith(ImageFormat.OVA.getFileExtension()))) {
- try {
- Processor processor = _processors.get("VMDK Processor");
- VmdkProcessor vmdkProcessor = (VmdkProcessor)processor;
- long vSize = vmdkProcessor.getTemplateVirtualSize(path, tInfo.installPath.substring(tInfo.installPath.lastIndexOf(File.separator) + 1));
- tInfo.size = vSize;
- loc.updateVirtualSize(vSize);
- loc.save();
- } catch (Exception e) {
- s_logger.error("Unable to get the virtual size of the template: " + tInfo.installPath + " due to " + e.getMessage());
- }
+ try {
+ Processor processor = _processors.get("VMDK Processor");
+ VmdkProcessor vmdkProcessor = (VmdkProcessor)processor;
+ long vSize = vmdkProcessor.getTemplateVirtualSize(path, tInfo.installPath.substring(tInfo.installPath.lastIndexOf(File.separator) + 1));
+ tInfo.size = vSize;
+ loc.updateVirtualSize(vSize);
+ loc.save();
+ } catch (Exception e) {
+ s_logger.error("Unable to get the virtual size of the template: " + tInfo.installPath + " due to " + e.getMessage());
+ }
}
result.put(tInfo.templateName, tInfo);
@@ -777,52 +772,52 @@ public class DownloadManagerImpl implements DownloadManager {
return result;
}
- @Override
- public Map<Long, TemplateInfo> gatherVolumeInfo(String rootDir) {
- Map<Long, TemplateInfo> result = new HashMap<Long, TemplateInfo>();
- String volumeDir = rootDir + File.separator + _volumeDir;
-
- if (! _storage.exists(volumeDir)) {
- _storage.mkdirs(volumeDir);
- }
-
- List<String> vols = listVolumes(volumeDir);
- for (String vol : vols) {
- String path = vol.substring(0, vol.lastIndexOf(File.separator));
- TemplateLocation loc = new TemplateLocation(_storage, path);
- try {
- if (!loc.load()) {
- s_logger.warn("Post download installation was not completed for " + path);
- //loc.purge();
- _storage.cleanup(path, volumeDir);
- continue;
- }
- } catch (IOException e) {
- s_logger.warn("Unable to load volume location " + path, e);
- continue;
- }
-
- TemplateInfo vInfo = loc.getTemplateInfo();
-
- if ((vInfo.size == vInfo.physicalSize) && (vInfo.installPath.endsWith(ImageFormat.OVA.getFileExtension()))) {
- try {
- Processor processor = _processors.get("VMDK Processor");
- VmdkProcessor vmdkProcessor = (VmdkProcessor)processor;
- long vSize = vmdkProcessor.getTemplateVirtualSize(path, vInfo.installPath.substring(vInfo.installPath.lastIndexOf(File.separator) + 1));
- vInfo.size = vSize;
- loc.updateVirtualSize(vSize);
- loc.save();
- } catch (Exception e) {
- s_logger.error("Unable to get the virtual size of the volume: " + vInfo.installPath + " due to " + e.getMessage());
- }
- }
-
- result.put(vInfo.getId(), vInfo);
- s_logger.debug("Added volume name: " + vInfo.templateName + ", path: " + vol);
- }
- return result;
- }
-
+ @Override
+ public Map<Long, TemplateInfo> gatherVolumeInfo(String rootDir) {
+ Map<Long, TemplateInfo> result = new HashMap<Long, TemplateInfo>();
+ String volumeDir = rootDir + File.separator + _volumeDir;
+
+ if (! _storage.exists(volumeDir)) {
+ _storage.mkdirs(volumeDir);
+ }
+
+ List<String> vols = listVolumes(volumeDir);
+ for (String vol : vols) {
+ String path = vol.substring(0, vol.lastIndexOf(File.separator));
+ TemplateLocation loc = new TemplateLocation(_storage, path);
+ try {
+ if (!loc.load()) {
+ s_logger.warn("Post download installation was not completed for " + path);
+ //loc.purge();
+ _storage.cleanup(path, volumeDir);
+ continue;
+ }
+ } catch (IOException e) {
+ s_logger.warn("Unable to load volume location " + path, e);
+ continue;
+ }
+
+ TemplateInfo vInfo = loc.getTemplateInfo();
+
+ if ((vInfo.size == vInfo.physicalSize) && (vInfo.installPath.endsWith(ImageFormat.OVA.getFileExtension()))) {
+ try {
+ Processor processor = _processors.get("VMDK Processor");
+ VmdkProcessor vmdkProcessor = (VmdkProcessor)processor;
+ long vSize = vmdkProcessor.getTemplateVirtualSize(path, vInfo.installPath.substring(vInfo.installPath.lastIndexOf(File.separator) + 1));
+ vInfo.size = vSize;
+ loc.updateVirtualSize(vSize);
+ loc.save();
+ } catch (Exception e) {
+ s_logger.error("Unable to get the virtual size of the volume: " + vInfo.installPath + " due to " + e.getMessage());
+ }
+ }
+
+ result.put(vInfo.getId(), vInfo);
+ s_logger.debug("Added volume name: " + vInfo.templateName + ", path: " + vol);
+ }
+ return result;
+ }
+
private int deleteDownloadDirectories(File downloadPath, int deleted) {
try {
if (downloadPath.exists()) {
@@ -881,7 +876,7 @@ public class DownloadManagerImpl implements DownloadManager {
String value = null;
- _storage = (StorageLayer) params.get(StorageLayer.InstanceConfigKey);
+ _storage = (StorageLayer)params.get(StorageLayer.InstanceConfigKey);
if (_storage == null) {
value = (String) params.get(StorageLayer.ClassConfigKey);
if (value == null) {
@@ -891,10 +886,14 @@ public class DownloadManagerImpl implements DownloadManager {
Class<StorageLayer> clazz;
try {
clazz = (Class<StorageLayer>) Class.forName(value);
+ _storage = clazz.newInstance();
} catch (ClassNotFoundException e) {
throw new ConfigurationException("Unable to instantiate " + value);
+ } catch (InstantiationException e) {
+ throw new ConfigurationException("Unable to instantiate " + value);
+ } catch (IllegalAccessException e) {
+ throw new ConfigurationException("Unable to instantiate " + value);
}
- _storage = ComponentLocator.inject(clazz);
}
String useSsl = (String)params.get("sslcopy");
if (useSsl != null) {
@@ -943,29 +942,27 @@ public class DownloadManagerImpl implements DownloadManager {
}
s_logger.info("createvolume.sh found in " + createVolScr);
- List<ComponentInfo<Adapter>> processors = new ArrayList<ComponentInfo<Adapter>>();
+ _processors = new HashMap<String, Processor>();
Processor processor = new VhdProcessor();
processor.configure("VHD Processor", params);
- processors.add(new ComponentInfo<Adapter>("VHD Processor", VhdProcessor.class, processor));
+ _processors.put("VHD Processor", processor);
processor = new IsoProcessor();
processor.configure("ISO Processor", params);
- processors.add(new ComponentInfo<Adapter>("ISO Processor", IsoProcessor.class, processor));
+ _processors.put("ISO Processor", processor);
processor = new QCOW2Processor();
processor.configure("QCOW2 Processor", params);
- processors.add(new ComponentInfo<Adapter>("QCOW2 Processor", QCOW2Processor.class, processor));
+ _processors.put("QCOW2 Processor", processor);
processor = new VmdkProcessor();
processor.configure("VMDK Processor", params);
- processors.add(new ComponentInfo<Adapter>("VMDK Processor", VmdkProcessor.class, processor));
+ _processors.put("VMDK Processor", processor);
processor = new RawImageProcessor();
processor.configure("Raw Image Processor", params);
- processors.add(new ComponentInfo<Adapter>("Raw Image Processor", RawImageProcessor.class, processor));
-
- _processors = new Adapters<Processor>("processors", processors);
+ _processors.put("Raw Image Processor", processor);
_templateDir = (String) params.get("public.templates.root.dir");
if (_templateDir == null) {
@@ -1047,5 +1044,5 @@ public class DownloadManagerImpl implements DownloadManager {
return;
}
}
-
+
}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/f40e7b75/engine/orchestration/src/org/apache/cloudstack/engine/datacenter/entity/api/db/dao/ClusterDaoImpl.java
----------------------------------------------------------------------
diff --git a/engine/orchestration/src/org/apache/cloudstack/engine/datacenter/entity/api/db/dao/ClusterDaoImpl.java b/engine/orchestration/src/org/apache/cloudstack/engine/datacenter/entity/api/db/dao/ClusterDaoImpl.java
index bd4a5ae..f33c673 100644
--- a/engine/orchestration/src/org/apache/cloudstack/engine/datacenter/entity/api/db/dao/ClusterDaoImpl.java
+++ b/engine/orchestration/src/org/apache/cloudstack/engine/datacenter/entity/api/db/dao/ClusterDaoImpl.java
@@ -32,109 +32,107 @@ import org.apache.cloudstack.engine.datacenter.entity.api.db.HostPodVO;
import org.apache.log4j.Logger;
import org.springframework.stereotype.Component;
-
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;
import com.cloud.utils.db.SearchBuilder;
import com.cloud.utils.db.SearchCriteria;
-import com.cloud.utils.db.UpdateBuilder;
import com.cloud.utils.db.SearchCriteria.Func;
import com.cloud.utils.db.SearchCriteria.Op;
import com.cloud.utils.db.Transaction;
+import com.cloud.utils.db.UpdateBuilder;
import com.cloud.utils.exception.CloudRuntimeException;
@Component(value="EngineClusterDao")
@Local(value=ClusterDao.class)
public class ClusterDaoImpl extends GenericDaoBase<ClusterVO, Long> implements ClusterDao {
- private static final Logger s_logger = Logger.getLogger(ClusterDaoImpl.class);
-
+ private static final Logger s_logger = Logger.getLogger(ClusterDaoImpl.class);
+
protected final SearchBuilder<ClusterVO> PodSearch;
protected final SearchBuilder<ClusterVO> HyTypeWithoutGuidSearch;
protected final SearchBuilder<ClusterVO> AvailHyperSearch;
protected final SearchBuilder<ClusterVO> ZoneSearch;
protected final SearchBuilder<ClusterVO> ZoneHyTypeSearch;
protected SearchBuilder<ClusterVO> StateChangeSearch;
- protected SearchBuilder<ClusterVO> UUIDSearch;
-
+ protected SearchBuilder<ClusterVO> UUIDSearch;
+
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;
-
+
protected 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();
-
- UUIDSearch = createSearchBuilder();
- UUIDSearch.and("uuid", UUIDSearch.entity().getUuid(), SearchCriteria.Op.EQ);
- UUIDSearch.done();
-
+
+ UUIDSearch = createSearchBuilder();
+ UUIDSearch.and("uuid", UUIDSearch.entity().getUuid(), SearchCriteria.Op.EQ);
+ UUIDSearch.done();
+
StateChangeSearch = createSearchBuilder();
StateChangeSearch.and("id", StateChangeSearch.entity().getId(), SearchCriteria.Op.EQ);
StateChangeSearch.and("state", StateChangeSearch.entity().getState(), SearchCriteria.Op.EQ);
StateChangeSearch.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();
@@ -142,7 +140,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();
@@ -154,13 +152,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>>();
@@ -173,20 +171,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;
@@ -196,49 +194,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();
@@ -246,30 +244,30 @@ 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);
txn.commit();
return result;
}
-
-
- @Override
- public ClusterVO findByUUID(String uuid) {
- SearchCriteria<ClusterVO> sc = UUIDSearch.create();
- sc.setParameters("uuid", uuid);
+
+
+ @Override
+ public ClusterVO findByUUID(String uuid) {
+ SearchCriteria<ClusterVO> sc = UUIDSearch.create();
+ sc.setParameters("uuid", uuid);
return findOneBy(sc);
- }
+ }
+
+ @Override
+ public boolean updateState(State currentState, Event event, State nextState, DataCenterResourceEntity clusterEntity, Object data) {
+
+ ClusterVO vo = findById(clusterEntity.getId());
- @Override
- public boolean updateState(State currentState, Event event, State nextState, DataCenterResourceEntity clusterEntity, Object data) {
-
- ClusterVO vo = findById(clusterEntity.getId());
-
- Date oldUpdatedTime = vo.getLastUpdated();
+ Date oldUpdatedTime = vo.getLastUpdated();
- SearchCriteria<ClusterVO> sc = StateChangeSearch.create();
+ SearchCriteria<ClusterVO> sc = StateChangeSearch.create();
sc.setParameters("id", vo.getId());
sc.setParameters("state", currentState);
@@ -277,14 +275,14 @@ public class ClusterDaoImpl extends GenericDaoBase<ClusterVO, Long> implements C
builder.set(vo, "state", nextState);
builder.set(vo, "lastUpdated", new Date());
- int rows = update((ClusterVO) vo, sc);
-
+ int rows = update(vo, sc);
+
if (rows == 0 && s_logger.isDebugEnabled()) {
- ClusterVO dbCluster = findByIdIncludingRemoved(vo.getId());
+ ClusterVO dbCluster = findByIdIncludingRemoved(vo.getId());
if (dbCluster != null) {
StringBuilder str = new StringBuilder("Unable to update ").append(vo.toString());
str.append(": DB Data={id=").append(dbCluster.getId()).append("; state=").append(dbCluster.getState()).append(";updatedTime=")
- .append(dbCluster.getLastUpdated());
+ .append(dbCluster.getLastUpdated());
str.append(": New Data={id=").append(vo.getId()).append("; state=").append(nextState).append("; event=").append(event).append("; updatedTime=").append(vo.getLastUpdated());
str.append(": stale Data={id=").append(vo.getId()).append("; state=").append(currentState).append("; event=").append(event).append("; updatedTime=").append(oldUpdatedTime);
} else {
@@ -292,7 +290,7 @@ public class ClusterDaoImpl extends GenericDaoBase<ClusterVO, Long> implements C
}
}
return rows > 0;
-
- }
-
+
+ }
+
}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/f40e7b75/engine/orchestration/src/org/apache/cloudstack/engine/datacenter/entity/api/db/dao/DataCenterDaoImpl.java
----------------------------------------------------------------------
diff --git a/engine/orchestration/src/org/apache/cloudstack/engine/datacenter/entity/api/db/dao/DataCenterDaoImpl.java b/engine/orchestration/src/org/apache/cloudstack/engine/datacenter/entity/api/db/dao/DataCenterDaoImpl.java
index 61a4bb3..3a0d2c8 100644
--- a/engine/orchestration/src/org/apache/cloudstack/engine/datacenter/entity/api/db/dao/DataCenterDaoImpl.java
+++ b/engine/orchestration/src/org/apache/cloudstack/engine/datacenter/entity/api/db/dao/DataCenterDaoImpl.java
@@ -25,15 +25,12 @@ import javax.persistence.TableGenerator;
import org.apache.cloudstack.engine.datacenter.entity.api.DataCenterResourceEntity;
import org.apache.cloudstack.engine.datacenter.entity.api.DataCenterResourceEntity.State;
import org.apache.cloudstack.engine.datacenter.entity.api.DataCenterResourceEntity.State.Event;
-import org.apache.cloudstack.engine.datacenter.entity.api.ZoneEntity;
import org.apache.cloudstack.engine.datacenter.entity.api.db.DataCenterVO;
import org.apache.log4j.Logger;
import org.springframework.stereotype.Component;
import com.cloud.org.Grouping;
import com.cloud.utils.NumbersUtil;
-import com.cloud.utils.Pair;
-import com.cloud.utils.component.ComponentLocator;
import com.cloud.utils.db.DB;
import com.cloud.utils.db.GenericDaoBase;
import com.cloud.utils.db.SearchBuilder;
@@ -63,47 +60,47 @@ public class DataCenterDaoImpl extends GenericDaoBase<DataCenterVO, Long> implem
protected SearchBuilder<DataCenterVO> TokenSearch;
protected SearchBuilder<DataCenterVO> StateChangeSearch;
protected SearchBuilder<DataCenterVO> UUIDSearch;
-
+
protected long _prefix;
protected Random _rand = new Random(System.currentTimeMillis());
protected TableGenerator _tgMacAddress;
-
+
@Inject protected DcDetailsDao _detailsDao;
@Override
public DataCenterVO findByName(String name) {
- SearchCriteria<DataCenterVO> sc = NameSearch.create();
- sc.setParameters("name", name);
+ SearchCriteria<DataCenterVO> sc = NameSearch.create();
+ sc.setParameters("name", name);
return findOneBy(sc);
}
@Override
public DataCenterVO findByUUID(String uuid) {
- SearchCriteria<DataCenterVO> sc = UUIDSearch.create();
- sc.setParameters("uuid", uuid);
+ SearchCriteria<DataCenterVO> sc = UUIDSearch.create();
+ sc.setParameters("uuid", uuid);
return findOneBy(sc);
}
-
+
@Override
public DataCenterVO findByToken(String zoneToken){
- SearchCriteria<DataCenterVO> sc = TokenSearch.create();
- sc.setParameters("zoneToken", zoneToken);
+ SearchCriteria<DataCenterVO> sc = TokenSearch.create();
+ sc.setParameters("zoneToken", zoneToken);
return findOneBy(sc);
}
-
+
@Override
public List<DataCenterVO> findZonesByDomainId(Long domainId){
- SearchCriteria<DataCenterVO> sc = ListZonesByDomainIdSearch.create();
- sc.setParameters("domainId", domainId);
+ SearchCriteria<DataCenterVO> sc = ListZonesByDomainIdSearch.create();
+ sc.setParameters("domainId", domainId);
return listBy(sc);
}
-
+
@Override
public List<DataCenterVO> findZonesByDomainId(Long domainId, String keyword){
- SearchCriteria<DataCenterVO> sc = ListZonesByDomainIdSearch.create();
- sc.setParameters("domainId", domainId);
- if (keyword != null) {
+ SearchCriteria<DataCenterVO> sc = ListZonesByDomainIdSearch.create();
+ sc.setParameters("domainId", domainId);
+ if (keyword != null) {
SearchCriteria<DataCenterVO> ssc = createSearchCriteria();
ssc.addOr("name", SearchCriteria.Op.LIKE, "%" + keyword + "%");
ssc.addOr("description", SearchCriteria.Op.LIKE, "%" + keyword + "%");
@@ -111,12 +108,12 @@ public class DataCenterDaoImpl extends GenericDaoBase<DataCenterVO, Long> implem
}
return listBy(sc);
}
-
+
@Override
public List<DataCenterVO> findChildZones(Object[] ids, String keyword){
- SearchCriteria<DataCenterVO> sc = ChildZonesSearch.create();
- sc.setParameters("domainid", ids);
- if (keyword != null) {
+ SearchCriteria<DataCenterVO> sc = ChildZonesSearch.create();
+ sc.setParameters("domainid", ids);
+ if (keyword != null) {
SearchCriteria<DataCenterVO> ssc = createSearchCriteria();
ssc.addOr("name", SearchCriteria.Op.LIKE, "%" + keyword + "%");
ssc.addOr("description", SearchCriteria.Op.LIKE, "%" + keyword + "%");
@@ -124,28 +121,28 @@ public class DataCenterDaoImpl extends GenericDaoBase<DataCenterVO, Long> implem
}
return listBy(sc);
}
-
+
@Override
public List<DataCenterVO> listPublicZones(String keyword){
- SearchCriteria<DataCenterVO> sc = PublicZonesSearch.create();
- if (keyword != null) {
+ SearchCriteria<DataCenterVO> sc = PublicZonesSearch.create();
+ if (keyword != null) {
SearchCriteria<DataCenterVO> ssc = createSearchCriteria();
ssc.addOr("name", SearchCriteria.Op.LIKE, "%" + keyword + "%");
ssc.addOr("description", SearchCriteria.Op.LIKE, "%" + keyword + "%");
sc.addAnd("name", SearchCriteria.Op.SC, ssc);
}
- //sc.setParameters("domainId", domainId);
+ //sc.setParameters("domainId", domainId);
return listBy(sc);
}
-
+
@Override
public List<DataCenterVO> findByKeyword(String keyword){
- SearchCriteria<DataCenterVO> ssc = createSearchCriteria();
- ssc.addOr("name", SearchCriteria.Op.LIKE, "%" + keyword + "%");
- ssc.addOr("description", SearchCriteria.Op.LIKE, "%" + keyword + "%");
+ SearchCriteria<DataCenterVO> ssc = createSearchCriteria();
+ ssc.addOr("name", SearchCriteria.Op.LIKE, "%" + keyword + "%");
+ ssc.addOr("description", SearchCriteria.Op.LIKE, "%" + keyword + "%");
return listBy(ssc);
}
-
+
@Override
public String[] getNextAvailableMacAddressPair(long id) {
@@ -155,7 +152,7 @@ public class DataCenterDaoImpl extends GenericDaoBase<DataCenterVO, Long> implem
@Override
public String[] getNextAvailableMacAddressPair(long id, long mask) {
SequenceFetcher fetch = SequenceFetcher.getInstance();
-
+
long seq = fetch.getNextSequence(Long.class, _tgMacAddress, id);
seq = seq | _prefix | ((id & 0x7f) << 32);
seq |= mask;
@@ -172,49 +169,49 @@ public class DataCenterDaoImpl extends GenericDaoBase<DataCenterVO, Long> implem
if (!super.configure(name, params)) {
return false;
}
-
+
String value = (String)params.get("mac.address.prefix");
_prefix = (long)NumbersUtil.parseInt(value, 06) << 40;
return true;
}
-
+
protected DataCenterDaoImpl() {
super();
NameSearch = createSearchBuilder();
NameSearch.and("name", NameSearch.entity().getName(), SearchCriteria.Op.EQ);
NameSearch.done();
-
+
ListZonesByDomainIdSearch = createSearchBuilder();
ListZonesByDomainIdSearch.and("domainId", ListZonesByDomainIdSearch.entity().getDomainId(), SearchCriteria.Op.EQ);
ListZonesByDomainIdSearch.done();
-
+
PublicZonesSearch = createSearchBuilder();
PublicZonesSearch.and("domainId", PublicZonesSearch.entity().getDomainId(), SearchCriteria.Op.NULL);
PublicZonesSearch.done();
-
+
ChildZonesSearch = createSearchBuilder();
ChildZonesSearch.and("domainid", ChildZonesSearch.entity().getDomainId(), SearchCriteria.Op.IN);
ChildZonesSearch.done();
-
+
DisabledZonesSearch = createSearchBuilder();
DisabledZonesSearch.and("allocationState", DisabledZonesSearch.entity().getAllocationState(), SearchCriteria.Op.EQ);
DisabledZonesSearch.done();
-
+
TokenSearch = createSearchBuilder();
TokenSearch.and("zoneToken", TokenSearch.entity().getZoneToken(), SearchCriteria.Op.EQ);
TokenSearch.done();
-
+
StateChangeSearch = createSearchBuilder();
StateChangeSearch.and("id", StateChangeSearch.entity().getId(), SearchCriteria.Op.EQ);
StateChangeSearch.and("state", StateChangeSearch.entity().getState(), SearchCriteria.Op.EQ);
StateChangeSearch.done();
-
+
UUIDSearch = createSearchBuilder();
UUIDSearch.and("uuid", UUIDSearch.entity().getUuid(), SearchCriteria.Op.EQ);
UUIDSearch.done();
-
+
_tgMacAddress = _tgs.get("macAddress");
assert _tgMacAddress != null : "Couldn't get mac address table generator";
}
@@ -231,7 +228,7 @@ public class DataCenterDaoImpl extends GenericDaoBase<DataCenterVO, Long> implem
txn.commit();
return persisted;
}
-
+
@Override
public void loadDetails(DataCenterVO zone) {
Map<String, String> details =_detailsDao.findDetails(zone.getId());
@@ -246,25 +243,25 @@ public class DataCenterDaoImpl extends GenericDaoBase<DataCenterVO, Long> implem
}
_detailsDao.persist(zone.getId(), details);
}
-
+
@Override
public List<DataCenterVO> listDisabledZones(){
- SearchCriteria<DataCenterVO> sc = DisabledZonesSearch.create();
- sc.setParameters("allocationState", Grouping.AllocationState.Disabled);
-
- List<DataCenterVO> dcs = listBy(sc);
-
- return dcs;
+ SearchCriteria<DataCenterVO> sc = DisabledZonesSearch.create();
+ sc.setParameters("allocationState", Grouping.AllocationState.Disabled);
+
+ List<DataCenterVO> dcs = listBy(sc);
+
+ return dcs;
}
-
+
@Override
public List<DataCenterVO> listEnabledZones(){
- SearchCriteria<DataCenterVO> sc = DisabledZonesSearch.create();
- sc.setParameters("allocationState", Grouping.AllocationState.Enabled);
-
- List<DataCenterVO> dcs = listBy(sc);
-
- return dcs;
+ SearchCriteria<DataCenterVO> sc = DisabledZonesSearch.create();
+ sc.setParameters("allocationState", Grouping.AllocationState.Enabled);
+
+ List<DataCenterVO> dcs = listBy(sc);
+
+ return dcs;
}
@Override
@@ -277,36 +274,36 @@ public class DataCenterDaoImpl extends GenericDaoBase<DataCenterVO, Long> implem
Long dcId = Long.parseLong(tokenOrIdOrName);
return findById(dcId);
} catch (NumberFormatException nfe) {
-
+
}
}
}
return result;
}
-
+
@Override
public boolean remove(Long id) {
Transaction txn = Transaction.currentTxn();
txn.start();
DataCenterVO zone = createForUpdate();
zone.setName(null);
-
+
update(id, zone);
boolean result = super.remove(id);
txn.commit();
return result;
}
-
- @Override
- public boolean updateState(State currentState, Event event, State nextState, DataCenterResourceEntity zoneEntity, Object data) {
-
- DataCenterVO vo = findById(zoneEntity.getId());
-
- Date oldUpdatedTime = vo.getLastUpdated();
- SearchCriteria<DataCenterVO> sc = StateChangeSearch.create();
+ @Override
+ public boolean updateState(State currentState, Event event, State nextState, DataCenterResourceEntity zoneEntity, Object data) {
+
+ DataCenterVO vo = findById(zoneEntity.getId());
+
+ Date oldUpdatedTime = vo.getLastUpdated();
+
+ SearchCriteria<DataCenterVO> sc = StateChangeSearch.create();
sc.setParameters("id", vo.getId());
sc.setParameters("state", currentState);
@@ -314,14 +311,14 @@ public class DataCenterDaoImpl extends GenericDaoBase<DataCenterVO, Long> implem
builder.set(vo, "state", nextState);
builder.set(vo, "lastUpdated", new Date());
- int rows = update((DataCenterVO) vo, sc);
-
+ int rows = update(vo, sc);
+
if (rows == 0 && s_logger.isDebugEnabled()) {
- DataCenterVO dbDC = findByIdIncludingRemoved(vo.getId());
+ DataCenterVO dbDC = findByIdIncludingRemoved(vo.getId());
if (dbDC != null) {
StringBuilder str = new StringBuilder("Unable to update ").append(vo.toString());
str.append(": DB Data={id=").append(dbDC.getId()).append("; state=").append(dbDC.getState()).append(";updatedTime=")
- .append(dbDC.getLastUpdated());
+ .append(dbDC.getLastUpdated());
str.append(": New Data={id=").append(vo.getId()).append("; state=").append(nextState).append("; event=").append(event).append("; updatedTime=").append(vo.getLastUpdated());
str.append(": stale Data={id=").append(vo.getId()).append("; state=").append(currentState).append("; event=").append(event).append("; updatedTime=").append(oldUpdatedTime);
} else {
@@ -329,8 +326,8 @@ public class DataCenterDaoImpl extends GenericDaoBase<DataCenterVO, Long> implem
}
}
return rows > 0;
-
- }
-
-
+
+ }
+
+
}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/f40e7b75/engine/orchestration/src/org/apache/cloudstack/engine/datacenter/entity/api/db/dao/HostDaoImpl.java
----------------------------------------------------------------------
diff --git a/engine/orchestration/src/org/apache/cloudstack/engine/datacenter/entity/api/db/dao/HostDaoImpl.java b/engine/orchestration/src/org/apache/cloudstack/engine/datacenter/entity/api/db/dao/HostDaoImpl.java
index 41e6785..f33bc21 100644
--- a/engine/orchestration/src/org/apache/cloudstack/engine/datacenter/entity/api/db/dao/HostDaoImpl.java
+++ b/engine/orchestration/src/org/apache/cloudstack/engine/datacenter/entity/api/db/dao/HostDaoImpl.java
@@ -31,8 +31,6 @@ import javax.persistence.TableGenerator;
import org.apache.cloudstack.engine.datacenter.entity.api.DataCenterResourceEntity;
import org.apache.cloudstack.engine.datacenter.entity.api.DataCenterResourceEntity.State;
-import org.apache.cloudstack.engine.datacenter.entity.api.db.ClusterVO;
-import org.apache.cloudstack.engine.datacenter.entity.api.db.DataCenterVO;
import org.apache.cloudstack.engine.datacenter.entity.api.db.HostVO;
import org.apache.log4j.Logger;
import org.springframework.stereotype.Component;
@@ -40,21 +38,17 @@ import org.springframework.stereotype.Component;
import com.cloud.host.Host;
import com.cloud.host.Host.Type;
import com.cloud.host.HostTagVO;
-
import com.cloud.host.Status;
-import com.cloud.host.Status.Event;
import com.cloud.info.RunningHostCountInfo;
import com.cloud.org.Managed;
import com.cloud.resource.ResourceState;
import com.cloud.utils.DateUtil;
-import com.cloud.utils.component.ComponentLocator;
import com.cloud.utils.db.Attribute;
import com.cloud.utils.db.DB;
import com.cloud.utils.db.Filter;
import com.cloud.utils.db.GenericDaoBase;
import com.cloud.utils.db.GenericSearchBuilder;
import com.cloud.utils.db.JoinBuilder;
-import com.cloud.utils.db.JoinBuilder.JoinType;
import com.cloud.utils.db.SearchBuilder;
import com.cloud.utils.db.SearchCriteria;
import com.cloud.utils.db.SearchCriteria.Func;
@@ -104,7 +98,7 @@ public class HostDaoImpl extends GenericDaoBase<HostVO, Long> implements HostDao
protected final SearchBuilder<HostVO> ManagedRoutingServersSearch;
protected final SearchBuilder<HostVO> SecondaryStorageVMSearch;
protected SearchBuilder<HostVO> StateChangeSearch;
-
+
protected SearchBuilder<HostVO> UUIDSearch;
protected final GenericSearchBuilder<HostVO, Long> HostsInStatusSearch;
@@ -119,7 +113,7 @@ public class HostDaoImpl extends GenericDaoBase<HostVO, Long> implements HostDao
@Inject protected HostDetailsDao _detailsDao;
@Inject protected HostTagsDao _hostTagsDao;
@Inject protected ClusterDao _clusterDao;
-
+
public HostDaoImpl() {
@@ -148,7 +142,7 @@ public class HostDaoImpl extends GenericDaoBase<HostVO, Long> implements HostDao
TypeDcSearch.and("type", TypeDcSearch.entity().getType(), SearchCriteria.Op.EQ);
TypeDcSearch.and("dc", TypeDcSearch.entity().getDataCenterId(), SearchCriteria.Op.EQ);
TypeDcSearch.done();
-
+
SecondaryStorageVMSearch = createSearchBuilder();
SecondaryStorageVMSearch.and("type", SecondaryStorageVMSearch.entity().getType(), SearchCriteria.Op.EQ);
SecondaryStorageVMSearch.and("dc", SecondaryStorageVMSearch.entity().getDataCenterId(), SearchCriteria.Op.EQ);
@@ -161,14 +155,14 @@ public class HostDaoImpl extends GenericDaoBase<HostVO, Long> implements HostDao
TypeDcStatusSearch.and("status", TypeDcStatusSearch.entity().getStatus(), SearchCriteria.Op.EQ);
TypeDcStatusSearch.and("resourceState", TypeDcStatusSearch.entity().getResourceState(), SearchCriteria.Op.EQ);
TypeDcStatusSearch.done();
-
+
TypeClusterStatusSearch = createSearchBuilder();
TypeClusterStatusSearch.and("type", TypeClusterStatusSearch.entity().getType(), SearchCriteria.Op.EQ);
TypeClusterStatusSearch.and("cluster", TypeClusterStatusSearch.entity().getClusterId(), SearchCriteria.Op.EQ);
TypeClusterStatusSearch.and("status", TypeClusterStatusSearch.entity().getStatus(), SearchCriteria.Op.EQ);
TypeClusterStatusSearch.and("resourceState", TypeClusterStatusSearch.entity().getResourceState(), SearchCriteria.Op.EQ);
TypeClusterStatusSearch.done();
-
+
IdStatusSearch = createSearchBuilder();
IdStatusSearch.and("id", IdStatusSearch.entity().getId(), SearchCriteria.Op.EQ);
IdStatusSearch.and("states", IdStatusSearch.entity().getStatus(), SearchCriteria.Op.IN);
@@ -214,7 +208,7 @@ public class HostDaoImpl extends GenericDaoBase<HostVO, Long> implements HostDao
StatusSearch = createSearchBuilder();
StatusSearch.and("status", StatusSearch.entity().getStatus(), SearchCriteria.Op.IN);
StatusSearch.done();
-
+
ResourceStateSearch = createSearchBuilder();
ResourceStateSearch.and("resourceState", ResourceStateSearch.entity().getResourceState(), SearchCriteria.Op.IN);
ResourceStateSearch.done();
@@ -299,7 +293,7 @@ public class HostDaoImpl extends GenericDaoBase<HostVO, Long> implements HostDao
ManagedRoutingServersSearch.and("server", ManagedRoutingServersSearch.entity().getManagementServerId(), SearchCriteria.Op.NNULL);
ManagedRoutingServersSearch.and("type", ManagedRoutingServersSearch.entity().getType(), SearchCriteria.Op.EQ);
ManagedRoutingServersSearch.done();
-
+
RoutingSearch = createSearchBuilder();
RoutingSearch.and("type", RoutingSearch.entity().getType(), SearchCriteria.Op.EQ);
RoutingSearch.done();
@@ -310,11 +304,11 @@ public class HostDaoImpl extends GenericDaoBase<HostVO, Long> implements HostDao
_resourceStateAttr = _allAttributes.get("resourceState");
assert (_statusAttr != null && _msIdAttr != null && _pingTimeAttr != null) : "Couldn't find one of these attributes";
-
- UUIDSearch = createSearchBuilder();
- UUIDSearch.and("uuid", UUIDSearch.entity().getUuid(), SearchCriteria.Op.EQ);
- UUIDSearch.done();
-
+
+ UUIDSearch = createSearchBuilder();
+ UUIDSearch.and("uuid", UUIDSearch.entity().getUuid(), SearchCriteria.Op.EQ);
+ UUIDSearch.done();
+
StateChangeSearch = createSearchBuilder();
StateChangeSearch.and("id", StateChangeSearch.entity().getId(), SearchCriteria.Op.EQ);
StateChangeSearch.and("state", StateChangeSearch.entity().getState(), SearchCriteria.Op.EQ);
@@ -331,52 +325,52 @@ public class HostDaoImpl extends GenericDaoBase<HostVO, Long> implements HostDao
List<HostVO> hosts = listBy(sc);
return hosts.size();
}
-
+
@Override
public HostVO findByGuid(String guid) {
SearchCriteria<HostVO> sc = GuidSearch.create("guid", guid);
return findOneBy(sc);
}
-
+
@Override @DB
public List<HostVO> findAndUpdateDirectAgentToLoad(long lastPingSecondsAfter, Long limit, long managementServerId) {
Transaction txn = Transaction.currentTxn();
txn.start();
- SearchCriteria<HostVO> sc = UnmanagedDirectConnectSearch.create();
- sc.setParameters("lastPinged", lastPingSecondsAfter);
+ SearchCriteria<HostVO> sc = UnmanagedDirectConnectSearch.create();
+ sc.setParameters("lastPinged", lastPingSecondsAfter);
//sc.setParameters("resourceStates", ResourceState.ErrorInMaintenance, ResourceState.Maintenance, ResourceState.PrepareForMaintenance, ResourceState.Disabled);
sc.setJoinParameters("ClusterManagedSearch", "managed", Managed.ManagedState.Managed);
List<HostVO> hosts = lockRows(sc, new Filter(HostVO.class, "clusterId", true, 0L, limit), true);
-
+
for (HostVO host : hosts) {
host.setManagementServerId(managementServerId);
update(host.getId(), host);
}
-
+
txn.commit();
-
+
return hosts;
}
-
+
@Override @DB
public List<HostVO> findAndUpdateApplianceToLoad(long lastPingSecondsAfter, long managementServerId) {
- Transaction txn = Transaction.currentTxn();
-
- txn.start();
- SearchCriteria<HostVO> sc = UnmanagedApplianceSearch.create();
- sc.setParameters("lastPinged", lastPingSecondsAfter);
+ Transaction txn = Transaction.currentTxn();
+
+ txn.start();
+ SearchCriteria<HostVO> sc = UnmanagedApplianceSearch.create();
+ sc.setParameters("lastPinged", lastPingSecondsAfter);
sc.setParameters("types", Type.ExternalDhcp, Type.ExternalFirewall, Type.ExternalLoadBalancer, Type.PxeServer, Type.TrafficMonitor, Type.L2Networking);
- List<HostVO> hosts = lockRows(sc, null, true);
-
- for (HostVO host : hosts) {
- host.setManagementServerId(managementServerId);
- update(host.getId(), host);
- }
-
- txn.commit();
-
- return hosts;
+ List<HostVO> hosts = lockRows(sc, null, true);
+
+ for (HostVO host : hosts) {
+ host.setManagementServerId(managementServerId);
+ update(host.getId(), host);
+ }
+
+ txn.commit();
+
+ return hosts;
}
@Override
@@ -402,7 +396,7 @@ public class HostDaoImpl extends GenericDaoBase<HostVO, Long> implements HostDao
ub = getUpdateBuilder(host);
update(ub, sc, null);
}
-
+
@Override
public List<HostVO> listByHostTag(Host.Type type, Long clusterId, Long podId, long dcId, String hostTag) {
@@ -435,8 +429,8 @@ public class HostDaoImpl extends GenericDaoBase<HostVO, Long> implements HostDao
return listBy(sc);
}
-
-
+
+
@Override
public List<HostVO> listAllUpAndEnabledNonHAHosts(Type type, Long clusterId, Long podId, long dcId, String haTag) {
SearchBuilder<HostTagVO> hostTagSearch = null;
@@ -446,42 +440,42 @@ public class HostDaoImpl extends GenericDaoBase<HostVO, Long> implements HostDao
hostTagSearch.or("tagNull", hostTagSearch.entity().getTag(), SearchCriteria.Op.NULL);
hostTagSearch.cp();
}
-
+
SearchBuilder<HostVO> hostSearch = createSearchBuilder();
-
+
hostSearch.and("type", hostSearch.entity().getType(), SearchCriteria.Op.EQ);
hostSearch.and("clusterId", hostSearch.entity().getClusterId(), SearchCriteria.Op.EQ);
hostSearch.and("podId", hostSearch.entity().getPodId(), SearchCriteria.Op.EQ);
hostSearch.and("zoneId", hostSearch.entity().getDataCenterId(), SearchCriteria.Op.EQ);
hostSearch.and("status", hostSearch.entity().getStatus(), SearchCriteria.Op.EQ);
hostSearch.and("resourceState", hostSearch.entity().getResourceState(), SearchCriteria.Op.EQ);
-
+
if (haTag != null && !haTag.isEmpty()) {
hostSearch.join("hostTagSearch", hostTagSearch, hostSearch.entity().getId(), hostTagSearch.entity().getHostId(), JoinBuilder.JoinType.LEFTOUTER);
}
SearchCriteria<HostVO> sc = hostSearch.create();
-
+
if (haTag != null && !haTag.isEmpty()) {
sc.setJoinParameters("hostTagSearch", "tag", haTag);
}
-
+
if (type != null) {
sc.setParameters("type", type);
}
-
+
if (clusterId != null) {
sc.setParameters("clusterId", clusterId);
}
-
+
if (podId != null) {
sc.setParameters("podId", podId);
}
-
+
sc.setParameters("zoneId", dcId);
sc.setParameters("status", Status.Up);
sc.setParameters("resourceState", ResourceState.Enabled);
-
+
return listBy(sc);
}
@@ -528,7 +522,7 @@ public class HostDaoImpl extends GenericDaoBase<HostVO, Long> implements HostDao
}
return result;
}
-
+
@Override
public void saveDetails(HostVO host) {
Map<String, String> details = host.getDetails();
@@ -650,12 +644,12 @@ public class HostDaoImpl extends GenericDaoBase<HostVO, Long> implements HostDao
}
- @Override
- public boolean updateState(State currentState, DataCenterResourceEntity.State.Event event, State nextState, DataCenterResourceEntity hostEntity, Object data) {
- HostVO vo = findById(hostEntity.getId());
- Date oldUpdatedTime = vo.getLastUpdated();
+ @Override
+ public boolean updateState(State currentState, DataCenterResourceEntity.State.Event event, State nextState, DataCenterResourceEntity hostEntity, Object data) {
+ HostVO vo = findById(hostEntity.getId());
+ Date oldUpdatedTime = vo.getLastUpdated();
- SearchCriteria<HostVO> sc = StateChangeSearch.create();
+ SearchCriteria<HostVO> sc = StateChangeSearch.create();
sc.setParameters("id", hostEntity.getId());
sc.setParameters("state", currentState);
@@ -663,14 +657,14 @@ public class HostDaoImpl extends GenericDaoBase<HostVO, Long> implements HostDao
builder.set(vo, "state", nextState);
builder.set(vo, "lastUpdated", new Date());
- int rows = update((HostVO) vo, sc);
-
+ int rows = update(vo, sc);
+
if (rows == 0 && s_logger.isDebugEnabled()) {
- HostVO dbHost = findByIdIncludingRemoved(vo.getId());
+ HostVO dbHost = findByIdIncludingRemoved(vo.getId());
if (dbHost != null) {
StringBuilder str = new StringBuilder("Unable to update ").append(vo.toString());
str.append(": DB Data={id=").append(dbHost.getId()).append("; state=").append(dbHost.getState()).append(";updatedTime=")
- .append(dbHost.getLastUpdated());
+ .append(dbHost.getLastUpdated());
str.append(": New Data={id=").append(vo.getId()).append("; state=").append(nextState).append("; event=").append(event).append("; updatedTime=").append(vo.getLastUpdated());
str.append(": stale Data={id=").append(vo.getId()).append("; state=").append(currentState).append("; event=").append(event).append("; updatedTime=").append(oldUpdatedTime);
} else {
@@ -678,8 +672,8 @@ public class HostDaoImpl extends GenericDaoBase<HostVO, Long> implements HostDao
}
}
return rows > 0;
- }
-
+ }
+
@Override
public boolean updateResourceState(ResourceState oldState, ResourceState.Event event, ResourceState newState, Host vo) {
HostVO host = (HostVO)vo;
@@ -687,41 +681,41 @@ public class HostDaoImpl extends GenericDaoBase<HostVO, Long> implements HostDao
sb.and("resource_state", sb.entity().getResourceState(), SearchCriteria.Op.EQ);
sb.and("id", sb.entity().getId(), SearchCriteria.Op.EQ);
sb.done();
-
+
SearchCriteria<HostVO> sc = sb.create();
sc.setParameters("resource_state", oldState);
sc.setParameters("id", host.getId());
-
+
UpdateBuilder ub = getUpdateBuilder(host);
ub.set(host, _resourceStateAttr, newState);
int result = update(ub, sc, null);
assert result <= 1 : "How can this update " + result + " rows? ";
-
+
if (state_logger.isDebugEnabled() && result == 0) {
HostVO ho = findById(host.getId());
assert ho != null : "How how how? : " + host.getId();
StringBuilder str = new StringBuilder("Unable to update resource state: [");
- str.append("m = " + host.getId());
- str.append("; name = " + host.getName());
- str.append("; old state = " + oldState);
- str.append("; event = " + event);
- str.append("; new state = " + newState + "]");
- state_logger.debug(str.toString());
+ str.append("m = " + host.getId());
+ str.append("; name = " + host.getName());
+ str.append("; old state = " + oldState);
+ str.append("; event = " + event);
+ str.append("; new state = " + newState + "]");
+ state_logger.debug(str.toString());
} else {
- StringBuilder msg = new StringBuilder("Resource state update: [");
- msg.append("id = " + host.getId());
- msg.append("; name = " + host.getName());
- msg.append("; old state = " + oldState);
- msg.append("; event = " + event);
- msg.append("; new state = " + newState + "]");
- state_logger.debug(msg.toString());
+ StringBuilder msg = new StringBuilder("Resource state update: [");
+ msg.append("id = " + host.getId());
+ msg.append("; name = " + host.getName());
+ msg.append("; old state = " + oldState);
+ msg.append("; event = " + event);
+ msg.append("; new state = " + newState + "]");
+ state_logger.debug(msg.toString());
}
-
+
return result > 0;
}
-
+
@Override
public HostVO findByTypeNameAndZoneId(long zoneId, String name, Host.Type type) {
SearchCriteria<HostVO> sc = TypeNameZoneSearch.create();
@@ -731,94 +725,94 @@ public class HostDaoImpl extends GenericDaoBase<HostVO, Long> implements HostDao
return findOneBy(sc);
}
- @Override
- public List<HostVO> findHypervisorHostInCluster(long clusterId) {
- SearchCriteria<HostVO> sc = TypeClusterStatusSearch.create();
- sc.setParameters("type", Host.Type.Routing);
- sc.setParameters("cluster", clusterId);
- sc.setParameters("status", Status.Up);
- sc.setParameters("resourceState", ResourceState.Enabled);
-
- return listBy(sc);
- }
-
- @Override
- public List<org.apache.cloudstack.engine.datacenter.entity.api.db.HostVO> lockRows(
- SearchCriteria<org.apache.cloudstack.engine.datacenter.entity.api.db.HostVO> sc,
- Filter filter, boolean exclusive) {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- public org.apache.cloudstack.engine.datacenter.entity.api.db.HostVO lockOneRandomRow(
- SearchCriteria<org.apache.cloudstack.engine.datacenter.entity.api.db.HostVO> sc,
- boolean exclusive) {
- // TODO Auto-generated method stub
- return null;
- }
-
-
- @Override
- public List<org.apache.cloudstack.engine.datacenter.entity.api.db.HostVO> search(
- SearchCriteria<org.apache.cloudstack.engine.datacenter.entity.api.db.HostVO> sc,
- Filter filter) {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- public List<org.apache.cloudstack.engine.datacenter.entity.api.db.HostVO> search(
- SearchCriteria<org.apache.cloudstack.engine.datacenter.entity.api.db.HostVO> sc,
- Filter filter, boolean enable_query_cache) {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- public List<org.apache.cloudstack.engine.datacenter.entity.api.db.HostVO> searchIncludingRemoved(
- SearchCriteria<org.apache.cloudstack.engine.datacenter.entity.api.db.HostVO> sc,
- Filter filter, Boolean lock, boolean cache) {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- public List<HostVO> searchIncludingRemoved(
- SearchCriteria<HostVO> sc,
- Filter filter, Boolean lock, boolean cache,
- boolean enable_query_cache) {
- // TODO Auto-generated method stub
- return null;
- }
-
-
- @Override
- public int remove(
- SearchCriteria<HostVO> sc) {
- // TODO Auto-generated method stub
- return 0;
- }
-
- @Override
- public int expunge(SearchCriteria<HostVO> sc) {
- // TODO Auto-generated method stub
- return 0;
- }
-
- @Override
- public HostVO findOneBy(SearchCriteria<HostVO> sc) {
- // TODO Auto-generated method stub
- return null;
- }
-
-
-
- @Override
- public HostVO findByUUID(String uuid) {
- SearchCriteria<HostVO> sc = UUIDSearch.create();
- sc.setParameters("uuid", uuid);
+ @Override
+ public List<HostVO> findHypervisorHostInCluster(long clusterId) {
+ SearchCriteria<HostVO> sc = TypeClusterStatusSearch.create();
+ sc.setParameters("type", Host.Type.Routing);
+ sc.setParameters("cluster", clusterId);
+ sc.setParameters("status", Status.Up);
+ sc.setParameters("resourceState", ResourceState.Enabled);
+
+ return listBy(sc);
+ }
+
+ @Override
+ public List<org.apache.cloudstack.engine.datacenter.entity.api.db.HostVO> lockRows(
+ SearchCriteria<org.apache.cloudstack.engine.datacenter.entity.api.db.HostVO> sc,
+ Filter filter, boolean exclusive) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @Override
+ public org.apache.cloudstack.engine.datacenter.entity.api.db.HostVO lockOneRandomRow(
+ SearchCriteria<org.apache.cloudstack.engine.datacenter.entity.api.db.HostVO> sc,
+ boolean exclusive) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+
+ @Override
+ public List<org.apache.cloudstack.engine.datacenter.entity.api.db.HostVO> search(
+ SearchCriteria<org.apache.cloudstack.engine.datacenter.entity.api.db.HostVO> sc,
+ Filter filter) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @Override
+ public List<org.apache.cloudstack.engine.datacenter.entity.api.db.HostVO> search(
+ SearchCriteria<org.apache.cloudstack.engine.datacenter.entity.api.db.HostVO> sc,
+ Filter filter, boolean enable_query_cache) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @Override
+ public List<org.apache.cloudstack.engine.datacenter.entity.api.db.HostVO> searchIncludingRemoved(
+ SearchCriteria<org.apache.cloudstack.engine.datacenter.entity.api.db.HostVO> sc,
+ Filter filter, Boolean lock, boolean cache) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @Override
+ public List<HostVO> searchIncludingRemoved(
+ SearchCriteria<HostVO> sc,
+ Filter filter, Boolean lock, boolean cache,
+ boolean enable_query_cache) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+
+ @Override
+ public int remove(
+ SearchCriteria<HostVO> sc) {
+ // TODO Auto-generated method stub
+ return 0;
+ }
+
+ @Override
+ public int expunge(SearchCriteria<HostVO> sc) {
+ // TODO Auto-generated method stub
+ return 0;
+ }
+
+ @Override
+ public HostVO findOneBy(SearchCriteria<HostVO> sc) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+
+
+ @Override
+ public HostVO findByUUID(String uuid) {
+ SearchCriteria<HostVO> sc = UUIDSearch.create();
+ sc.setParameters("uuid", uuid);
return findOneBy(sc);
- }
+ }
}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/f40e7b75/engine/storage/image/src/org/apache/cloudstack/storage/image/provider/DefaultImageDataStoreProvider.java
----------------------------------------------------------------------
diff --git a/engine/storage/image/src/org/apache/cloudstack/storage/image/provider/DefaultImageDataStoreProvider.java b/engine/storage/image/src/org/apache/cloudstack/storage/image/provider/DefaultImageDataStoreProvider.java
index f87299d..363ed5f 100644
--- a/engine/storage/image/src/org/apache/cloudstack/storage/image/provider/DefaultImageDataStoreProvider.java
+++ b/engine/storage/image/src/org/apache/cloudstack/storage/image/provider/DefaultImageDataStoreProvider.java
@@ -18,8 +18,6 @@
*/
package org.apache.cloudstack.storage.image.provider;
-import java.util.Map;
-
import javax.inject.Inject;
import org.apache.cloudstack.storage.image.db.ImageDataStoreDao;
@@ -34,7 +32,7 @@ import org.apache.cloudstack.storage.image.store.lifecycle.DefaultImageDataStore
import org.apache.cloudstack.storage.image.store.lifecycle.ImageDataStoreLifeCycle;
import org.springframework.stereotype.Component;
-import com.cloud.utils.component.ComponentInject;
+import com.cloud.utils.component.ComponentContext;
@Component
public class DefaultImageDataStoreProvider implements ImageDataStoreProvider {
@@ -50,7 +48,7 @@ public class DefaultImageDataStoreProvider implements ImageDataStoreProvider {
ImageDataStoreVO idsv = imageStoreDao.findById(imageStoreId);
ImageDataStoreDriver driver = new ImageDataStoreDriverImpl();
ImageDataStore ids = new ImageDataStoreImpl(idsv, driver, false);
- ids = ComponentInject.inject(ids);
+ ids = ComponentContext.inject(ids);
return ids;
}
@@ -72,6 +70,6 @@ public class DefaultImageDataStoreProvider implements ImageDataStoreProvider {
@Override
public ImageDataStoreLifeCycle getLifeCycle() {
- return new DefaultImageDataStoreLifeCycle(this, provider, imageStoreDao);
+ return new DefaultImageDataStoreLifeCycle(this, provider, imageStoreDao);
}
}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/f40e7b75/engine/storage/volume/src/org/apache/cloudstack/storage/datastore/DefaultPrimaryDataStore.java
----------------------------------------------------------------------
diff --git a/engine/storage/volume/src/org/apache/cloudstack/storage/datastore/DefaultPrimaryDataStore.java b/engine/storage/volume/src/org/apache/cloudstack/storage/datastore/DefaultPrimaryDataStore.java
index 571f227..ddcb365 100644
--- a/engine/storage/volume/src/org/apache/cloudstack/storage/datastore/DefaultPrimaryDataStore.java
+++ b/engine/storage/volume/src/org/apache/cloudstack/storage/datastore/DefaultPrimaryDataStore.java
@@ -6,7 +6,6 @@ import java.util.List;
import javax.inject.Inject;
import org.apache.cloudstack.engine.datacenter.entity.api.DataCenterResourceEntity;
-import org.apache.cloudstack.engine.subsystem.api.storage.PrimaryDataStoreInfo;
import org.apache.cloudstack.engine.subsystem.api.storage.PrimaryDataStoreLifeCycle;
import org.apache.cloudstack.engine.subsystem.api.storage.PrimaryDataStoreProvider;
import org.apache.cloudstack.engine.subsystem.api.storage.VolumeInfo;
@@ -27,13 +26,12 @@ import org.apache.cloudstack.storage.volume.TemplatePrimaryDataStoreManager;
import org.apache.cloudstack.storage.volume.VolumeObject;
import org.apache.cloudstack.storage.volume.db.VolumeDao2;
import org.apache.cloudstack.storage.volume.db.VolumeVO;
-
import org.apache.log4j.Logger;
import com.cloud.host.HostVO;
import com.cloud.host.dao.HostDao;
import com.cloud.hypervisor.Hypervisor.HypervisorType;
-import com.cloud.utils.component.ComponentInject;
+import com.cloud.utils.component.ComponentContext;
import com.cloud.utils.exception.CloudRuntimeException;
import edu.emory.mathcs.backport.java.util.Collections;
@@ -55,42 +53,42 @@ public class DefaultPrimaryDataStore implements PrimaryDataStore {
private PrimaryDataStoreDao dataStoreDao;
@Inject
private TemplatePrimaryDataStoreManager templatePrimaryStoreMgr;
-
+
private DefaultPrimaryDataStore(PrimaryDataStoreVO pdsv) {
this.pdsv = pdsv;
}
-
+
public void setDriver(PrimaryDataStoreDriver driver) {
driver.setDataStore(this);
this.driver = driver;
}
-
+
public void setLifeCycle(PrimaryDataStoreLifeCycle lifeCycle) {
lifeCycle.setDataStore(this);
this.lifeCycle = lifeCycle;
}
-
+
public void setProvider(PrimaryDataStoreProvider provider) {
this.provider = provider;
}
-
+
public void setProtocolTransFormer(StorageProtocolTransformer transformer) {
this.protocalTransformer = transformer;
}
-
+
@Override
public PrimaryDataStoreTO getDataStoreTO() {
return this.protocalTransformer.getDataStoreTO(this);
}
-
+
@Override
public VolumeTO getVolumeTO(VolumeInfo volume) {
return this.protocalTransformer.getVolumeTO(volume);
}
-
+
public static DefaultPrimaryDataStore createDataStore(PrimaryDataStoreVO pdsv) {
DefaultPrimaryDataStore dataStore = new DefaultPrimaryDataStore(pdsv);
- return ComponentInject.inject(dataStore);
+ return ComponentContext.inject(dataStore);
}
@Override
@@ -130,12 +128,12 @@ public class DefaultPrimaryDataStore implements PrimaryDataStore {
return new ArrayList<EndPoint>();
}
}
-
+
List<EndPoint> endpoints = new ArrayList<EndPoint>();
List<HostVO> hosts = hostDao.findHypervisorHostInCluster(clusterId);
for (HostVO host : hosts) {
HypervisorHostEndPoint ep = new HypervisorHostEndPoint(host.getId(), host.getPrivateIpAddress());
- ComponentInject.inject(ep);
+ ComponentContext.inject(ep);
endpoints.add(ep);
}
Collections.shuffle(endpoints);
@@ -145,12 +143,12 @@ public class DefaultPrimaryDataStore implements PrimaryDataStore {
public void setSupportedHypervisor(HypervisorType type) {
this.supportedHypervisor = type;
}
-
+
@Override
public boolean isHypervisorSupported(HypervisorType hypervisor) {
return (this.supportedHypervisor == hypervisor) ? true : false;
}
-
+
public void setLocalStorageFlag(boolean supported) {
this.isLocalStorageSupported = supported;
}
@@ -167,7 +165,7 @@ public class DefaultPrimaryDataStore implements PrimaryDataStore {
@Override
public long getCapacity() {
- return this.driver.getCapacity();
+ return this.driver.getCapacity();
}
@Override
@@ -219,7 +217,7 @@ public class DefaultPrimaryDataStore implements PrimaryDataStore {
//this.driver.createVolumeFromBaseImage(vo, template);
return volume;
}
-
+
@Override
public void createVoluemFromBaseImageAsync(VolumeInfo volume, TemplateOnPrimaryDataStoreInfo templateStore, AsyncCompletionCallback<CommandResult> callback) {
VolumeObject vo = (VolumeObject) volume;
@@ -227,7 +225,7 @@ public class DefaultPrimaryDataStore implements PrimaryDataStore {
this.driver.createVolumeFromBaseImageAsync(vo, templateStore, callback);
}
-
+
@Override
public boolean installTemplate(TemplateOnPrimaryDataStoreInfo template) {
// TODO Auto-generated method stub
@@ -264,5 +262,5 @@ public class DefaultPrimaryDataStore implements PrimaryDataStore {
return this.provider;
}
-
+
}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/f40e7b75/engine/storage/volume/src/org/apache/cloudstack/storage/datastore/configurator/kvm/KvmNfsConfigurator.java
----------------------------------------------------------------------
diff --git a/engine/storage/volume/src/org/apache/cloudstack/storage/datastore/configurator/kvm/KvmNfsConfigurator.java b/engine/storage/volume/src/org/apache/cloudstack/storage/datastore/configurator/kvm/KvmNfsConfigurator.java
index 6897e54..1c36f15 100644
--- a/engine/storage/volume/src/org/apache/cloudstack/storage/datastore/configurator/kvm/KvmNfsConfigurator.java
+++ b/engine/storage/volume/src/org/apache/cloudstack/storage/datastore/configurator/kvm/KvmNfsConfigurator.java
@@ -18,19 +18,21 @@
*/
package org.apache.cloudstack.storage.datastore.configurator.kvm;
+import javax.inject.Inject;
+
import org.apache.cloudstack.storage.datastore.configurator.validator.NfsProtocolTransformer;
import org.apache.cloudstack.storage.datastore.configurator.validator.StorageProtocolTransformer;
import org.apache.cloudstack.storage.datastore.db.PrimaryDataStoreDao;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Component;
-import com.cloud.utils.component.Inject;
@Component
@Qualifier("defaultProvider")
public class KvmNfsConfigurator extends AbstractKvmConfigurator {
@Inject
PrimaryDataStoreDao dataStoreDao;
+
@Override
public String getSupportedDataStoreType() {
return "nfs";
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/f40e7b75/engine/storage/volume/src/org/apache/cloudstack/storage/datastore/configurator/vmware/VmwareNfsConfigurator.java
----------------------------------------------------------------------
diff --git a/engine/storage/volume/src/org/apache/cloudstack/storage/datastore/configurator/vmware/VmwareNfsConfigurator.java b/engine/storage/volume/src/org/apache/cloudstack/storage/datastore/configurator/vmware/VmwareNfsConfigurator.java
index c6afc13..afd8d21 100644
--- a/engine/storage/volume/src/org/apache/cloudstack/storage/datastore/configurator/vmware/VmwareNfsConfigurator.java
+++ b/engine/storage/volume/src/org/apache/cloudstack/storage/datastore/configurator/vmware/VmwareNfsConfigurator.java
@@ -18,15 +18,14 @@
*/
package org.apache.cloudstack.storage.datastore.configurator.vmware;
+import javax.inject.Inject;
+
import org.apache.cloudstack.storage.datastore.configurator.validator.NfsProtocolTransformer;
import org.apache.cloudstack.storage.datastore.configurator.validator.StorageProtocolTransformer;
import org.apache.cloudstack.storage.datastore.db.PrimaryDataStoreDao;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Component;
-import com.cloud.storage.Storage.StoragePoolType;
-import com.cloud.utils.component.Inject;
-
@Component
@Qualifier("defaultProvider")
public class VmwareNfsConfigurator extends AbstractVmwareConfigurator {
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/f40e7b75/engine/storage/volume/src/org/apache/cloudstack/storage/datastore/configurator/xen/XenNfsConfigurator.java
----------------------------------------------------------------------
diff --git a/engine/storage/volume/src/org/apache/cloudstack/storage/datastore/configurator/xen/XenNfsConfigurator.java b/engine/storage/volume/src/org/apache/cloudstack/storage/datastore/configurator/xen/XenNfsConfigurator.java
index 6ad4b53..0cb24a8 100644
--- a/engine/storage/volume/src/org/apache/cloudstack/storage/datastore/configurator/xen/XenNfsConfigurator.java
+++ b/engine/storage/volume/src/org/apache/cloudstack/storage/datastore/configurator/xen/XenNfsConfigurator.java
@@ -20,26 +20,22 @@ package org.apache.cloudstack.storage.datastore.configurator.xen;
import org.apache.cloudstack.storage.datastore.configurator.validator.NfsProtocolTransformer;
import org.apache.cloudstack.storage.datastore.configurator.validator.StorageProtocolTransformer;
-import org.apache.cloudstack.storage.datastore.db.PrimaryDataStoreDao;
import org.apache.cloudstack.storage.datastore.protocol.DataStoreProtocol;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Component;
-import com.cloud.storage.Storage.StoragePoolType;
-import com.cloud.utils.component.Inject;
-
@Component
@Qualifier("defaultProvider")
public class XenNfsConfigurator extends AbstractXenConfigurator {
- @Override
- public String getSupportedDataStoreType() {
- return DataStoreProtocol.NFS.toString();
- }
+ @Override
+ public String getSupportedDataStoreType() {
+ return DataStoreProtocol.NFS.toString();
+ }
- @Override
- public StorageProtocolTransformer getProtocolTransformer() {
- return new NfsProtocolTransformer(dataStoreDao);
- }
+ @Override
+ public StorageProtocolTransformer getProtocolTransformer() {
+ return new NfsProtocolTransformer(dataStoreDao);
+ }
@Override
protected boolean isLocalStorageSupported() {
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/f40e7b75/engine/storage/volume/src/org/apache/cloudstack/storage/datastore/db/PrimaryDataStoreDaoImpl.java
----------------------------------------------------------------------
diff --git a/engine/storage/volume/src/org/apache/cloudstack/storage/datastore/db/PrimaryDataStoreDaoImpl.java b/engine/storage/volume/src/org/apache/cloudstack/storage/datastore/db/PrimaryDataStoreDaoImpl.java
index 247cdee..99cb001 100644
--- a/engine/storage/volume/src/org/apache/cloudstack/storage/datastore/db/PrimaryDataStoreDaoImpl.java
+++ b/engine/storage/volume/src/org/apache/cloudstack/storage/datastore/db/PrimaryDataStoreDaoImpl.java
@@ -31,19 +31,14 @@ import javax.naming.ConfigurationException;
import org.apache.cloudstack.storage.datastore.DataStoreStatus;
import org.springframework.stereotype.Component;
-import com.cloud.storage.StoragePoolDetailVO;
-import com.cloud.storage.dao.StoragePoolDetailsDao;
-import com.cloud.storage.dao.StoragePoolDetailsDaoImpl;
-import com.cloud.utils.component.ComponentInject;
-import com.cloud.utils.component.ComponentLocator;
import com.cloud.utils.db.DB;
import com.cloud.utils.db.GenericDaoBase;
import com.cloud.utils.db.GenericSearchBuilder;
import com.cloud.utils.db.SearchBuilder;
import com.cloud.utils.db.SearchCriteria;
-import com.cloud.utils.db.Transaction;
import com.cloud.utils.db.SearchCriteria.Func;
import com.cloud.utils.db.SearchCriteria.Op;
+import com.cloud.utils.db.Transaction;
import com.cloud.utils.exception.CloudRuntimeException;
@Component
@@ -101,7 +96,7 @@ public class PrimaryDataStoreDaoImpl extends GenericDaoBase<PrimaryDataStoreVO,
StatusCountSearch.select(null, Func.COUNT, null);
StatusCountSearch.done();
- // _detailsDao = ComponentInject.inject(PrimaryDataStoreDetailsDaoImpl.class);
+ // _detailsDao = ComponentInject.inject(PrimaryDataStoreDetailsDaoImpl.class);
}
@Override