Sahina Bose has uploaded a new change for review.

Change subject: gluster: Bll command to refresh gluster hooks in engine
......................................................................

gluster: Bll command to refresh gluster hooks in engine

Used to manually trigger a sync of gluster hooks in
engine with values stored in database

Change-Id: I4713ca800432aee302f913d0c8aa06a35a5b2db2
Signed-off-by: Sahina Bose <sab...@redhat.com>
---
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/gluster/GlusterHookSyncJob.java
A 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/gluster/RefreshGlusterHooksCommand.java
A 
backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/gluster/RefreshGlusterHooksCommandTest.java
M 
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/AuditLogType.java
M 
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/VdcActionType.java
A 
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/gluster/GlusterClusterParameters.java
M 
backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dal/VdcBllMessages.java
M 
backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dal/dbbroker/auditloghandling/AuditLogDirector.java
M backend/manager/modules/dal/src/main/resources/bundles/AppErrors.properties
M 
backend/manager/modules/dal/src/main/resources/bundles/AuditLogMessages.properties
M 
frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/AppErrors.java
M 
frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/LocalizedEnums.java
M 
frontend/webadmin/modules/uicompat/src/main/resources/org/ovirt/engine/ui/uicompat/LocalizedEnums.properties
M 
frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/frontend/AppErrors.properties
14 files changed, 250 insertions(+), 23 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/12/15312/1

diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/gluster/GlusterHookSyncJob.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/gluster/GlusterHookSyncJob.java
index 1ccc854..aded6d2 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/gluster/GlusterHookSyncJob.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/gluster/GlusterHookSyncJob.java
@@ -17,6 +17,8 @@
 import org.ovirt.engine.core.common.businessentities.gluster.GlusterHookEntity;
 import org.ovirt.engine.core.common.businessentities.gluster.GlusterHookStatus;
 import org.ovirt.engine.core.common.businessentities.gluster.GlusterServerHook;
+import org.ovirt.engine.core.common.errors.VdcBLLException;
+import org.ovirt.engine.core.common.errors.VdcBllErrors;
 import org.ovirt.engine.core.common.gluster.GlusterFeatureSupported;
 import org.ovirt.engine.core.common.utils.Pair;
 import org.ovirt.engine.core.common.vdscommands.VDSCommandType;
@@ -44,32 +46,47 @@
         List<VDSGroup> clusters = getClusterDao().getAll();
 
         for (VDSGroup cluster : clusters) {
-            if (!supportsGlusterHookFeature(cluster))
-            {
-                continue;
-            }
+            refreshHooksInCluster(cluster, false);
+        }
+    }
 
-            log.debugFormat("Syncing hooks for cluster {0}", 
cluster.getname());
-            List<VDS> upServers = 
getClusterUtils().getAllUpServers(cluster.getId());
+    /**
+     *
+     * @param cluster - the VDSGroup for which the gluster hook data is 
refreshed
+     * @param throwError - set to true if this method should throw exception.
+     */
+    public void refreshHooksInCluster(VDSGroup cluster, boolean throwError) {
+        if (!supportsGlusterHookFeature(cluster))
+        {
+            return;
+        }
 
-            if (upServers == null || upServers.isEmpty()) {
-                continue;
-            }
+        log.debugFormat("Syncing hooks for cluster {0}", cluster.getname());
+        List<VDS> upServers = 
getClusterUtils().getAllUpServers(cluster.getId());
 
-            List<Callable<Pair<VDS, VDSReturnValue>>> taskList = new 
ArrayList<Callable<Pair<VDS, VDSReturnValue>>>();
-            for (final VDS upServer : upServers) {
-                taskList.add(new Callable<Pair<VDS, VDSReturnValue>>() {
-                    @Override
-                    public Pair<VDS, VDSReturnValue> call() throws Exception {
-                        VDSReturnValue returnValue 
=runVdsCommand(VDSCommandType.GlusterHooksList,
-                                new 
VdsIdVDSCommandParametersBase(upServer.getId()));
-                        return new Pair<VDS, VDSReturnValue>(upServer, 
returnValue);
-                    }
-                });
-            }
-            List<Pair<VDS, VDSReturnValue>> pairResults = 
ThreadPoolUtil.invokeAll(taskList);
+        if (upServers == null || upServers.isEmpty()) {
+            return;
+        }
 
+        List<Callable<Pair<VDS, VDSReturnValue>>> taskList = new 
ArrayList<Callable<Pair<VDS, VDSReturnValue>>>();
+        for (final VDS upServer : upServers) {
+            taskList.add(new Callable<Pair<VDS, VDSReturnValue>>() {
+                @Override
+                public Pair<VDS, VDSReturnValue> call() throws Exception {
+                    VDSReturnValue returnValue 
=runVdsCommand(VDSCommandType.GlusterHooksList,
+                            new 
VdsIdVDSCommandParametersBase(upServer.getId()));
+                    return new Pair<VDS, VDSReturnValue>(upServer, 
returnValue);
+                }
+            });
+        }
+        List<Pair<VDS, VDSReturnValue>> pairResults = 
ThreadPoolUtil.invokeAll(taskList);
+        try {
             addOrUpdateHooks(cluster.getId(), pairResults);
+        } catch (VdcBLLException e) {
+            if (throwError) {
+                //propogate error to calling application.
+                throw e;
+            }
         }
     }
 
@@ -203,6 +220,7 @@
             }
         } catch (Exception e) {
             log.error("Exception in sync", e);
+            throw new VdcBLLException(VdcBllErrors.GlusterHookListException, 
e.getLocalizedMessage());
         }
 
     }
@@ -294,7 +312,7 @@
         });
     }
 
-   private void updateHookServerMap(Map<Guid, Set<VDS>> existingHookServersMap,
+    private void updateHookServerMap(Map<Guid, Set<VDS>> 
existingHookServersMap,
             Guid hookId,
             VDS server) {
         Set<VDS> hookServers =  existingHookServersMap.get(hookId);
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/gluster/RefreshGlusterHooksCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/gluster/RefreshGlusterHooksCommand.java
new file mode 100644
index 0000000..4c7e9b5
--- /dev/null
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/gluster/RefreshGlusterHooksCommand.java
@@ -0,0 +1,66 @@
+package org.ovirt.engine.core.bll.gluster;
+
+import org.ovirt.engine.core.bll.LockIdNameAttribute;
+import org.ovirt.engine.core.bll.NonTransactiveCommandAttribute;
+import org.ovirt.engine.core.common.AuditLogType;
+import org.ovirt.engine.core.common.action.gluster.GlusterClusterParameters;
+import org.ovirt.engine.core.common.businessentities.VDSGroup;
+import org.ovirt.engine.core.common.errors.VdcBLLException;
+import org.ovirt.engine.core.dal.VdcBllMessages;
+
+/**
+ * BLL command to refresh gluster hooks in a cluster
+ */
+@NonTransactiveCommandAttribute
+@LockIdNameAttribute(isWait = true)
+public class RefreshGlusterHooksCommand<T extends GlusterClusterParameters> 
extends GlusterCommandBase<T> {
+
+    public RefreshGlusterHooksCommand(T params) {
+        super(params);
+        setVdsGroupId(params.getClusterId());
+    }
+
+    @Override
+    protected void setActionMessageParameters() {
+        addCanDoActionMessage(VdcBllMessages.VAR__ACTION__REFRESH);
+        addCanDoActionMessage(VdcBllMessages.VAR__TYPE__GLUSTER_HOOK);
+    }
+
+    @Override
+    protected boolean canDoAction() {
+        if (getParameters().getClusterId() == null) {
+            
addCanDoActionMessage(VdcBllMessages.ACTION_TYPE_FAILED_CLUSTER_IS_NOT_VALID);
+            return false;
+        }
+
+        if(!super.canDoAction()) {
+            return false;
+        }
+
+        return true;
+    }
+
+    protected GlusterHookSyncJob getSyncJobInstance() {
+        return GlusterHookSyncJob.getInstance();
+    }
+
+    @Override
+    protected void executeCommand() {
+        VDSGroup cluster = 
getVdsGroupDAO().get(getParameters().getClusterId());
+        try {
+            getSyncJobInstance().refreshHooksInCluster(cluster, true);
+            setSucceeded(true);
+        } catch (VdcBLLException e) {
+            setSucceeded(false);
+        }
+    }
+
+    @Override
+    public AuditLogType getAuditLogTypeValue() {
+        if (getSucceeded()) {
+            return AuditLogType.GLUSTER_HOOK_REFRESH;
+        } else {
+            return errorType == null ? 
AuditLogType.GLUSTER_HOOK_REFRESH_FAILED : errorType;
+        }
+    }
+}
diff --git 
a/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/gluster/RefreshGlusterHooksCommandTest.java
 
b/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/gluster/RefreshGlusterHooksCommandTest.java
new file mode 100644
index 0000000..b1a4825
--- /dev/null
+++ 
b/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/gluster/RefreshGlusterHooksCommandTest.java
@@ -0,0 +1,96 @@
+package org.ovirt.engine.core.bll.gluster;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+import static org.mockito.Mockito.doNothing;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.doThrow;
+import static org.mockito.Mockito.spy;
+import static org.mockito.Mockito.when;
+
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Mock;
+import org.mockito.runners.MockitoJUnitRunner;
+import org.ovirt.engine.core.common.AuditLogType;
+import org.ovirt.engine.core.common.action.gluster.GlusterClusterParameters;
+import org.ovirt.engine.core.common.businessentities.VDS;
+import org.ovirt.engine.core.common.businessentities.VDSGroup;
+import org.ovirt.engine.core.common.businessentities.VDSStatus;
+import org.ovirt.engine.core.common.errors.VdcBLLException;
+import org.ovirt.engine.core.compat.Guid;
+import org.ovirt.engine.core.dal.VdcBllMessages;
+import org.ovirt.engine.core.dao.VdsGroupDAO;
+
+
+@RunWith(MockitoJUnitRunner.class)
+public class RefreshGlusterHooksCommandTest {
+    private static final Guid CLUSTER_ID = Guid.NewGuid();
+    /**
+     * The command under test.
+     */
+
+    RefreshGlusterHooksCommand<GlusterClusterParameters> cmd;
+
+    @Mock
+    private VdsGroupDAO vdsGroupDao;
+
+    @Mock
+    private GlusterHookSyncJob hookSyncJob;
+
+    public void setupMocks() {
+        when(vdsGroupDao.get(CLUSTER_ID)).thenReturn(getVdsGroup());
+        doReturn(vdsGroupDao).when(cmd).getVdsGroupDAO();
+        when(cmd.getSyncJobInstance()).thenReturn(hookSyncJob);
+    }
+
+    private VDSGroup getVdsGroup() {
+        VDSGroup cluster = new VDSGroup();
+        cluster.setId(CLUSTER_ID);
+        cluster.setname("TestCluster");
+        return cluster;
+    }
+
+    protected VDS getServer() {
+        VDS server =  new VDS();
+        server.setId(Guid.NewGuid());
+        server.setVdsName("VDS1");
+        server.setStatus(VDSStatus.Up);
+        server.setVdsGroupId(CLUSTER_ID);
+        return server;
+    }
+
+    @Test
+    public void executeCommand() {
+        cmd = spy(new RefreshGlusterHooksCommand<GlusterClusterParameters>(new 
GlusterClusterParameters(CLUSTER_ID)));
+        setupMocks();
+        
doNothing().when(hookSyncJob).refreshHooksInCluster(getVdsGroup(),true);
+        cmd.executeCommand();
+        assertEquals(cmd.getAuditLogTypeValue(), 
AuditLogType.GLUSTER_HOOK_REFRESH);
+    }
+
+    @Test
+    public void executeCommandWhenFailed() {
+        cmd = spy(new RefreshGlusterHooksCommand<GlusterClusterParameters>(new 
GlusterClusterParameters(CLUSTER_ID)));
+        setupMocks();
+        doThrow(new 
VdcBLLException()).when(hookSyncJob).refreshHooksInCluster(getVdsGroup(), true);
+        cmd.executeCommand();
+        assertEquals(cmd.getAuditLogTypeValue(), 
AuditLogType.GLUSTER_HOOK_REFRESH_FAILED);
+    }
+
+    @Test
+    public void canDoActionSucceeds() {
+        cmd = spy(new RefreshGlusterHooksCommand<GlusterClusterParameters>(new 
GlusterClusterParameters(CLUSTER_ID)));
+        doReturn(getServer()).when(cmd).getUpServer();
+        assertTrue(cmd.canDoAction());
+    }
+
+    @Test
+    public void canDoActionFailsOnNullCluster() {
+        cmd = spy(new RefreshGlusterHooksCommand<GlusterClusterParameters>(new 
GlusterClusterParameters(null)));
+        assertFalse(cmd.canDoAction());
+        
assertTrue(cmd.getReturnValue().getCanDoActionMessages().contains(VdcBllMessages.ACTION_TYPE_FAILED_CLUSTER_IS_NOT_VALID.toString()));
+    }
+
+}
diff --git 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/AuditLogType.java
 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/AuditLogType.java
index f703017..9b42aa8 100644
--- 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/AuditLogType.java
+++ 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/AuditLogType.java
@@ -262,6 +262,8 @@
     GLUSTER_HOOK_ADD_FAILED(4062),
     GLUSTER_HOOK_REMOVED(4063),
     GLUSTER_HOOK_REMOVE_FAILED(4064),
+    GLUSTER_HOOK_REFRESH(4065),
+    GLUSTER_HOOK_REFRESH_FAILED(4066),
 
     USER_VDS_RESTART(41),
     USER_FAILED_VDS_RESTART(107),
diff --git 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/VdcActionType.java
 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/VdcActionType.java
index f7c2990..1d32b61 100644
--- 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/VdcActionType.java
+++ 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/VdcActionType.java
@@ -238,6 +238,7 @@
     UpdateGlusterHook(1416,ActionGroup.MANIPULATE_GLUSTER_HOOK, 
QuotaDependency.NONE),
     
AddGlusterHook(1417,ActionGroup.MANIPULATE_GLUSTER_HOOK,QuotaDependency.NONE),
     
RemoveGlusterHook(1418,ActionGroup.MANIPULATE_GLUSTER_HOOK,QuotaDependency.NONE),
+    RefreshGlusterHook(1419, ActionGroup.MANIPULATE_GLUSTER_HOOK, 
QuotaDependency.NONE),
 
     // External events
     AddExternalEvent(1500, ActionGroup.INJECT_EXTERNAL_EVENTS, 
QuotaDependency.NONE),
diff --git 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/gluster/GlusterClusterParameters.java
 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/gluster/GlusterClusterParameters.java
new file mode 100644
index 0000000..33ae721
--- /dev/null
+++ 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/gluster/GlusterClusterParameters.java
@@ -0,0 +1,26 @@
+package org.ovirt.engine.core.common.action.gluster;
+
+import javax.validation.constraints.NotNull;
+
+import org.ovirt.engine.core.common.action.VdcActionParametersBase;
+import org.ovirt.engine.core.compat.Guid;
+
+public class GlusterClusterParameters extends VdcActionParametersBase {
+
+    private static final long serialVersionUID = 2260339638936514331L;
+
+    @NotNull(message = "VALIDATION.GLUSTER.VOLUME.CLUSTER_ID.NOT_NULL")
+    private final Guid clusterId;
+
+    public GlusterClusterParameters(Guid clusterId) {
+        super();
+        this.clusterId = clusterId;
+    }
+
+    public Guid getClusterId() {
+        return clusterId;
+    }
+
+
+
+}
diff --git 
a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dal/VdcBllMessages.java
 
b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dal/VdcBllMessages.java
index 79a8de5..405d171 100644
--- 
a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dal/VdcBllMessages.java
+++ 
b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dal/VdcBllMessages.java
@@ -75,6 +75,7 @@
     VAR__ACTION__STOP_PROFILE,
     VAR__ACTION__ENABLE,
     VAR__ACTION__DISABLE,
+    VAR__ACTION__REFRESH,
 
     // Host statuses replacements
     VAR__HOST_STATUS__UP,
diff --git 
a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dal/dbbroker/auditloghandling/AuditLogDirector.java
 
b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dal/dbbroker/auditloghandling/AuditLogDirector.java
index 285b023..cadcd7f 100644
--- 
a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dal/dbbroker/auditloghandling/AuditLogDirector.java
+++ 
b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dal/dbbroker/auditloghandling/AuditLogDirector.java
@@ -133,6 +133,8 @@
         severities.put(AuditLogType.GLUSTER_HOOK_ADD_FAILED, 
AuditLogSeverity.ERROR);
         severities.put(AuditLogType.GLUSTER_HOOK_REMOVED, 
AuditLogSeverity.NORMAL);
         severities.put(AuditLogType.GLUSTER_HOOK_REMOVE_FAILED, 
AuditLogSeverity.ERROR);
+        severities.put(AuditLogType.GLUSTER_HOOK_REFRESH, 
AuditLogSeverity.NORMAL);
+        severities.put(AuditLogType.GLUSTER_HOOK_REFRESH_FAILED, 
AuditLogSeverity.ERROR);
     }
 
     private static void initDefaultSeverities() {
diff --git 
a/backend/manager/modules/dal/src/main/resources/bundles/AppErrors.properties 
b/backend/manager/modules/dal/src/main/resources/bundles/AppErrors.properties
index fb910b8..5a59813 100644
--- 
a/backend/manager/modules/dal/src/main/resources/bundles/AppErrors.properties
+++ 
b/backend/manager/modules/dal/src/main/resources/bundles/AppErrors.properties
@@ -279,6 +279,7 @@
 VAR__ACTION__STOP_PROFILE=$action stop profiling
 VAR__ACTION__ENABLE=$action enable
 VAR__ACTION__DISABLE=$action disable
+VAR__ACTION__REFRESH=$action refresh
 VAR__HOST_STATUS__UP=$hostStatus Up
 VAR__HOST_STATUS__UP_MAINTENANCE_OR_NON_OPERATIONAL=$hostStatus Up, 
Maintenance or Non operational
 
diff --git 
a/backend/manager/modules/dal/src/main/resources/bundles/AuditLogMessages.properties
 
b/backend/manager/modules/dal/src/main/resources/bundles/AuditLogMessages.properties
index e2e2513..d5cf2c4 100644
--- 
a/backend/manager/modules/dal/src/main/resources/bundles/AuditLogMessages.properties
+++ 
b/backend/manager/modules/dal/src/main/resources/bundles/AuditLogMessages.properties
@@ -622,3 +622,5 @@
 GLUSTER_HOOK_ADD_FAILED=Failed to add Gluster Hook ${GlusterHookName} on 
conflicting servers. ${FailureMessage}
 GLUSTER_HOOK_REMOVED=Gluster Hook ${GlusterHookName} removed from all servers 
in cluster ${VdsGroupName}.
 GLUSTER_HOOK_REMOVE_FAILED=Failed to remove Gluster Hook ${GlusterHookName} 
from cluster ${VdsGroupName}. ${FailureMessage}
+GLUSTER_HOOK_REFRESH=Refreshed gluster hooks in Cluster ${VdsGroupName}.
+GLUSTER_HOOK_REFRESH_FAILED=Failed to refresh gluster hooks in Cluster 
${VdsGroupName}.
diff --git 
a/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/AppErrors.java
 
b/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/AppErrors.java
index a5337dd..4a81168 100644
--- 
a/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/AppErrors.java
+++ 
b/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/AppErrors.java
@@ -760,6 +760,9 @@
     @DefaultStringValue("$action assign")
     String VAR__ACTION__ASSIGN();
 
+    @DefaultStringValue("$action refresh")
+    String VAR__ACTION__REFRESH();
+
     @DefaultStringValue("$hostStatus Up")
     String VAR__HOST_STATUS__UP();
 
diff --git 
a/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/LocalizedEnums.java
 
b/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/LocalizedEnums.java
index 1249115..532c4e1 100644
--- 
a/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/LocalizedEnums.java
+++ 
b/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/LocalizedEnums.java
@@ -286,6 +286,10 @@
 
     String AuditLogType___GLUSTER_HOOK_REMOVE_FAILED();
 
+    String AuditLogType___GLUSTER_HOOK_REFRESH();
+
+    String AuditLogType___GLUSTER_HOOK_REFRESH_FAILED();
+
     String VdcActionType___ActivateVds();
 
        String VdcActionType___RecoveryStoragePool();
@@ -599,6 +603,8 @@
 
        String VdcActionType___RemoveGlusterHook();
 
+       String VdcActionType___RefreshGlusterHook();
+
        String VdcActionType___ConnectStorageToVds();
 
        String VdcObjectType___AdElements();
diff --git 
a/frontend/webadmin/modules/uicompat/src/main/resources/org/ovirt/engine/ui/uicompat/LocalizedEnums.properties
 
b/frontend/webadmin/modules/uicompat/src/main/resources/org/ovirt/engine/ui/uicompat/LocalizedEnums.properties
index 858eaf1..74e15f4 100644
--- 
a/frontend/webadmin/modules/uicompat/src/main/resources/org/ovirt/engine/ui/uicompat/LocalizedEnums.properties
+++ 
b/frontend/webadmin/modules/uicompat/src/main/resources/org/ovirt/engine/ui/uicompat/LocalizedEnums.properties
@@ -139,7 +139,8 @@
 AuditLogType___GLUSTER_HOOK_ADD_FAILED=Failed to add Gluster Hook on 
conflicting servers
 AuditLogType___GLUSTER_HOOK_REMOVED=Removed GLuster Hook
 AuditLogType___GLUSTER_HOOK_REMOVE_FAILED=Failed to remove Gluster Hook from 
cluster
-
+AuditLogType___GLUSTER_HOOK_REFRESH=Gluster Hooks refreshed
+AuditLogType___GLUSTER_HOOK_REFRESH_FAILED=Failed to refresh Gluster Hooks
 
 VdcActionType___ActivateVds=Activate Host
 VdcActionType___RecoveryStoragePool=Reinitialize Data Center
@@ -271,6 +272,7 @@
 VdcActionType___UpdateGlusterHook=Update Gluster Hook
 VdcActionType___AddGlusterHook=Add Gluster Hook
 VdcActionType___RemoveGlusterHook=Remove Gluster Hook
+VdcActionType___RefreshGlusterHook=Refresh Gluster Hook
 VdcActionType___ActivateStorageDomain=Activate Storage Domain
 VdcActionType___FenceVdsManualy=Fence Host Manually
 VdcActionType___AddEmptyStoragePool=New Data Center
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/frontend/AppErrors.properties
 
b/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/frontend/AppErrors.properties
index 28a13ec..c2f7a9a 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/frontend/AppErrors.properties
+++ 
b/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/frontend/AppErrors.properties
@@ -279,6 +279,7 @@
 VAR__ACTION__START_PROFILE=$action start profiling
 VAR__ACTION__STOP_PROFILE=$action stop profiling
 VAR__ACTION__ASSIGN=$action assign
+VAR__ACTION__REFRESH=$action refresh
 VAR__HOST_STATUS__UP=$hostStatus Up
 VAR__HOST_STATUS__UP_MAINTENANCE_OR_NON_OPERATIONAL=$hostStatus Up, 
Maintenance or Non operational
 


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

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

Reply via email to