anmolbabu has uploaded a new change for review.

Change subject: webadming,engine : Refactored SizeUnit as per IEC binary 
prefixes
......................................................................

webadming,engine : Refactored SizeUnit as per IEC binary prefixes

This patch does the following:
[1] Adds a AlternateMessage to dynamically form size string(size+unit)
   which in most places previously usde to do a normal string concat
   using + operator.
[2] Added string equivalent's to SizeUnit enum members and overrided
   toString of SizeUnit to return this string. The reason is this
   toString can be later used to localize the string equivalents of
   SizeUnit units.
[3] Removed some unused messges which turned unused after [1] above.
[4] Modified some places to use SizeConverter#autoConvert to avoid
    replication of autoConvert logic.

Beyond the scope of this patch(Might need a follow-up patch) :
Refactor SizeUnit units in accordance with the IEC binary prefixes.
this might be a huge refactoring patch as the number of classes using
SizeUnit is considerably huge in number.So, I would like that to be a
part of subsequent patch.

Change-Id: Ieacb29c0df8d5355a754a3db15f976a986d771fd
Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=1214137
Signed-off-by: Anmol Babu <anb...@redhat.com>
---
M 
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/utils/SizeConverter.java
M 
frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/UIMessages.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationMessages.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/gluster/CreateBrickPopupView.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/renderer/RebalanceFileSizeRenderer.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/renderer/VolumeCapacityRenderer.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/table/column/GlusterCapacityCell.java
7 files changed, 42 insertions(+), 33 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/10/40810/1

diff --git 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/utils/SizeConverter.java
 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/utils/SizeConverter.java
index a973578..7f66925 100644
--- 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/utils/SizeConverter.java
+++ 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/utils/SizeConverter.java
@@ -19,18 +19,20 @@
     }
 
     public static enum SizeUnit {
-        BYTES(1),
-        KB(2),
-        MB(3),
-        GB(4),
-        TB(5);
+        BYTES(1, "B"),
+        KB(2, "KiB"),
+        MB(3, "MiB"),
+        GB(4, "GiB"),
+        TB(5, "TiB");
 
         private long unitWeight;
+        private String unitInString;
 
         private static List<Pair<Long, SizeUnit>> weightToUnit = new 
ArrayList<Pair<Long, SizeUnit>>();
 
-        private SizeUnit(long unitWeight) {
+        private SizeUnit(long unitWeight, String unitString) {
             this.unitWeight = unitWeight;
+            this.unitInString = unitString;
         }
 
         static {
@@ -61,6 +63,11 @@
         public static SizeUnit getMinHandledUnit() {
             return weightToUnit.get(weightToUnit.size() - 1).getSecond();
         }
+
+        @Override
+        public String toString() {
+            return unitInString;
+        }
     };
 
     public static Number convert(long size, SizeUnit fromUnit, SizeUnit 
toUnit) {
diff --git 
a/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/UIMessages.java
 
b/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/UIMessages.java
index 6bfe921..be92f35 100644
--- 
a/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/UIMessages.java
+++ 
b/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/UIMessages.java
@@ -4,6 +4,7 @@
 
 import 
org.ovirt.engine.core.common.businessentities.gluster.GlusterGeoRepNonEligibilityReason;
 import 
org.ovirt.engine.core.common.businessentities.gluster.GlusterVolumeSnapshotScheduleRecurrence;
+import org.ovirt.engine.core.common.utils.SizeConverter.SizeUnit;
 
 public interface UIMessages extends com.google.gwt.i18n.client.Messages {
 
@@ -472,6 +473,16 @@
     })
     String recurrenceType(@Select GlusterVolumeSnapshotScheduleRecurrence 
recurrence);
 
+    @DefaultMessage("{0} TiB")
+    @AlternateMessage({
+        "BYTES", "{0} B",
+        "KB", "{0} KiB",
+        "MB", "{0} MiB",
+        "GB", "{0} GiB",
+        "TB", "{0} TiB"
+    })
+    String sizeUnitString(String size, @Select SizeUnit sizeUnit);
+
     @DefaultMessage("Session DB Id:{0}, User:{1}")
     String userSessionRow(long sessionId, String UserName);
 
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationMessages.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationMessages.java
index a4c52c0..15c37dd 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationMessages.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationMessages.java
@@ -95,18 +95,6 @@
     @DefaultMessage("Rebalance {0}")
     String rebalanceStatusMessage(JobExecutionStatus jobStatus);
 
-    @DefaultMessage("{0} Bytes")
-    String rebalanceFileSizeBytes(String size);
-
-    @DefaultMessage("{0} KB")
-    String rebalanceFileSizeKb(String size);
-
-    @DefaultMessage("{0} MB")
-    String rebalanceFileSizeMb(String size);
-
-    @DefaultMessage("{0} GB")
-    String rebalanceFileSizeGb(String size);
-
     @DefaultMessage("{0}. Moving the display network will drop VM console 
connectivity until they are restarted.")
     String moveDisplayNetworkWarning(String networkOperationMessage);
 
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/gluster/CreateBrickPopupView.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/gluster/CreateBrickPopupView.java
index 8e5641e..0b16d38 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/gluster/CreateBrickPopupView.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/gluster/CreateBrickPopupView.java
@@ -18,6 +18,8 @@
 import org.ovirt.engine.ui.common.widget.table.column.AbstractTextColumn;
 import org.ovirt.engine.ui.uicommonweb.models.ListModel;
 import org.ovirt.engine.ui.uicommonweb.models.gluster.CreateBrickModel;
+import org.ovirt.engine.ui.uicompat.ConstantsManager;
+import org.ovirt.engine.ui.uicompat.UIMessages;
 import org.ovirt.engine.ui.webadmin.ApplicationConstants;
 import org.ovirt.engine.ui.webadmin.gin.AssetProvider;
 import 
org.ovirt.engine.ui.webadmin.section.main.presenter.popup.gluster.CreateBrickPopupPresenterWidget;
@@ -100,6 +102,7 @@
     Label messageLabel;
 
     private final static ApplicationConstants constants = 
AssetProvider.getConstants();
+    private static final UIMessages messages = 
ConstantsManager.getInstance().getMessages();
 
     private final Driver driver = GWT.create(Driver.class);
 
@@ -139,7 +142,7 @@
             @Override
             public String getValue(StorageDevice entity) {
                 Pair<SizeUnit, Double> convertedSize = 
SizeConverter.autoConvert(entity.getSize(), SizeUnit.MB);
-                return formatSize(convertedSize.getSecond()) + " " + 
convertedSize.getFirst().toString(); //$NON-NLS-1$
+                return 
messages.sizeUnitString(formatSize(convertedSize.getSecond()), 
convertedSize.getFirst()); //$NON-NLS-1$
             }
         }, constants.size(), "100px"); //$NON-NLS-1$
     }
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/renderer/RebalanceFileSizeRenderer.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/renderer/RebalanceFileSizeRenderer.java
index efa89a2..8c92e3b 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/renderer/RebalanceFileSizeRenderer.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/renderer/RebalanceFileSizeRenderer.java
@@ -1,28 +1,22 @@
 package org.ovirt.engine.ui.webadmin.widget.renderer;
 
+import org.ovirt.engine.core.common.utils.Pair;
 import org.ovirt.engine.core.common.utils.SizeConverter;
 import org.ovirt.engine.core.common.utils.SizeConverter.SizeUnit;
-import org.ovirt.engine.ui.webadmin.ApplicationMessages;
-import org.ovirt.engine.ui.webadmin.gin.AssetProvider;
+import org.ovirt.engine.ui.uicompat.ConstantsManager;
+import org.ovirt.engine.ui.uicompat.UIMessages;
 
 import com.google.gwt.i18n.client.NumberFormat;
 import com.google.gwt.text.shared.AbstractRenderer;
 
 public class RebalanceFileSizeRenderer<T extends Number> extends 
AbstractRenderer<T> {
 
-    private final static ApplicationMessages messages = 
AssetProvider.getMessages();
+    private final static UIMessages messages = 
ConstantsManager.getInstance().getMessages();
 
     @Override
     public String render(T size) {
-        if(size.longValue() > SizeConverter.BYTES_IN_GB) {
-            return 
messages.rebalanceFileSizeGb(formatSize(SizeConverter.convert(size.longValue(), 
SizeUnit.BYTES, SizeUnit.GB).doubleValue()));
-        } else if(size.longValue() > SizeConverter.BYTES_IN_MB) {
-            return 
messages.rebalanceFileSizeMb(formatSize(SizeConverter.convert(size.longValue(), 
SizeUnit.BYTES, SizeUnit.MB).doubleValue()));
-        } else if(size.longValue() > SizeConverter.BYTES_IN_KB) {
-            return 
messages.rebalanceFileSizeKb(formatSize(SizeConverter.convert(size.longValue(), 
SizeUnit.BYTES, SizeUnit.KB).doubleValue()));
-        } else {
-            return 
messages.rebalanceFileSizeBytes(formatSize(size.doubleValue()));
-        }
+        Pair<SizeUnit, Double>  sizePair = 
SizeConverter.autoConvert(size.longValue(), SizeUnit.BYTES);
+        return messages.sizeUnitString(formatSize(sizePair.getSecond()), 
sizePair.getFirst());
     }
 
     public String formatSize(double size) {
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/renderer/VolumeCapacityRenderer.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/renderer/VolumeCapacityRenderer.java
index 18c7550..ac3d0d3 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/renderer/VolumeCapacityRenderer.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/renderer/VolumeCapacityRenderer.java
@@ -4,12 +4,15 @@
 import org.ovirt.engine.core.common.utils.SizeConverter;
 import org.ovirt.engine.core.common.utils.SizeConverter.SizeUnit;
 import org.ovirt.engine.ui.common.CommonApplicationConstants;
+import org.ovirt.engine.ui.uicompat.ConstantsManager;
+import org.ovirt.engine.ui.uicompat.UIMessages;
 
 import com.google.gwt.i18n.client.NumberFormat;
 import com.google.gwt.text.shared.AbstractRenderer;
 
 public class VolumeCapacityRenderer<T extends Number> extends 
AbstractRenderer<T> {
 
+    private static final UIMessages MESSAGES = 
ConstantsManager.getInstance().getMessages();
     private final CommonApplicationConstants constants;
 
     public VolumeCapacityRenderer(CommonApplicationConstants constants) {
@@ -20,7 +23,7 @@
     public String render(T size) {
         if (size != null) {
             Pair<SizeUnit, Double> sizeWithUnits = 
SizeConverter.autoConvert(size.longValue(), SizeUnit.BYTES);
-            return formatSize(sizeWithUnits.getSecond()) + " " + 
sizeWithUnits.getFirst();//$NON-NLS-1$
+            return 
MESSAGES.sizeUnitString(formatSize(sizeWithUnits.getSecond()), 
sizeWithUnits.getFirst());//$NON-NLS-1$
         } else {
             return constants.notAvailableLabel();
         }
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/table/column/GlusterCapacityCell.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/table/column/GlusterCapacityCell.java
index de4b1b3..c917846 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/table/column/GlusterCapacityCell.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/table/column/GlusterCapacityCell.java
@@ -5,6 +5,8 @@
 import org.ovirt.engine.core.common.utils.Pair;
 import org.ovirt.engine.core.common.utils.SizeConverter;
 import org.ovirt.engine.core.common.utils.SizeConverter.SizeUnit;
+import org.ovirt.engine.ui.uicompat.ConstantsManager;
+import org.ovirt.engine.ui.uicompat.UIMessages;
 import org.ovirt.engine.ui.webadmin.ApplicationConstants;
 import org.ovirt.engine.ui.webadmin.ApplicationMessages;
 import org.ovirt.engine.ui.webadmin.ApplicationTemplates;
@@ -19,6 +21,7 @@
 
     protected ApplicationTemplates templates = AssetProvider.getTemplates();
     protected ApplicationMessages messages = AssetProvider.getMessages();
+    private static final UIMessages MESSAGES = 
ConstantsManager.getInstance().getMessages();
     protected ApplicationConstants constants = AssetProvider.getConstants();
 
     private Double freeSize;
@@ -31,7 +34,7 @@
             return constants.notAvailableLabel();
         } else {
             Pair<SizeUnit, Double> sizeWithUnits = 
SizeConverter.autoConvert(size.longValue(), inUnit);
-            return formatSize(sizeWithUnits.getSecond()) + " " + 
sizeWithUnits.getFirst().toString();//$NON-NLS-1$
+            return 
MESSAGES.sizeUnitString(formatSize(sizeWithUnits.getSecond()), 
sizeWithUnits.getFirst());//$NON-NLS-1$
         }
     }
 


-- 
To view, visit https://gerrit.ovirt.org/40810
To unsubscribe, visit https://gerrit.ovirt.org/settings

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

Reply via email to