Daniel Erez has uploaded a new change for review.

Change subject: core: added createDisk to CinderBroker
......................................................................

core: added createDisk to CinderBroker

* Added createDisk method to CinderBroker.
* Added createVolume method to OpenStackVolumeProviderProxy.

Change-Id: Ic12731e5efe8c61f3f79e78dc255128d929d6ea0
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/18/39018/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 01cefd6..19baed9 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
@@ -1,6 +1,8 @@
 package org.ovirt.engine.core.bll.provider.storage;
 
 import com.woorea.openstack.cinder.Cinder;
+import com.woorea.openstack.cinder.model.Volume;
+import com.woorea.openstack.cinder.model.VolumeForCreate;
 import org.ovirt.engine.core.bll.provider.ProviderProxyFactory;
 import org.ovirt.engine.core.bll.storage.CINDERStorageHelper;
 import org.ovirt.engine.core.common.businessentities.StorageDomainStatic;
@@ -54,6 +56,11 @@
         return client;
     }
 
+    public String createVolume(VolumeForCreate volumeForCreate) {
+        Volume retCinderVolume = 
getClient(getTenantId()).volumes().create(volumeForCreate).execute();
+        return retCinderVolume.getId();
+    }
+
     @Override
     public void onRemoval() {
         List<StorageDomain> storageDomains = 
getDbFacade().getStorageDomainDao().getAllByConnectionId(provider.getId());
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 8cd350c..e0a42f3 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,7 +1,9 @@
 package org.ovirt.engine.core.bll.storage;
 
 import com.woorea.openstack.base.client.OpenStackResponseException;
+import com.woorea.openstack.cinder.model.VolumeForCreate;
 import org.ovirt.engine.core.bll.provider.storage.OpenStackVolumeProviderProxy;
+import org.ovirt.engine.core.common.businessentities.storage.CinderDisk;
 import org.ovirt.engine.core.common.errors.VdcBllErrors;
 import org.ovirt.engine.core.compat.Guid;
 import org.ovirt.engine.core.dal.dbbroker.auditloghandling.AuditLogableBase;
@@ -31,6 +33,20 @@
         }
     }
 
+    public String createDisk(final CinderDisk cinderDisk) {
+        return execute(new Callable<String>() {
+            @Override
+            public String call() {
+                VolumeForCreate cinderVolume = new VolumeForCreate();
+                cinderVolume.setName(cinderDisk.getDiskAlias());
+                cinderVolume.setDescription(cinderDisk.getDiskDescription());
+                cinderVolume.setSize((int) (cinderDisk.getSizeInGigabytes()));
+                cinderVolume.setVolumeType(cinderDisk.getCinderVolumeType());
+                return proxy.createVolume(cinderVolume);
+            }
+        });
+    }
+
     private OpenStackVolumeProviderProxy getVolumeProviderProxy(Guid 
storageDomainId) {
         if (proxy == null) {
             proxy = 
OpenStackVolumeProviderProxy.getFromStorageDomainId(storageDomainId);


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

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ic12731e5efe8c61f3f79e78dc255128d929d6ea0
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