Hello Arik Hadas,
I'd like you to do a code review. Please visit
http://gerrit.ovirt.org/23614
to review the following change.
Change subject: frontend: Add version column to templates main tab
......................................................................
frontend: Add version column to templates main tab
Change-Id: Iae04ceb5e75ba541f49bbae87e499ee91aacf718
Signed-off-by: Arik Hadas <[email protected]>
---
M
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/templates/TemplateListModel.java
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/MainTabTemplateView.java
3 files changed, 54 insertions(+), 0 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/14/23614/1
diff --git
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/templates/TemplateListModel.java
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/templates/TemplateListModel.java
index 749fae5..4c629c7 100644
---
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/templates/TemplateListModel.java
+++
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/templates/TemplateListModel.java
@@ -3,6 +3,7 @@
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
+
import org.ovirt.engine.core.common.VdcActionUtils;
import org.ovirt.engine.core.common.action.MoveOrCopyParameters;
import org.ovirt.engine.core.common.action.UpdateVmTemplateParameters;
@@ -276,6 +277,41 @@
super.syncSearch(VdcQueryType.Search, tempVar);
}
+ @Override
+ public void setItems(Iterable value) {
+ genVersionToBaseTemplate(value);
+ super.setItems(value);
+ }
+
+ private Map<Guid, String> templateIdToBaseTemplateName;
+
+ private void genVersionToBaseTemplate(Iterable<VmTemplate> items) {
+ if (items == null) {
+ templateIdToBaseTemplateName = null;
+ return;
+ }
+
+ Map<Guid, VmTemplate> templateIdToTemplate = new HashMap<Guid,
VmTemplate>();
+ for (VmTemplate template : items) {
+ templateIdToTemplate.put(template.getId(), template);
+ }
+
+ templateIdToBaseTemplateName = new HashMap<Guid, String>();
+ for (VmTemplate template : items) {
+ VmTemplate baseTemplate =
templateIdToTemplate.get(template.getBaseTemplateId());
+ templateIdToBaseTemplateName.put(template.getId(),
+ baseTemplate != null ? baseTemplate.getName() : "");
//$NON-NLS-1$
+ }
+ }
+
+ public String resolveBaseTemplateNameForTemplate(Guid templateId) {
+ if (templateIdToBaseTemplateName == null) {
+ return ""; //$NON-NLS-1$
+ }
+
+ return templateIdToBaseTemplateName.get(templateId);
+ }
+
private void edit()
{
VmTemplate template = (VmTemplate) getSelectedItem();
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 9741571..ee92881 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
@@ -1688,6 +1688,9 @@
@DefaultStringValue("Description")
String descriptionTemplate();
+ @DefaultStringValue("Version")
+ String versionTemplate();
+
@DefaultStringValue("Edit")
String editTemplate();
diff --git
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/MainTabTemplateView.java
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/MainTabTemplateView.java
index 574b482..74f8371 100644
---
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/MainTabTemplateView.java
+++
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/MainTabTemplateView.java
@@ -4,6 +4,7 @@
import org.ovirt.engine.core.common.businessentities.VmTemplate;
import org.ovirt.engine.core.common.businessentities.VmTemplateStatus;
+import org.ovirt.engine.core.compat.StringFormat;
import org.ovirt.engine.ui.common.idhandler.ElementIdHandler;
import org.ovirt.engine.ui.common.uicommon.model.MainModelProvider;
import org.ovirt.engine.ui.common.widget.table.column.EnumColumn;
@@ -45,6 +46,20 @@
};
getTable().addColumn(nameColumn, constants.namePool(), "150px");
//$NON-NLS-1$
+ TextColumnWithTooltip<VmTemplate> versionNameColumn = new
TextColumnWithTooltip<VmTemplate>() {
+ @Override
+ public String getValue(VmTemplate object) {
+ if (object.getId().equals(object.getBaseTemplateId())) {
+ return ""; //$NON-NLS-1$
+ }
+
+ return StringFormat.format("%s (%s)", //$NON-NLS-1$
+
getMainModel().resolveBaseTemplateNameForTemplate(object.getId()),
+ object.getTemplateVersionName() != null ?
object.getTemplateVersionName() : " "); //$NON-NLS-1$
+ }
+ };
+ getTable().addColumn(versionNameColumn, constants.versionTemplate(),
"150px"); //$NON-NLS-1$
+
CommentColumn<VmTemplate> commentColumn = new
CommentColumn<VmTemplate>();
getTable().addColumnWithHtmlHeader(commentColumn,
commentColumn.getHeaderHtml(), "30px"); //$NON-NLS-1$
--
To view, visit http://gerrit.ovirt.org/23614
To unsubscribe, visit http://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: Iae04ceb5e75ba541f49bbae87e499ee91aacf718
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: ovirt-engine-3.4
Gerrit-Owner: Omer Frenkel <[email protected]>
Gerrit-Reviewer: Arik Hadas <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches