Daniel Erez has uploaded a new change for review.

Change subject: core: api to invoke initializeConnection for Cinder disk
......................................................................

core: api to invoke initializeConnection for Cinder disk

Adding relevant method to OpenStackVolumeProviderProxy and CinderBroker
to support invoking initializeConnection for a Cinder disk.

Change-Id: Iffd087f6ff9c5fc1bbd658574b5c7c8e14ecdfc2
Bug-Url: https://bugzilla.redhat.com/1185826
Signed-off-by: Daniel Erez <de...@redhat.com>
---
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/provider/storage/OpenStackVolumeProviderProxy.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/CinderBroker.java
2 files changed, 23 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/54/39654/1

diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/provider/storage/OpenStackVolumeProviderProxy.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/provider/storage/OpenStackVolumeProviderProxy.java
index a6c5398..3af47a3 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/provider/storage/OpenStackVolumeProviderProxy.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/provider/storage/OpenStackVolumeProviderProxy.java
@@ -2,6 +2,8 @@
 
 import com.woorea.openstack.base.client.OpenStackRequest;
 import com.woorea.openstack.cinder.Cinder;
+import com.woorea.openstack.cinder.model.ConnectionForInitialize;
+import com.woorea.openstack.cinder.model.ConnectionInfo;
 import com.woorea.openstack.cinder.model.Limits;
 import com.woorea.openstack.cinder.model.Volume;
 import com.woorea.openstack.cinder.model.VolumeForCreate;
@@ -11,6 +13,7 @@
 import org.ovirt.engine.core.bll.provider.ProviderProxyFactory;
 import org.ovirt.engine.core.bll.storage.CINDERStorageHelper;
 import org.ovirt.engine.core.common.businessentities.StorageDomainStatic;
+import 
org.ovirt.engine.core.common.businessentities.storage.CinderConnectionInfo;
 import org.ovirt.engine.core.common.businessentities.storage.CinderVolumeType;
 import 
org.ovirt.engine.core.common.businessentities.storage.OpenStackVolumeProviderProperties;
 import org.ovirt.engine.core.common.businessentities.Provider;
@@ -81,6 +84,14 @@
         getClient(getTenantId()).volumes().extend(volumeId, newSize).execute();
     }
 
+    public CinderConnectionInfo initializeConnectionForVolume(String volumeId, 
ConnectionForInitialize connectionForInitialize) {
+        ConnectionInfo connectionInfo = 
getClient(getTenantId()).volumes().initializeConnection(volumeId, 
connectionForInitialize).execute();
+        CinderConnectionInfo cinderConnectionInfo = new CinderConnectionInfo();
+        
cinderConnectionInfo.setDriverVolumeType(connectionInfo.getDriverVolumeType());
+        cinderConnectionInfo.setData(connectionInfo.getData());
+        return cinderConnectionInfo;
+    }
+
     public Volume getVolumeById(String id) {
         return getClient(getTenantId()).volumes().show(id).execute();
     }
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/CinderBroker.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/CinderBroker.java
index 0980397..506887d 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/CinderBroker.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/CinderBroker.java
@@ -1,11 +1,13 @@
 package org.ovirt.engine.core.bll.storage;
 
 import com.woorea.openstack.base.client.OpenStackResponseException;
+import com.woorea.openstack.cinder.model.ConnectionForInitialize;
 import com.woorea.openstack.cinder.model.Volume;
 import com.woorea.openstack.cinder.model.VolumeForCreate;
 import com.woorea.openstack.cinder.model.VolumeForUpdate;
 import org.apache.commons.httpclient.HttpStatus;
 import org.ovirt.engine.core.bll.provider.storage.OpenStackVolumeProviderProxy;
+import 
org.ovirt.engine.core.common.businessentities.storage.CinderConnectionInfo;
 import org.ovirt.engine.core.common.businessentities.storage.CinderDisk;
 import 
org.ovirt.engine.core.common.businessentities.storage.CinderVolumeStatus;
 import org.ovirt.engine.core.common.businessentities.storage.DiskInterface;
@@ -107,6 +109,16 @@
         });
     }
 
+    public CinderConnectionInfo initializeConnectionForDisk(final CinderDisk 
cinderDisk) {
+        return execute(new Callable<CinderConnectionInfo>() {
+            @Override
+            public CinderConnectionInfo call() {
+                ConnectionForInitialize connectionForInitialize = new 
ConnectionForInitialize();
+                return 
proxy.initializeConnectionForVolume(cinderDisk.getId().toString(), 
connectionForInitialize);
+            }
+        });
+    }
+
     public boolean isDiskExist(final Guid id) {
         return execute(new Callable<Boolean>() {
             @Override


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

Gerrit-MessageType: newchange
Gerrit-Change-Id: Iffd087f6ff9c5fc1bbd658574b5c7c8e14ecdfc2
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Daniel Erez <de...@redhat.com>
_______________________________________________
Engine-patches mailing list
Engine-patches@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to