anmolbabu has uploaded a new change for review.

Change subject: engine : Vds Command to set geo-rep config
......................................................................

engine : Vds Command to set geo-rep config

Vds Command to set geo-rep config.

Change-Id: I558ed18b94faae9d4b824c9de1fedda25ffc3f09
Signed-off-by: Anmol Babu <[email protected]>
---
M 
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/errors/VdcBllErrors.java
M 
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/vdscommands/VDSCommandType.java
A 
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/vdscommands/gluster/GlusterVolumeGeoRepConfigVdsParameters.java
M backend/manager/modules/dal/src/main/resources/bundles/VdsmErrors.properties
M 
backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/gluster/AbstractGlusterBrokerCommand.java
A 
backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/gluster/GlusterVolumeGeoRepConfigSetVDSCommand.java
M 
backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/jsonrpc/JsonRpcVdsServer.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
M 
frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/VdsmErrors.java
11 files changed, 90 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/72/35972/1

diff --git 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/errors/VdcBllErrors.java
 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/errors/VdcBllErrors.java
index d45bbb1..bc4da2b 100644
--- 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/errors/VdcBllErrors.java
+++ 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/errors/VdcBllErrors.java
@@ -405,6 +405,7 @@
     GlusterVolumeGeoRepStopFailedException(4596),
     GlusterVolumeGeoRepStatusFailed(4599),
     GlusterVolumeGeoRepStatusDetailFailed(4600),
+    GlusterGeoRepConfigSetFailed(4602),
 
     UnicodeArgumentException(4900),
 
diff --git 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/vdscommands/VDSCommandType.java
 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/vdscommands/VDSCommandType.java
index 2c41867..011c752 100644
--- 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/vdscommands/VDSCommandType.java
+++ 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/vdscommands/VDSCommandType.java
@@ -161,6 +161,7 @@
     
GetGlusterVolumeGeoRepStatusDetail("org.ovirt.engine.core.vdsbroker.gluster"),
     StopGlusterVolumeGeoRepSession("org.ovirt.engine.core.vdsbroker.gluster"),
     
DeleteGlusterVolumeGeoRepSession("org.ovirt.engine.core.vdsbroker.gluster"),
+    GlusterVolumeGeoRepConfigSet("org.ovirt.engine.core.vdsbroker.gluster"),
     SetNumberOfCpus("org.ovirt.engine.core.vdsbroker"),
     UpdateVmPolicy("org.ovirt.engine.core.vdsbroker"),
     List("org.ovirt.engine.core.vdsbroker.vdsbroker"),           // get a list 
of VMs with status only
diff --git 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/vdscommands/gluster/GlusterVolumeGeoRepConfigVdsParameters.java
 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/vdscommands/gluster/GlusterVolumeGeoRepConfigVdsParameters.java
new file mode 100644
index 0000000..a959b56
--- /dev/null
+++ 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/vdscommands/gluster/GlusterVolumeGeoRepConfigVdsParameters.java
@@ -0,0 +1,41 @@
+package org.ovirt.engine.core.common.vdscommands.gluster;
+
+import org.ovirt.engine.core.compat.Guid;
+
+public class GlusterVolumeGeoRepConfigVdsParameters extends 
GlusterVolumeGeoRepSessionVDSParameters {
+
+    private String configKey;
+    private String configValue;
+
+    public GlusterVolumeGeoRepConfigVdsParameters() {
+        super();
+    }
+
+    public GlusterVolumeGeoRepConfigVdsParameters(Guid serverId, String 
volumeName, String slaveHost, String slaveVolume, Boolean force, String 
configKey, String configValue) {
+        super(serverId, volumeName, slaveHost, slaveVolume, force);
+        this.configKey = configKey;
+        this.configValue = configValue;
+    }
+
+    public GlusterVolumeGeoRepConfigVdsParameters(Guid serverId, String 
volumeName, String slaveHost, String slaveVolume, String configKey, String 
configValue) {
+        super(serverId, volumeName, slaveHost, slaveVolume);
+        this.configKey = configKey;
+        this.configValue = configValue;
+    }
+
+    public String getConfigKey() {
+        return configKey;
+    }
+
+    public void setConfigKey(String configKey) {
+        this.configKey = configKey;
+    }
+
+    public String getConfigValue() {
+        return configValue;
+    }
+
+    public void setConfigValue(String configValue) {
+        this.configValue = configValue;
+    }
+}
diff --git 
a/backend/manager/modules/dal/src/main/resources/bundles/VdsmErrors.properties 
b/backend/manager/modules/dal/src/main/resources/bundles/VdsmErrors.properties
index 6e1b462..3d0a969 100644
--- 
a/backend/manager/modules/dal/src/main/resources/bundles/VdsmErrors.properties
+++ 
b/backend/manager/modules/dal/src/main/resources/bundles/VdsmErrors.properties
@@ -372,6 +372,7 @@
 GlusterVolumeRebalanceStatusFailedException=Failed to get gluster volume 
rebalance status
 GlusterVolumeGeoRepStatusFailedException=Failed to get status information of 
geo-replication session(s) on gluster volume
 GlusterVolumeGeoRepStatusDetailFailedException=Failed to get detailed status 
information of geo-replication session(s) on gluster volume
+GlusterGeoRepConfigSetFailed=Failed to set the geo-rep configuration
 GlusterLibgfapiException=Command failed due to gluster libgfapi exception
 GlfsStatvfsException=Failed to get gluster volume size info
 GlfsInitException=Command failed while mounting gluster volume
diff --git 
a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/gluster/AbstractGlusterBrokerCommand.java
 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/gluster/AbstractGlusterBrokerCommand.java
index 77cd29e..5ce9a4f 100644
--- 
a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/gluster/AbstractGlusterBrokerCommand.java
+++ 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/gluster/AbstractGlusterBrokerCommand.java
@@ -68,6 +68,7 @@
         case GlusterVolumeRemoveBricksCommitFailed:
         case GlusterVolumeGeoRepStatusFailed:
         case GlusterVolumeGeoRepStatusDetailFailed:
+        case GlusterGeoRepConfigSetFailed:
         case GlusterLibgfapiException:
         case GlfsStatvfsException:
         case GlfsInitException:
diff --git 
a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/gluster/GlusterVolumeGeoRepConfigSetVDSCommand.java
 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/gluster/GlusterVolumeGeoRepConfigSetVDSCommand.java
new file mode 100644
index 0000000..4cbffa9
--- /dev/null
+++ 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/gluster/GlusterVolumeGeoRepConfigSetVDSCommand.java
@@ -0,0 +1,16 @@
+package org.ovirt.engine.core.vdsbroker.gluster;
+
+import 
org.ovirt.engine.core.common.vdscommands.gluster.GlusterVolumeGeoRepConfigVdsParameters;
+
+public class GlusterVolumeGeoRepConfigSetVDSCommand<P extends 
GlusterVolumeGeoRepConfigVdsParameters> extends AbstractGlusterBrokerCommand<P> 
{
+
+    public GlusterVolumeGeoRepConfigSetVDSCommand(P parameters) {
+        super(parameters);
+    }
+
+    @Override
+    protected void executeVdsBrokerCommand() {
+        status = 
getBroker().glusterVolumeGeoRepConfigSet(getParameters().getVolumeName(), 
getParameters().getSlaveHost(), getParameters().getSlaveVolume(), 
getParameters().getConfigKey(), getParameters().getConfigValue());
+        proceedProxyReturnValue();
+    }
+}
diff --git 
a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/jsonrpc/JsonRpcVdsServer.java
 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/jsonrpc/JsonRpcVdsServer.java
index 9e970e4..daac5af 100644
--- 
a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/jsonrpc/JsonRpcVdsServer.java
+++ 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/jsonrpc/JsonRpcVdsServer.java
@@ -1242,6 +1242,19 @@
     }
 
     @Override
+    public StatusOnlyReturnForXmlRpc glusterVolumeGeoRepConfigSet(String 
volumeName, String slaveHost, String slaveVolumeName, String configKey, String 
configValue) {
+        JsonRpcRequest request = new 
RequestBuilder("GlusterVolume.geoRepConfigSet")
+                                        .withParameter("volumeName", 
volumeName)
+                                        .withParameter("remoteHost", slaveHost)
+                                        .withParameter("remoteVolumeName", 
slaveVolumeName)
+                                        .withParameter("key", configKey)
+                                        .withParameter("value", configValue)
+                                        .build();
+        Map<String, Object> response = new FutureMap(this.client, request);
+        return new StatusOnlyReturnForXmlRpc(response);
+    }
+
+    @Override
     public GlusterServersListReturnForXmlRpc glusterServersList() {
         JsonRpcRequest request = new 
RequestBuilder("GlusterHost.list").build();
         Map<String, Object> response =
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 92619fa..047e0ca 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
@@ -322,6 +322,8 @@
 
     GlusterVolumeGeoRepStatusDetailForXmlRpc 
glusterVolumeGeoRepStatusDetail(String volumeName, String slaveHost, String 
slaveVolumeName);
 
+    StatusOnlyReturnForXmlRpc glusterVolumeGeoRepConfigSet(String volumeName, 
String slaveHost, String slaveVolumeName, String configKey, String configValue);
+
     GlusterVolumeTaskReturnForXmlRpc glusterVolumeRemoveBrickStatus(String 
volumeName, String[] bricksList);
 
     StatusOnlyReturnForXmlRpc setNumberOfCpus(String vmId, String 
numberOfCpus);
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 e97444b..fad9fb4 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
@@ -250,6 +250,8 @@
 
     public Map<String, Object> glusterVolumeGeoRepSessionStop(String 
volumeName, String remoteHost, String remoteVolumeName, Boolean force);
 
+    public Map<String, Object> glusterVolumeGeoRepConfigSet(String volumeName, 
String slaveHost, String slaveVolumeName, String configKey, String configValue);
+
     public Map<String, Object> ping();
 
     @FutureCall(delegeteTo = "ping")
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 d027b50..f69aed0 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
@@ -1449,6 +1449,15 @@
     }
 
     @Override
+    public StatusOnlyReturnForXmlRpc glusterVolumeGeoRepConfigSet(String 
volumeName, String slaveHost, String slaveVolumeName, String configKey, String 
configValue) {
+        try {
+            return new 
StatusOnlyReturnForXmlRpc(vdsServer.glusterVolumeGeoRepConfigSet(volumeName, 
slaveHost, slaveVolumeName, configKey, configValue));
+        } catch (UndeclaredThrowableException ute) {
+            throw new XmlRpcRunTimeException(ute);
+        }
+    }
+
+    @Override
     public StatusOnlyReturnForXmlRpc setNumberOfCpus(String vmId, String 
numberOfCpus) {
         try {
             return new 
StatusOnlyReturnForXmlRpc(vdsServer.setNumberOfCpus(vmId, numberOfCpus));
diff --git 
a/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/VdsmErrors.java
 
b/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/VdsmErrors.java
index c796a35..be2a575 100644
--- 
a/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/VdsmErrors.java
+++ 
b/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/VdsmErrors.java
@@ -806,6 +806,9 @@
     @DefaultStringValue("Failed to get detailed status information of 
geo-replication session(s) on gluster volume")
     String GlusterVolumeGeoRepStatusDetailFailed();
 
+    @DefaultStringValue("Failed to set the geo-rep configuration")
+    String GlusterGeoRepConfigSetFailed();
+
     @DefaultStringValue("Failed to get status of gluster volume remove bricks")
     String GlusterVolumeRemoveBrickStatusFailed();
 


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

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

Reply via email to