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
