Kanagaraj M has uploaded a new change for review.

Change subject: gluster: add Host UUID to volume status
......................................................................

gluster: add Host UUID to volume status

Added 'host_uuid' field to volume status.
This can used to easily map the status output
with host details availble in engine, instead
comparing the ipaddress/hostname.

Change-Id: I9cda0b69e3067d71d7c0fb8d71211a47691a68f5
Bug-Url: https://bugzilla.redhat.com/885592
Signed-off-by: Kanagaraj M <[email protected]>
---
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/gluster/GetGlusterVolumeAdvancedDetailsQuery.java
M 
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/gluster/GlusterServerService.java
M 
backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/gluster/GlusterDBUtils.java
M 
backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/gluster/GlusterVolumeStatusReturnForXmlRpc.java
4 files changed, 44 insertions(+), 2 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/99/21599/1

diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/gluster/GetGlusterVolumeAdvancedDetailsQuery.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/gluster/GetGlusterVolumeAdvancedDetailsQuery.java
index 628a74d..4a4c059 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/gluster/GetGlusterVolumeAdvancedDetailsQuery.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/gluster/GetGlusterVolumeAdvancedDetailsQuery.java
@@ -6,6 +6,7 @@
 import org.ovirt.engine.core.common.businessentities.VDS;
 import org.ovirt.engine.core.common.businessentities.VDSStatus;
 import 
org.ovirt.engine.core.common.businessentities.gluster.GlusterBrickEntity;
+import 
org.ovirt.engine.core.common.businessentities.gluster.GlusterServerService;
 import org.ovirt.engine.core.common.businessentities.gluster.GlusterStatus;
 import 
org.ovirt.engine.core.common.businessentities.gluster.GlusterVolumeAdvancedDetails;
 import 
org.ovirt.engine.core.common.businessentities.gluster.GlusterVolumeEntity;
@@ -15,6 +16,7 @@
 import org.ovirt.engine.core.common.vdscommands.VDSReturnValue;
 import 
org.ovirt.engine.core.common.vdscommands.gluster.GlusterVolumeAdvancedDetailsVDSParameters;
 import org.ovirt.engine.core.compat.Guid;
+import org.ovirt.engine.core.dao.gluster.GlusterDBUtils;
 
 /**
  * Query to get volume advanced details
@@ -49,7 +51,19 @@
             brick = getBrick(getParameters().getBrickId());
             
getQueryReturnValue().setReturnValue(fetchAdvancedDetails(volume.getName()));
         } else {
-            getQueryReturnValue().setReturnValue(getServiceInfo());
+            GlusterVolumeAdvancedDetails serviceDetails = getServiceInfo();
+            if (serviceDetails != null) {
+                List<GlusterServerService> serviceList = 
serviceDetails.getServiceInfo();
+                if (serviceList != null) {
+                    for (GlusterServerService service : serviceList) {
+                        String hostName = 
GlusterDBUtils.getInstance().getHostNameOrIP(service.getGlusterHostUuid());
+                        if (hostName != null) {
+                            service.setHostName(hostName);
+                        }
+                    }
+                }
+            }
+            getQueryReturnValue().setReturnValue(serviceDetails);
         }
     }
 
diff --git 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/gluster/GlusterServerService.java
 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/gluster/GlusterServerService.java
index 7067663..94d76c3 100644
--- 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/gluster/GlusterServerService.java
+++ 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/gluster/GlusterServerService.java
@@ -16,6 +16,7 @@
     private Guid serviceId;
     private ServiceType serviceType;
     private String serviceName;
+    private Guid glusterHostUuid;
     private Guid serverId;
     private String hostName;
     private Integer port;
@@ -79,6 +80,14 @@
         this.message = message;
     }
 
+    public Guid getGlusterHostUuid() {
+        return glusterHostUuid;
+    }
+
+    public void setGlusterHostUuid(Guid glusterHostUuid) {
+        this.glusterHostUuid = glusterHostUuid;
+    }
+
     public Guid getServerId() {
         return serverId;
     }
diff --git 
a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/gluster/GlusterDBUtils.java
 
b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/gluster/GlusterDBUtils.java
index 010eba2..855a30f 100644
--- 
a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/gluster/GlusterDBUtils.java
+++ 
b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/gluster/GlusterDBUtils.java
@@ -151,4 +151,18 @@
             getGlusterVolumeDao().updateGlusterVolume(volume);
         }
     }
+
+    public String getHostNameOrIP(Guid glusterHostUuid) {
+        String hostName = null;
+        if (glusterHostUuid != null) {
+            GlusterServer glusterServer = 
getGlusterServerDao().getByGlusterServerUuid(glusterHostUuid);
+            if(glusterServer != null) {
+                VdsStatic vds = getVdsStaticDao().get(glusterServer.getId());
+                if(vds != null) {
+                    hostName = vds.getHostName();
+                }
+            }
+        }
+        return hostName;
+    }
 }
diff --git 
a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/gluster/GlusterVolumeStatusReturnForXmlRpc.java
 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/gluster/GlusterVolumeStatusReturnForXmlRpc.java
index 0839856..be98374 100644
--- 
a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/gluster/GlusterVolumeStatusReturnForXmlRpc.java
+++ 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/gluster/GlusterVolumeStatusReturnForXmlRpc.java
@@ -8,6 +8,7 @@
 import org.ovirt.engine.core.common.businessentities.gluster.BrickProperties;
 import 
org.ovirt.engine.core.common.businessentities.gluster.GlusterBrickEntity;
 import org.ovirt.engine.core.common.businessentities.gluster.GlusterClientInfo;
+import 
org.ovirt.engine.core.common.businessentities.gluster.GlusterServerService;
 import 
org.ovirt.engine.core.common.businessentities.gluster.GlusterServiceStatus;
 import org.ovirt.engine.core.common.businessentities.gluster.GlusterStatus;
 import 
org.ovirt.engine.core.common.businessentities.gluster.GlusterVolumeAdvancedDetails;
@@ -15,7 +16,6 @@
 import org.ovirt.engine.core.common.businessentities.gluster.MallInfo;
 import org.ovirt.engine.core.common.businessentities.gluster.MemoryStatus;
 import org.ovirt.engine.core.common.businessentities.gluster.Mempool;
-import 
org.ovirt.engine.core.common.businessentities.gluster.GlusterServerService;
 import org.ovirt.engine.core.common.businessentities.gluster.ServiceType;
 import org.ovirt.engine.core.common.utils.gluster.GlusterCoreUtil;
 import org.ovirt.engine.core.compat.Guid;
@@ -37,6 +37,7 @@
     private static final String NFS_KEY = "nfs";
     private static final String SHD_KEY = "shd";
     private static final String HOSTNAME = "hostname";
+    private static final String HOST_UUID = "id";
 
     private static final String DETAIL_SIZE_TOTAL = "sizeTotal";
     private static final String DETAIL_SIZE_FREE = "sizeFree";
@@ -117,6 +118,10 @@
             serviceInfo.setHostName((String) volumeServiceInfo.get(HOSTNAME));
         }
 
+        if (volumeServiceInfo.containsKey(HOST_UUID)) {
+            serviceInfo.setGlusterHostUuid(Guid.createGuidFromString((String) 
volumeServiceInfo.get(HOST_UUID)));
+        }
+
         if (volumeServiceInfo.containsKey(STATUS)) {
             String brickStatus = (String) volumeServiceInfo.get(STATUS);
             if (brickStatus.toUpperCase().equals(ONLINE)) {


-- 
To view, visit http://gerrit.ovirt.org/21599
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I9cda0b69e3067d71d7c0fb8d71211a47691a68f5
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Kanagaraj M <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to