Alona Kaplan has uploaded a new change for review.

Change subject: engine: Adding the ability to use key as a param of canDoAction 
msg (wip)
......................................................................

engine: Adding the ability to use key as a param of canDoAction msg (wip)

This allows aggregating messages.

For example-
KEY1= "Cannot Run Vm. Reason: ${reason}"
KEY2= "${size} is not enough memory."
addCanDoMessage(KEY1);
addCanDoMessage("$reason" + KEY2)
addCanDoMessage("$size" + "1M")

will be translated to- "Cannot Run Vm. Reason: 1M is not enough memory."

Change-Id: I89338d119144279d84c08b62543e836c3492f07e
Bug-Url: https://bugzilla.redhat.com/878451
Signed-off-by: Alona Kaplan <[email protected]>
---
M 
backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/ErrorTranslatorImpl.java
M 
frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/ErrorTranslator.java
2 files changed, 18 insertions(+), 5 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/37/11337/1

diff --git 
a/backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/ErrorTranslatorImpl.java
 
b/backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/ErrorTranslatorImpl.java
index 402a870..ebfd699 100644
--- 
a/backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/ErrorTranslatorImpl.java
+++ 
b/backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/ErrorTranslatorImpl.java
@@ -7,8 +7,8 @@
 import java.util.Map;
 import java.util.ResourceBundle;
 
-import org.apache.commons.lang.text.StrSubstitutor;
 import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang.text.StrSubstitutor;
 import org.ovirt.engine.core.common.interfaces.ErrorTranslator;
 import org.ovirt.engine.core.utils.log.Log;
 import org.ovirt.engine.core.utils.log.LogFactory;
@@ -17,10 +17,10 @@
 
     private static final long ONE_HOUR = 60 * 60 * 1000L;
 
-    private List<String> messageSources;
-    private Locale standardLocale;
-    private Map<String, String> standardMessages;
-    private ReapedMap<Locale, Map<String, String>> messagesByLocale;
+    private final List<String> messageSources;
+    private final Locale standardLocale;
+    private final Map<String, String> standardMessages;
+    private final ReapedMap<Locale, Map<String, String>> messagesByLocale;
 
     // Will assume these are property files, not ResxFiles.
     public ErrorTranslatorImpl(String... errorFileNames) {
@@ -73,6 +73,7 @@
      *
      * @see 
org.ovirt.engine.core.utils.ErrorTranslator#TranslateErrorText(java.util.List, 
boolean)
      */
+    @Override
     public final List<String> TranslateErrorText(List<String> errorMsg, 
boolean changeIfNotFound) {
         return translate(errorMsg, changeIfNotFound, Locale.getDefault());
     }
@@ -87,6 +88,7 @@
      *
      * @see 
org.ovirt.engine.core.utils.ErrorTranslator#TranslateErrorText(java.util.List)
      */
+    @Override
     public List<String> TranslateErrorText(List<String> errorMsg) {
         return translate(errorMsg, true, Locale.getDefault());
     }
@@ -96,6 +98,7 @@
      *
      * @see 
org.ovirt.engine.core.utils.ErrorTranslator#TranslateErrorText(java.util.List)
      */
+    @Override
     public List<String> TranslateErrorText(List<String> errorMsg, Locale 
locale) {
         return translate(errorMsg, true, locale);
     }
@@ -105,6 +108,7 @@
      *
      * @see 
org.ovirt.engine.core.utils.ErrorTranslator#TranslateMessages(java.util.List, 
boolean)
      */
+    @Override
     public final List<String> TranslateMessages(List<String> errorMsg, boolean 
changeIfNotFound) {
         return doTranslation(errorMsg, changeIfNotFound, Locale.getDefault());
     }
@@ -124,6 +128,7 @@
      *
      * @see 
org.ovirt.engine.core.utils.ErrorTranslator#IsDynamicVariable(java.lang.String )
      */
+    @Override
     public final boolean IsDynamicVariable(String strMessage) {
         return strMessage.startsWith("$");
     }
@@ -133,6 +138,7 @@
      *
      * @see 
org.ovirt.engine.core.utils.ErrorTranslator#TranslateErrorTextSingle(java. 
lang.String, boolean)
      */
+    @Override
     public final String TranslateErrorTextSingle(String errorMsg, boolean 
changeIfNotFound) {
         return translate(errorMsg, changeIfNotFound, Locale.getDefault());
     }
@@ -142,6 +148,7 @@
      *
      * @see 
org.ovirt.engine.core.utils.ErrorTranslator#TranslateErrorTextSingle(java. 
lang.String, boolean)
      */
+    @Override
     public String TranslateErrorTextSingle(String errorMsg, Locale locale) {
         return translate(errorMsg, true, locale);
     }
@@ -171,6 +178,7 @@
      *
      * @see 
org.ovirt.engine.core.utils.ErrorTranslator#TranslateErrorTextSingle(java. 
lang.String)
      */
+    @Override
     public final String TranslateErrorTextSingle(String errorMsg) {
         return TranslateErrorTextSingle(errorMsg, true);
     }
@@ -180,6 +188,7 @@
      *
      * @see 
org.ovirt.engine.core.utils.ErrorTranslator#ResolveMessages(java.util.List)
      */
+    @Override
     public final List<String> ResolveMessages(List<String> translatedMessages) 
{
         java.util.ArrayList<String> translatedErrors = new 
java.util.ArrayList<String>();
         java.util.HashMap<String, String> variables = new 
java.util.HashMap<String, String>();
@@ -205,6 +214,8 @@
         if (firstSpace != -1 && firstSpace < variable.length()) {
             String key = variable.substring(1, firstSpace);
             String value = variable.substring(firstSpace + 1);
+            value = TranslateErrorTextSingle(value, true);
+            value = resolveMessage(value, variables);
             if (!variables.containsKey(key)) {
                 variables.put(key, value);
             }
diff --git 
a/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/ErrorTranslator.java
 
b/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/ErrorTranslator.java
index c19b947..a65f142 100644
--- 
a/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/ErrorTranslator.java
+++ 
b/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/ErrorTranslator.java
@@ -152,6 +152,8 @@
         if (firstSpace != -1 && firstSpace < variable.length()) {
             String key = variable.substring(1, firstSpace);
             String value = variable.substring(firstSpace + 1);
+            value = translateErrorTextSingle(value, true);
+            value = resolveMessage(value, variables);
             if (variables.get(key) == null) {
                 variables.put(key, new LinkedList<String>());
             }


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

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

Reply via email to