Liron Aravot has uploaded a new change for review.

Change subject: tmp
......................................................................

tmp

Change-Id: I71ae74034468d6a7a6c9647ef9d72f51a5f13a0b
Signed-off-by: lara...@redhat.com <lara...@redhat.com>
---
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CommandBase.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CreateAllSnapshotsFromVmCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CreateSnapshotCommand.java
M 
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/ExternalLocationInfo.java
M 
backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/IrsBrokerCommand.java
M 
backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/IrsProxyData.java
M 
backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/IVdsServer.java
M 
backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VdsServerConnector.java
M 
backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VdsServerWrapper.java
9 files changed, 52 insertions(+), 5 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/06/39206/1

diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CommandBase.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CommandBase.java
index ffd6f4c..1a7a017 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CommandBase.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CommandBase.java
@@ -1397,6 +1397,10 @@
      * placeholders for the child commands.
      */
     protected void insertAsyncTaskPlaceHolders() {
+        if (getStoragePool() != null && !isDataCenterWithSpm()) {
+            return;
+        }
+
         TransactionSupport.executeInScope(TransactionScopeOption.Required,
                 new TransactionMethod<Void>() {
                     @Override
@@ -2280,6 +2284,10 @@
         return 
!FeatureSupported.dataCenterWithoutSpm(getStoragePool().getcompatibility_version());
     }
 
+    public boolean isDataCenterWithoutSpm() {
+        return getStoragePool() != null && 
FeatureSupported.dataCenterWithoutSpm(getStoragePool().getcompatibility_version());
+    }
+
     public CommandStatus getCommandStatus() {
         return commandStatus;
     }
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CreateAllSnapshotsFromVmCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CreateAllSnapshotsFromVmCommand.java
index 3d60774..4583ff6 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CreateAllSnapshotsFromVmCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CreateAllSnapshotsFromVmCommand.java
@@ -291,6 +291,7 @@
         result.setVmSnapshotId(newActiveSnapshotId);
         result.setEntityInfo(getParameters().getEntityInfo());
         result.setParentCommand(parentCommand);
+        result.setStoragePoolId(getStoragePoolId());
         result.setParentParameters(getParametersForTask(parentCommand, 
getParameters()));
         if 
(getParameters().getDiskIdsToIgnoreInChecks().contains(image.getId())) {
             result.setLeaveLocked(true);
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CreateSnapshotCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CreateSnapshotCommand.java
index 40a71e8..3868a5c 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CreateSnapshotCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CreateSnapshotCommand.java
@@ -40,11 +40,14 @@
     public CreateSnapshotCommand(T parameters, CommandContext cmdContext) {
         super(parameters, cmdContext);
         setSnapshotName(parameters.getDescription());
+        setStoragePoolId(getParameters().getStoragePoolId());
     }
 
     @Override
     protected void insertAsyncTaskPlaceHolders() {
-        persistAsyncTaskPlaceHolder(getParameters().getParentCommand());
+        if (isDataCenterWithSpm()) {
+            persistAsyncTaskPlaceHolder(getParameters().getParentCommand());
+        }
     }
 
     @Override
@@ -142,7 +145,11 @@
 
     @Override
     protected AsyncTaskType getTaskType() {
-        return AsyncTaskType.createVolume;
+        if (isDataCenterWithSpm()) {
+            return AsyncTaskType.createVolume;
+        }
+
+        return super.getTaskType();
     }
 
     /**
diff --git 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/ExternalLocationInfo.java
 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/ExternalLocationInfo.java
index e69de29..dbb43cd 100644
--- 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/ExternalLocationInfo.java
+++ 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/ExternalLocationInfo.java
@@ -0,0 +1,18 @@
+package org.ovirt.engine.core.common.businessentities;
+
+public abstract class ExternalLocationInfo extends LocationInfo {
+    ConnectionMethod connectionMethod;
+
+    public ExternalLocationInfo(ConnectionMethod connectionMethod) {
+        super();
+        this.connectionMethod = connectionMethod;
+    }
+
+    public ConnectionMethod getConnectionMethod() {
+        return connectionMethod;
+    }
+
+    public void setConnectionMethod(ConnectionMethod connectionMethod) {
+        this.connectionMethod = connectionMethod;
+    }
+}
diff --git 
a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/IrsBrokerCommand.java
 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/IrsBrokerCommand.java
index ed69dd4..7020a0b 100644
--- 
a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/IrsBrokerCommand.java
+++ 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/IrsBrokerCommand.java
@@ -68,7 +68,7 @@
     public static List<Guid> 
fetchDomainsReportedAsProblematic(List<VDSDomainsData> vdsDomainsData, 
StoragePool storagePool) {
         IrsProxyData proxy = _irsProxyData.get(storagePool.getId());
         if (proxy != null) {
-            return proxy.obtainDomainsReportedAsProblematic(vdsDomainsData, 
storagePool);
+            return proxy.obtainDomainsReportedAsProblematic(vdsDomainsData);
         }
         return Collections.emptyList();
     }
diff --git 
a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/IrsProxyData.java
 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/IrsProxyData.java
index aff141f..1f27ac5 100644
--- 
a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/IrsProxyData.java
+++ 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/IrsProxyData.java
@@ -1148,7 +1148,7 @@
                 // Unknown domains in pool
                 for (VDSDomainsData tempData : data) {
                     if (activeDomainsInPool.contains(tempData.getDomainId()) 
|| unknownDomainsInPool.contains(tempData.getDomainId())) {
-                        DomainMonitoringResult domainMonitoringResult = 
analyzeDomainReport(tempData, storagePool, false);
+                        DomainMonitoringResult domainMonitoringResult = 
analyzeDomainReport(tempData, false);
                         if (domainMonitoringResult.invalid()) {
                             
domainsProblematicReportInfo.put(tempData.getDomainId(), 
domainMonitoringResult);
                         } else if (tempData.getDelay() > Config.<Double> 
getValue(ConfigValues.MaxStorageVdsDelayCheckSec)) {
@@ -1159,7 +1159,7 @@
                     if 
((inActiveDomainsInPool.contains(tempData.getDomainId()) ||
                             // in data centers with spm, unknown domains are 
moving to Active status according to the pool metadata.
                             
(FeatureSupported.dataCenterWithoutSpm(storagePool.getcompatibility_version()) 
&& unknownDomainsInPool.contains(tempData.getDomainId())))
-                            && analyzeDomainReport(tempData, storagePool, 
false).valid()) {
+                            && analyzeDomainReport(tempData, false).valid()) {
                         log.warn("Storage Domain '{}' was reported by Host 
'{}' as Active in Pool '{}', moving to active status",
                                 getDomainIdTuple(tempData.getDomainId()),
                                 vdsName,
diff --git 
a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/IVdsServer.java
 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/IVdsServer.java
index 34a1dd0..ddf0a23 100644
--- 
a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/IVdsServer.java
+++ 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/IVdsServer.java
@@ -21,6 +21,7 @@
 import 
org.ovirt.engine.core.vdsbroker.gluster.GlusterVolumeTaskReturnForXmlRpc;
 import 
org.ovirt.engine.core.vdsbroker.gluster.GlusterVolumesListReturnForXmlRpc;
 import org.ovirt.engine.core.vdsbroker.irsbroker.FileStatsReturnForXmlRpc;
+import org.ovirt.engine.core.vdsbroker.irsbroker.OneImageInfoReturnForXmlRpc;
 import org.ovirt.engine.core.vdsbroker.irsbroker.OneUuidReturnForXmlRpc;
 import 
org.ovirt.engine.core.vdsbroker.irsbroker.StoragePoolInfoReturnForXmlRpc;
 
@@ -40,6 +41,8 @@
 
     StatusOnlyReturnForXmlRpc copyVolumeData(Map srcImage, Map dstImage, 
boolean collapse);
 
+    OneImageInfoReturnForXmlRpc getVolumeInfo(String sdUUID, String spUUID, 
String imgGUID, String volUUID);
+
     OneUuidReturnForXmlRpc allocateVolume(String spUUID, String sdUUID, String 
imgGUID, String volUUID, String size);
 
     StatusOnlyReturnForXmlRpc destroy(String vmId);
diff --git 
a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VdsServerConnector.java
 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VdsServerConnector.java
index 112f437..bb599a3 100644
--- 
a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VdsServerConnector.java
+++ 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VdsServerConnector.java
@@ -16,6 +16,8 @@
 
     public Map<String, Object> allocateVolume(String spUUID, String sdUUID, 
String imgGUID, String volUUID, String size);
 
+    public Map<String, Object> getVolumeInfo(String sdUUID, String spUUID, 
String imgGUID, String volUUID);
+
     public Map<String, Object> destroy(String vmId);
 
     public Map<String, Object> shutdown(String vmId, String timeout, String 
message);
diff --git 
a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VdsServerWrapper.java
 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VdsServerWrapper.java
index 35040cd..29cec0e 100644
--- 
a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VdsServerWrapper.java
+++ 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VdsServerWrapper.java
@@ -22,6 +22,7 @@
 import 
org.ovirt.engine.core.vdsbroker.gluster.GlusterVolumeTaskReturnForXmlRpc;
 import 
org.ovirt.engine.core.vdsbroker.gluster.GlusterVolumesListReturnForXmlRpc;
 import org.ovirt.engine.core.vdsbroker.irsbroker.FileStatsReturnForXmlRpc;
+import org.ovirt.engine.core.vdsbroker.irsbroker.OneImageInfoReturnForXmlRpc;
 import org.ovirt.engine.core.vdsbroker.irsbroker.OneUuidReturnForXmlRpc;
 import 
org.ovirt.engine.core.vdsbroker.irsbroker.StoragePoolInfoReturnForXmlRpc;
 import org.ovirt.engine.core.vdsbroker.xmlrpc.XmlRpcRunTimeException;
@@ -81,6 +82,13 @@
     }
 
     @Override
+    public OneImageInfoReturnForXmlRpc getVolumeInfo(String sdUUID, String 
spUUID, String imgGUID, String volUUID) {
+        Map<String, Object> xmlRpcReturnValue = 
vdsServer.getVolumeInfo(sdUUID, spUUID, imgGUID, volUUID);
+        OneImageInfoReturnForXmlRpc wrapper = new 
OneImageInfoReturnForXmlRpc(xmlRpcReturnValue);
+        return wrapper;
+    }
+
+    @Override
     public OneUuidReturnForXmlRpc allocateVolume(String spUUID, String sdUUID, 
String imgGUID, String volUUID, String size) {
         Map<String, Object> xmlRpcReturnValue = 
vdsServer.allocateVolume(sdUUID, spUUID, imgGUID, volUUID, size);
         OneUuidReturnForXmlRpc wrapper = new 
OneUuidReturnForXmlRpc(xmlRpcReturnValue);


-- 
To view, visit https://gerrit.ovirt.org/39206
To unsubscribe, visit https://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I71ae74034468d6a7a6c9647ef9d72f51a5f13a0b
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Liron Aravot <lara...@redhat.com>
Gerrit-Reviewer: automat...@ovirt.org
_______________________________________________
Engine-patches mailing list
Engine-patches@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to