Tomas Jelinek has uploaded a new change for review.

Change subject: webadmin: migration progress
......................................................................

webadmin: migration progress

Adds a new column to the VM main tab which is named "Migration" and
visualzes the progress using the ProgressBarColumn.

Made a special OneColorPercentColumn which is always green (because in contrast
to e.g. memory usage it is not true that the bigger the percentage is, the more
red the color should be).

Change-Id: I31cb4fefe897536b633cce1583881e1e3511c0e8
Bug-Url: https://bugzilla.redhat.com/1083049
Signed-off-by: Tomas Jelinek <[email protected]>
---
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationConstants.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/MainTabVirtualMachineView.java
A 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/table/column/OneColorPercentColumn.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/table/column/ProgressBarColumn.java
4 files changed, 30 insertions(+), 1 deletion(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/27/26827/1

diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationConstants.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationConstants.java
index 87a3e6f..01d348a 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationConstants.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationConstants.java
@@ -1584,6 +1584,9 @@
     @DefaultStringValue("Network")
     String networkVm();
 
+    @DefaultStringValue("Migration")
+    String migrationProgress();
+
     @DefaultStringValue("Display")
     String displayVm();
 
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/MainTabVirtualMachineView.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/MainTabVirtualMachineView.java
index a31c7c4..88c7b46 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/MainTabVirtualMachineView.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/MainTabVirtualMachineView.java
@@ -24,6 +24,7 @@
 import 
org.ovirt.engine.ui.webadmin.widget.action.WebAdminImageButtonDefinition;
 import 
org.ovirt.engine.ui.webadmin.widget.action.WebAdminMenuBarButtonDefinition;
 import org.ovirt.engine.ui.webadmin.widget.table.column.CommentColumn;
+import org.ovirt.engine.ui.webadmin.widget.table.column.OneColorPercentColumn;
 import org.ovirt.engine.ui.webadmin.widget.table.column.PercentColumn;
 import org.ovirt.engine.ui.webadmin.widget.table.column.ReasonColumn;
 import org.ovirt.engine.ui.webadmin.widget.table.column.UptimeColumn;
@@ -140,6 +141,14 @@
         };
         getTable().addColumn(networkColumn, constants.networkVm(), "60px"); 
//$NON-NLS-1$
 
+        PercentColumn<VM> migrationProgressColumn = new 
OneColorPercentColumn<VM>() {
+            @Override
+            public Integer getProgressValue(VM object) {
+                return object.getMigrationProgressPercent();
+            }
+        };
+        getTable().addColumn(migrationProgressColumn, 
constants.migrationProgress(), "60px"); //$NON-NLS-1$
+
         TextColumnWithTooltip<VM> displayColumn = new EnumColumn<VM, 
DisplayType>() {
             @Override
             protected DisplayType getRawValue(VM object) {
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/table/column/OneColorPercentColumn.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/table/column/OneColorPercentColumn.java
new file mode 100644
index 0000000..9ca066a
--- /dev/null
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/table/column/OneColorPercentColumn.java
@@ -0,0 +1,10 @@
+package org.ovirt.engine.ui.webadmin.widget.table.column;
+
+public abstract class OneColorPercentColumn<T> extends PercentColumn<T> {
+
+    @Override
+    protected String getColorByProgress(int progress) {
+        // always return green
+        return "#669966"; //$NON-NLS-1$
+    }
+}
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/table/column/ProgressBarColumn.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/table/column/ProgressBarColumn.java
index bff0abd..8fb3144 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/table/column/ProgressBarColumn.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/table/column/ProgressBarColumn.java
@@ -21,12 +21,19 @@
         String text = getProgressText(object);
 
         // Choose color by progress
-        String color = progress < 70 ? "#669966" : progress < 95 ? "#FF9900" : 
"#FF0000"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+        String color = getColorByProgress(progress);
 
         return 
ClientGinjectorProvider.getApplicationTemplates().progressBar(progress, text, 
color);
     }
 
     /**
+     * Default color scheme for the progress bar - override if other colors 
are needed
+     */
+    protected String getColorByProgress(int progress) {
+        return progress < 70 ? "#669966" : progress < 95 ? "#FF9900" : 
"#FF0000"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+    }
+
+    /**
      * Returns the progress value in percent ({@code null} values will be 
interpreted as zeroes).
      */
     protected abstract Integer getProgressValue(T object);


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

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

Reply via email to