Amit Aviram has uploaded a new change for review.

Change subject: engine: Addition to ReplacementUtils
......................................................................

engine: Addition to ReplacementUtils

This patch adds enhancement to ReplacementUtils which enables to select a
separator for the list of items to show, and to provide the maximum number
of items to show in replaceWith function.

Change-Id: I77f64b31b69574aff68a0706dd7d6afa3037511a
Signed-off-by: Amit Aviram <[email protected]>
---
M 
backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/ReplacementUtils.java
M 
backend/manager/modules/utils/src/test/java/org/ovirt/engine/core/utils/ReplacementUtilsTest.java
2 files changed, 19 insertions(+), 8 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/15/35915/1

diff --git 
a/backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/ReplacementUtils.java
 
b/backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/ReplacementUtils.java
index cebc09d..be30475 100644
--- 
a/backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/ReplacementUtils.java
+++ 
b/backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/ReplacementUtils.java
@@ -10,7 +10,8 @@
 
 public class ReplacementUtils {
 
-    protected static final int MAX_NUMBER_OF_PRINTED_ITEMS = 5;
+    protected static final int DEFAULT_MAX_NUMBER_OF_PRINTED_ITEMS = 5;
+    protected static final String DEFAULT_SEPARATOR = ",\n";
 
     /**
      * Replace a property defined within a message with a bounded number of 
elements.<br>
@@ -29,25 +30,35 @@
      *         <li>The property counter name and the items size.</li>
      *         </ul>
      */
-    public static Collection<String> replaceWith(String propertyName, 
List<Object> items) {
-        int size = Math.min(MAX_NUMBER_OF_PRINTED_ITEMS, items.size());
+    public static Collection<String> replaceWith(String propertyName, List<?> 
items, String separator, int maxNumberOfPrintedItems) {
+        int size = Math.min(maxNumberOfPrintedItems, items.size());
         List<String> printedItems = new ArrayList<String>(size);
 
         for (int i = 0; i < size; i++) {
             printedItems.add(String.format("\t%s", 
String.valueOf(items.get(i))));
         }
 
-        if (items.size() > MAX_NUMBER_OF_PRINTED_ITEMS) {
+        if (items.size() > maxNumberOfPrintedItems) {
             printedItems.add("\t...");
         }
 
         ArrayList<String> replacements = new ArrayList<String>();
-        replacements.add(MessageFormat.format("${0} {1}", propertyName, 
StringUtils.join(printedItems, ",\n")));
+        replacements.add(MessageFormat.format("${0} {1}", propertyName, 
StringUtils.join(printedItems, separator)));
         replacements.add(MessageFormat.format("${0}_COUNTER {1}", 
propertyName, items.size()));
 
         return replacements;
     }
 
+    public static Collection<String> replaceWith(String propertyName, List<?> 
items, String separator) {
+        return replaceWith(propertyName, items, separator, 
DEFAULT_MAX_NUMBER_OF_PRINTED_ITEMS);
+    }
+
+    public static Collection<String> replaceWith(String propertyName, List<?> 
items) {
+        return replaceWith(propertyName, items, DEFAULT_SEPARATOR, 
DEFAULT_MAX_NUMBER_OF_PRINTED_ITEMS);
+    }
+
+
+
     /**
      * Replace a property defined within a message with a bounded number of 
elements of {@link Nameable}.<br>
      * In addition, if a counter appears in the message, it will be replaced 
with the elements size:<br>
diff --git 
a/backend/manager/modules/utils/src/test/java/org/ovirt/engine/core/utils/ReplacementUtilsTest.java
 
b/backend/manager/modules/utils/src/test/java/org/ovirt/engine/core/utils/ReplacementUtilsTest.java
index 1b3ae67..2ad87b8 100644
--- 
a/backend/manager/modules/utils/src/test/java/org/ovirt/engine/core/utils/ReplacementUtilsTest.java
+++ 
b/backend/manager/modules/utils/src/test/java/org/ovirt/engine/core/utils/ReplacementUtilsTest.java
@@ -90,16 +90,16 @@
         Iterator<String> iterator = replacements.iterator();
         while (iterator.hasNext()) {
             String replacement = iterator.next();
-            for (int i = ReplacementUtils.MAX_NUMBER_OF_PRINTED_ITEMS; i < 
items.size(); i++) {
+            for (int i = ReplacementUtils.DEFAULT_MAX_NUMBER_OF_PRINTED_ITEMS; 
i < items.size(); i++) {
                 assertFalse(replacement.contains(buildPropertyValue(i)));
             }
         }
     }
 
     private List<Object> createItems() {
-        List<Object> items = new 
ArrayList<Object>(ReplacementUtils.MAX_NUMBER_OF_PRINTED_ITEMS * 2);
+        List<Object> items = new 
ArrayList<Object>(ReplacementUtils.DEFAULT_MAX_NUMBER_OF_PRINTED_ITEMS* 2);
 
-        for (int i = 0; i < ReplacementUtils.MAX_NUMBER_OF_PRINTED_ITEMS * 2; 
i++) {
+        for (int i = 0; i < 
ReplacementUtils.DEFAULT_MAX_NUMBER_OF_PRINTED_ITEMS * 2; i++) {
             items.add(buildPropertyValue(i));
         }
 


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

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

Reply via email to