Martin Betak has uploaded a new change for review.

Change subject: frontend: refactoring: Introduce NameRenderer utility
......................................................................

frontend: refactoring: Introduce NameRenderer utility

Replaced multiple occurences of anonymous inheritors of Renderer that rendered
simple getName() with generic NameRenderer<E extends Nameable>

Change-Id: I1c87be39de7663bf135bcc538b3b5a3106bb5c3a
Signed-off-by: Martin Betak <mbe...@redhat.com>
---
M 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/view/popup/permissions/AbstractPermissionsPopupView.java
A 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/renderer/NameRenderer.java
M 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/AbstractVmPopupWidget.java
M 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/quota/ChangeQuotaItemView.java
M 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/vm/VmDiskPopupWidget.java
M 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/vm/VmMakeTemplatePopupWidget.java
M 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/vm/VmRunOncePopupWidget.java
M 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/storage/DisksAllocationItemView.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/MoveHost.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/AbstractNetworkPopupView.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/ImportVmsPopupView.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/cluster/ClusterPopupView.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/datacenter/DataCenterPopupView.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/gluster/GlusterClusterSnapshotConfigureOptionsPopupView.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/gluster/VolumePopupView.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/gluster/VolumeProfileStatisticsPopupView.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/guide/MoveHostPopupView.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/HostBondPopupView.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/HostInterfacePopupView.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/HostPopupView.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/networkQoS/NetworkQoSPopupView.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/profile/CpuProfilePopupView.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/profile/DiskProfilePopupView.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/profile/VnicProfilePopupView.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/provider/ImportNetworksPopupView.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/qos/QosPopupView.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/quota/QuotaPopupView.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/scheduling/ClusterPolicyPopupView.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/storage/ImportExportImagePopupView.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/storage/StoragePopupView.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/storage/StorageRemovePopupView.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/storage/backup/ImportVmFromExportDomainPopupView.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/vm/VmMigratePopupView.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/provider/HostNetworkProviderWidget.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/vnicProfile/VnicProfileWidget.java
35 files changed, 161 insertions(+), 443 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/50/38550/1

diff --git 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/view/popup/permissions/AbstractPermissionsPopupView.java
 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/view/popup/permissions/AbstractPermissionsPopupView.java
index 7567d24..0279a5e 100644
--- 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/view/popup/permissions/AbstractPermissionsPopupView.java
+++ 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/view/popup/permissions/AbstractPermissionsPopupView.java
@@ -17,6 +17,7 @@
 import org.ovirt.engine.ui.common.widget.editor.EntityModelCellTable;
 import org.ovirt.engine.ui.common.widget.editor.ListModelListBoxEditor;
 import org.ovirt.engine.ui.common.widget.editor.TextBoxChanger;
+import org.ovirt.engine.ui.common.widget.renderer.NameRenderer;
 import org.ovirt.engine.ui.common.widget.renderer.NullSafeRenderer;
 import 
org.ovirt.engine.ui.common.widget.table.column.AbstractEntityModelTextColumn;
 import org.ovirt.engine.ui.uicommonweb.models.EntityModel;
@@ -134,12 +135,7 @@
             }
         });
 
-        roleSelection = new ListModelListBoxEditor<Role>(new 
NullSafeRenderer<Role>() {
-            @Override
-            public String renderNullSafe(Role object) {
-                return object.getName();
-            }
-        });
+        roleSelection = new ListModelListBoxEditor<>(new NameRenderer<Role>());
 
         namespaceSelection = new ListModelListBoxEditor<String>(new 
NullSafeRenderer<String>() {
             @Override
diff --git 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/renderer/NameRenderer.java
 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/renderer/NameRenderer.java
new file mode 100644
index 0000000..b8bd7c6
--- /dev/null
+++ 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/renderer/NameRenderer.java
@@ -0,0 +1,10 @@
+package org.ovirt.engine.ui.common.widget.renderer;
+
+import org.ovirt.engine.core.common.businessentities.Nameable;
+
+public class NameRenderer<E extends Nameable> extends NullSafeRenderer<E> {
+    @Override
+    protected String renderNullSafe(E object) {
+        return object.getName();
+    }
+}
diff --git 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/AbstractVmPopupWidget.java
 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/AbstractVmPopupWidget.java
index 2732ef2..00f5adf 100644
--- 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/AbstractVmPopupWidget.java
+++ 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/AbstractVmPopupWidget.java
@@ -97,6 +97,7 @@
 import org.ovirt.engine.ui.common.widget.renderer.BooleanRendererWithNullText;
 import org.ovirt.engine.ui.common.widget.renderer.EnumRenderer;
 import org.ovirt.engine.ui.common.widget.renderer.MemorySizeRenderer;
+import org.ovirt.engine.ui.common.widget.renderer.NameRenderer;
 import org.ovirt.engine.ui.common.widget.renderer.NullSafeRenderer;
 import 
org.ovirt.engine.ui.common.widget.table.column.AbstractTextColumnWithTooltip;
 import 
org.ovirt.engine.ui.common.widget.uicommon.instanceimages.InstanceImagesEditor;
@@ -1317,12 +1318,7 @@
         specificHost = new RadioButton("runVmOnHostGroup"); //$NON-NLS-1$
         isAutoAssignEditor =
                 new EntityModelRadioButtonEditor("runVmOnHostGroup", new 
ModeSwitchingVisibilityRenderer()); //$NON-NLS-1$
-        defaultHostEditor = new ListModelListBoxEditor<VDS>(new 
NullSafeRenderer<VDS>() {
-            @Override
-            public String renderNullSafe(VDS object) {
-                return object.getName();
-            }
-        }, new ModeSwitchingVisibilityRenderer());
+        defaultHostEditor = new ListModelListBoxEditor<>(new 
NameRenderer<VDS>(), new ModeSwitchingVisibilityRenderer());
 
         migrationModeEditor =
                 new ListModelListBoxEditor<MigrationSupport>(new 
EnumRenderer<MigrationSupport>(), new ModeSwitchingVisibilityRenderer());
@@ -1366,12 +1362,7 @@
             }
         }, new ModeSwitchingVisibilityRenderer());
 
-        cpuProfilesEditor = new ListModelListBoxEditor<CpuProfile>(new 
NullSafeRenderer<CpuProfile>() {
-            @Override
-            protected String renderNullSafe(CpuProfile object) {
-                return object.getName();
-            }
-        });
+        cpuProfilesEditor = new ListModelListBoxEditor<>(new 
NameRenderer<CpuProfile>());
 
         cpuSharesAmountSelectionEditor =
                 new 
ListModelListBoxOnlyEditor<UnitVmModel.CpuSharesAmount>(new 
EnumRenderer<UnitVmModel.CpuSharesAmount>(), new 
ModeSwitchingVisibilityRenderer());
diff --git 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/quota/ChangeQuotaItemView.java
 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/quota/ChangeQuotaItemView.java
index f48e322..a36da95 100644
--- 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/quota/ChangeQuotaItemView.java
+++ 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/quota/ChangeQuotaItemView.java
@@ -7,7 +7,7 @@
 import org.ovirt.engine.ui.common.widget.HasEditorDriver;
 import org.ovirt.engine.ui.common.widget.editor.ListModelListBoxEditor;
 import 
org.ovirt.engine.ui.common.widget.editor.generic.StringEntityModelLabelEditor;
-import org.ovirt.engine.ui.common.widget.renderer.NullSafeRenderer;
+import org.ovirt.engine.ui.common.widget.renderer.NameRenderer;
 import org.ovirt.engine.ui.uicommonweb.models.quota.ChangeQuotaItemModel;
 
 import com.google.gwt.core.client.GWT;
@@ -68,12 +68,7 @@
     }
 
     void initEditors() {
-        quotaListEditor = new ListModelListBoxEditor<Quota>(new 
NullSafeRenderer<Quota>() {
-            @Override
-            public String renderNullSafe(Quota quota) {
-                return quota.getQuotaName();
-            }
-        });
+        quotaListEditor = new ListModelListBoxEditor<>(new 
NameRenderer<Quota>());
     }
 
     void updateStyles() {
diff --git 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/vm/VmDiskPopupWidget.java
 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/vm/VmDiskPopupWidget.java
index 5f66cb8..de10dfd 100644
--- 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/vm/VmDiskPopupWidget.java
+++ 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/vm/VmDiskPopupWidget.java
@@ -4,7 +4,6 @@
 import com.google.gwt.editor.client.SimpleBeanEditorDriver;
 import com.google.gwt.event.dom.client.ClickEvent;
 import com.google.gwt.event.dom.client.ClickHandler;
-import com.google.gwt.text.shared.AbstractRenderer;
 import com.google.gwt.uibinder.client.UiBinder;
 import com.google.gwt.uibinder.client.UiField;
 import com.google.gwt.user.client.ui.FlowPanel;
@@ -34,7 +33,7 @@
 import 
org.ovirt.engine.ui.common.widget.editor.generic.IntegerEntityModelTextBoxEditor;
 import 
org.ovirt.engine.ui.common.widget.editor.generic.StringEntityModelTextBoxEditor;
 import org.ovirt.engine.ui.common.widget.renderer.EnumRenderer;
-import org.ovirt.engine.ui.common.widget.renderer.NullSafeRenderer;
+import org.ovirt.engine.ui.common.widget.renderer.NameRenderer;
 import 
org.ovirt.engine.ui.common.widget.renderer.StorageDomainFreeSpaceRenderer;
 import 
org.ovirt.engine.ui.common.widget.uicommon.popup.AbstractModelBoundPopupWidget;
 import org.ovirt.engine.ui.common.widget.uicommon.storage.AbstractStorageView;
@@ -238,40 +237,20 @@
     private void initManualWidgets(CommonApplicationConstants constants,
                                    CommonApplicationResources resources,
                                    CommonApplicationTemplates templates) {
-        storageDomainEditor = new ListModelListBoxEditor<StorageDomain>(new 
StorageDomainFreeSpaceRenderer());
+        storageDomainEditor = new ListModelListBoxEditor<>(new 
StorageDomainFreeSpaceRenderer());
 
-        hostListEditor = new ListModelListBoxEditor<VDS>(new 
AbstractRenderer<VDS>() {
-            @Override
-            public String render(VDS vds) {
-                return vds == null ? "" : vds.getName(); //$NON-NLS-1$
-            }
-        });
+        hostListEditor = new ListModelListBoxEditor<>(new NameRenderer<VDS>());
 
-        diskProfileEditor = new ListModelListBoxEditor<DiskProfile>(new 
NullSafeRenderer<DiskProfile>() {
-            @Override
-            protected String renderNullSafe(DiskProfile object) {
-                return object.getName();
-            }
-        });
+        diskProfileEditor = new ListModelListBoxEditor<>(new 
NameRenderer<DiskProfile>());
 
-        quotaEditor = new ListModelListBoxEditor<Quota>(new 
NullSafeRenderer<Quota>() {
-            @Override
-            public String renderNullSafe(Quota quota) {
-                return quota.getQuotaName();
-            }
-        });
+        quotaEditor = new ListModelListBoxEditor<>(new NameRenderer<Quota>());
 
-        interfaceEditor = new ListModelListBoxEditor<DiskInterface>(new 
EnumRenderer());
+        interfaceEditor = new ListModelListBoxEditor<>(new EnumRenderer());
 
-        datacenterEditor = new ListModelListBoxEditor<StoragePool>(new 
NullSafeRenderer<StoragePool>() {
-            @Override
-            public String renderNullSafe(StoragePool storagePool) {
-                return storagePool.getName();
-            }
-        });
+        datacenterEditor = new ListModelListBoxEditor<>(new 
NameRenderer<StoragePool>());
 
-        volumeTypeEditor = new ListModelListBoxEditor<VolumeType>(new 
EnumRenderer());
-        storageTypeEditor = new ListModelListBoxEditor<StorageType>(new 
EnumRenderer());
+        volumeTypeEditor = new ListModelListBoxEditor<>(new EnumRenderer());
+        storageTypeEditor = new ListModelListBoxEditor<>(new EnumRenderer());
         plugDiskToVmEditor = new EntityModelCheckBoxEditor(Align.RIGHT);
 
         wipeAfterDeleteEditor = new EntityModelCheckBoxEditor(Align.RIGHT);
@@ -371,7 +350,7 @@
             fcpStorageModel.setIgnoreGrayedOut(true);
 
             // Set 'StorageModel' items
-            ArrayList<IStorageModel> items = new ArrayList<IStorageModel>();
+            ArrayList<IStorageModel> items = new ArrayList<>();
             items.add(iscsiStorageModel);
             items.add(fcpStorageModel);
             storageModel.setItems(items);
diff --git 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/vm/VmMakeTemplatePopupWidget.java
 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/vm/VmMakeTemplatePopupWidget.java
index 69d8b11..5dbba11 100644
--- 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/vm/VmMakeTemplatePopupWidget.java
+++ 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/vm/VmMakeTemplatePopupWidget.java
@@ -13,7 +13,7 @@
 import 
org.ovirt.engine.ui.common.widget.editor.ListModelTypeAheadListBoxEditor;
 import 
org.ovirt.engine.ui.common.widget.editor.generic.EntityModelCheckBoxEditor;
 import 
org.ovirt.engine.ui.common.widget.editor.generic.StringEntityModelTextBoxEditor;
-import org.ovirt.engine.ui.common.widget.renderer.NullSafeRenderer;
+import org.ovirt.engine.ui.common.widget.renderer.NameRenderer;
 import 
org.ovirt.engine.ui.common.widget.uicommon.popup.AbstractModelBoundPopupWidget;
 import org.ovirt.engine.ui.common.widget.uicommon.storage.DisksAllocationView;
 import org.ovirt.engine.ui.uicommonweb.models.vms.DataCenterWithCluster;
@@ -148,7 +148,7 @@
     }
 
     void initListBoxEditors() {
-        clusterEditor = new 
ListModelTypeAheadListBoxEditor<DataCenterWithCluster>(
+        clusterEditor = new ListModelTypeAheadListBoxEditor<>(
                 new 
ListModelTypeAheadListBoxEditor.NullSafeSuggestBoxRenderer<DataCenterWithCluster>()
 {
 
                     @Override
@@ -172,14 +172,9 @@
 
                 });
 
-        quotaEditor = new ListModelListBoxEditor<Quota>(new 
NullSafeRenderer<Quota>() {
-            @Override
-            public String renderNullSafe(Quota object) {
-                return object.getQuotaName();
-            }
-        });
+        quotaEditor = new ListModelListBoxEditor<>(new NameRenderer<Quota>());
 
-        baseTemplateEditor = new ListModelTypeAheadListBoxEditor<VmTemplate>(
+        baseTemplateEditor = new ListModelTypeAheadListBoxEditor<>(
                 new 
ListModelTypeAheadListBoxEditor.NullSafeSuggestBoxRenderer<VmTemplate>() {
 
                     @Override
@@ -196,12 +191,7 @@
                     }
                 });
 
-        cpuProfilesEditor = new ListModelListBoxEditor<CpuProfile>(new 
NullSafeRenderer<CpuProfile>() {
-            @Override
-            protected String renderNullSafe(CpuProfile object) {
-                return object.getName();
-            }
-        });
+        cpuProfilesEditor = new ListModelListBoxEditor<>(new 
NameRenderer<CpuProfile>());
     }
 
     private String typeAheadNameDescriptionTemplateNullSafe(String name, 
String description) {
diff --git 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/vm/VmRunOncePopupWidget.java
 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/vm/VmRunOncePopupWidget.java
index 7037d01..73c316e 100644
--- 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/vm/VmRunOncePopupWidget.java
+++ 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/vm/VmRunOncePopupWidget.java
@@ -15,7 +15,7 @@
 import org.ovirt.engine.ui.common.widget.editor.VncKeyMapRenderer;
 import 
org.ovirt.engine.ui.common.widget.editor.generic.StringEntityModelTextBoxEditor;
 import org.ovirt.engine.ui.common.widget.form.key_value.KeyValueWidget;
-import org.ovirt.engine.ui.common.widget.renderer.NullSafeRenderer;
+import org.ovirt.engine.ui.common.widget.renderer.NameRenderer;
 import 
org.ovirt.engine.ui.common.widget.uicommon.popup.AbstractModelBoundPopupWidget;
 import 
org.ovirt.engine.ui.common.widget.editor.ListModelTypeAheadChangeableListBoxEditor;
 import org.ovirt.engine.ui.uicommonweb.models.EntityModel;
@@ -363,7 +363,7 @@
     }
 
     void initListBoxEditors() {
-        vncKeyboardLayoutEditor = new ListModelListBoxEditor<String>(new 
VncKeyMapRenderer(messages));
+        vncKeyboardLayoutEditor = new ListModelListBoxEditor<>(new 
VncKeyMapRenderer(messages));
     }
 
     void initRadioButtonEditors() {
@@ -376,7 +376,7 @@
     }
 
     void initComboBox() {
-        sysPrepDomainNameListBoxEditor = new ListModelListBoxEditor<String>();
+        sysPrepDomainNameListBoxEditor = new ListModelListBoxEditor<>();
         sysPrepDomainNameTextBoxEditor = new StringEntityModelTextBoxEditor();
 
         sysPrepDomainNameListBoxEditor.asListBox().addDomHandler(new 
FocusHandler() {
@@ -393,14 +393,9 @@
             }
         }, ChangeEvent.getType());
 
-        sysPrepDomainNameComboBox = new 
ComboBox<String>(sysPrepDomainNameListBoxEditor, 
sysPrepDomainNameTextBoxEditor);
+        sysPrepDomainNameComboBox = new 
ComboBox<>(sysPrepDomainNameListBoxEditor, sysPrepDomainNameTextBoxEditor);
 
-        defaultHostEditor = new ListModelListBoxEditor<VDS>(new 
NullSafeRenderer<VDS>() {
-            @Override
-            public String renderNullSafe(VDS vds) {
-                return vds.getName();
-            }
-        });
+        defaultHostEditor = new ListModelListBoxEditor<>(new 
NameRenderer<VDS>());
 
         emulatedMachine = new ListModelTypeAheadChangeableListBoxEditor(
                 new 
ListModelTypeAheadChangeableListBoxEditor.NullSafeSuggestBoxRenderer() {
diff --git 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/storage/DisksAllocationItemView.java
 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/storage/DisksAllocationItemView.java
index 67a8b66..3a8ceb0 100644
--- 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/storage/DisksAllocationItemView.java
+++ 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/storage/DisksAllocationItemView.java
@@ -17,7 +17,7 @@
 import 
org.ovirt.engine.ui.common.widget.editor.generic.StringEntityModelTextBoxEditor;
 import org.ovirt.engine.ui.common.widget.renderer.DiskSizeRenderer;
 import org.ovirt.engine.ui.common.widget.renderer.EnumRenderer;
-import org.ovirt.engine.ui.common.widget.renderer.NullSafeRenderer;
+import org.ovirt.engine.ui.common.widget.renderer.NameRenderer;
 import 
org.ovirt.engine.ui.common.widget.renderer.StorageDomainFreeSpaceRenderer;
 import org.ovirt.engine.ui.uicommonweb.models.vms.DiskModel;
 
@@ -108,25 +108,15 @@
     }
 
     void initEditors() {
-        volumeTypeListEditor = new ListModelListBoxEditor<VolumeType>(new 
EnumRenderer<VolumeType>());
+        volumeTypeListEditor = new ListModelListBoxEditor<>(new 
EnumRenderer<VolumeType>());
 
-        storageListEditor = new ListModelListBoxEditor<StorageDomain>(new 
StorageDomainFreeSpaceRenderer<StorageDomain>());
+        storageListEditor = new ListModelListBoxEditor<>(new 
StorageDomainFreeSpaceRenderer<>());
 
-        sourceStorageListEditor = new 
ListModelListBoxEditor<StorageDomain>(new 
StorageDomainFreeSpaceRenderer<StorageDomain>());
+        sourceStorageListEditor = new ListModelListBoxEditor<>(new 
StorageDomainFreeSpaceRenderer<>());
 
-        diskProfileListEditor = new ListModelListBoxEditor<DiskProfile>(new 
NullSafeRenderer<DiskProfile>() {
-            @Override
-            protected String renderNullSafe(DiskProfile object) {
-                return object.getName();
-            }
-        });
+        diskProfileListEditor = new ListModelListBoxEditor<>(new 
NameRenderer<DiskProfile>());
 
-        quotaListEditor = new ListModelListBoxEditor<Quota>(new 
NullSafeRenderer<Quota>() {
-            @Override
-            public String renderNullSafe(Quota quota) {
-                return quota.getQuotaName();
-            }
-        });
+        quotaListEditor = new ListModelListBoxEditor<>(new 
NameRenderer<Quota>());
     }
 
     void updateStyles(Boolean isNarrowStyle) {
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/MoveHost.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/MoveHost.java
index 13c28a2..f4ac3ae 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/MoveHost.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/MoveHost.java
@@ -17,16 +17,16 @@
 import org.ovirt.engine.ui.uicompat.EventArgs;
 
 @SuppressWarnings("unused")
-public class MoveHost extends ListModel
+public class MoveHost extends ListModel<EntityModel<VDS>>
 {
-    private ListModel privateCluster;
+    private ListModel<VDSGroup> privateCluster;
 
-    public ListModel getCluster()
+    public ListModel<VDSGroup> getCluster()
     {
         return privateCluster;
     }
 
-    private void setCluster(ListModel value)
+    private void setCluster(ListModel<VDSGroup> value)
     {
         privateCluster = value;
     }
@@ -55,7 +55,7 @@
 
     public MoveHost()
     {
-        setCluster(new ListModel());
+        setCluster(new ListModel<VDSGroup>());
         getCluster().getSelectedItemChangedEvent().addListener(this);
     }
 
@@ -67,9 +67,8 @@
                 @Override
                 public void onSuccess(Object target, Object returnValue) {
 
-                    MoveHost moveHost = (MoveHost) target;
                     ArrayList<VDS> hosts = (ArrayList<VDS>) returnValue;
-                    moveHost.postGetHostList(hosts);
+                    postGetHostList(hosts);
                 }
             }));
         }
@@ -77,8 +76,8 @@
 
     private void postGetHostList(ArrayList<VDS> hosts) {
 
-        VDSGroup cluster = (VDSGroup) getCluster().getSelectedItem();
-        ArrayList<EntityModel> items = new ArrayList<EntityModel>();
+        VDSGroup cluster = getCluster().getSelectedItem();
+        ArrayList<EntityModel<VDS>> items = new ArrayList<>();
 
         for (VDS vds : hosts)
         {
@@ -86,33 +85,32 @@
                     (vds.getStatus() == VDSStatus.Maintenance || 
vds.getStatus() == VDSStatus.PendingApproval)
                     && 
vds.getSupportedClusterVersionsSet().contains(cluster.getCompatibilityVersion()))
             {
-                EntityModel entity = new EntityModel();
+                EntityModel<VDS> entity = new EntityModel<>();
                 entity.setEntity(vds);
                 items.add(entity);
             }
         }
 
-        ArrayList<Guid> previouslySelectedHostIDs = new ArrayList<Guid>();
+        ArrayList<Guid> previouslySelectedHostIDs = new ArrayList<>();
         if (getItems() != null)
         {
-            for (Object item : getItems())
+            for (EntityModel<VDS> entity : getItems())
             {
-                EntityModel entity = (EntityModel) item;
                 if (entity.getIsSelected())
                 {
-                    previouslySelectedHostIDs.add(((VDS) 
entity.getEntity()).getId());
+                    previouslySelectedHostIDs.add(entity.getEntity().getId());
                 }
             }
         }
         setItems(items);
-        for (EntityModel entity : items)
+        for (EntityModel<VDS> entity : items)
         {
-            entity.setIsSelected(previouslySelectedHostIDs.contains(((VDS) 
entity.getEntity()).getId()));
+            
entity.setIsSelected(previouslySelectedHostIDs.contains((entity.getEntity()).getId()));
         }
     }
 
     @Override
-    public void eventRaised(Event ev, Object sender, EventArgs args)
+    public void eventRaised(Event<? extends EventArgs> ev, Object sender, 
EventArgs args)
     {
         super.eventRaised(ev, sender, args);
 
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/AbstractNetworkPopupView.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/AbstractNetworkPopupView.java
index d633a7b..acf6173 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/AbstractNetworkPopupView.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/AbstractNetworkPopupView.java
@@ -20,7 +20,7 @@
 import 
org.ovirt.engine.ui.common.widget.editor.generic.IntegerEntityModelTextBoxOnlyEditor;
 import 
org.ovirt.engine.ui.common.widget.editor.generic.ListModelSuggestBoxEditor;
 import 
org.ovirt.engine.ui.common.widget.editor.generic.StringEntityModelTextBoxEditor;
-import org.ovirt.engine.ui.common.widget.renderer.NullSafeRenderer;
+import org.ovirt.engine.ui.common.widget.renderer.NameRenderer;
 import org.ovirt.engine.ui.common.widget.table.column.AbstractCheckboxColumn;
 import 
org.ovirt.engine.ui.common.widget.table.column.AbstractTextColumnWithTooltip;
 import org.ovirt.engine.ui.common.widget.table.header.CheckboxHeader;
@@ -192,24 +192,9 @@
             ApplicationConstants constants, ApplicationTemplates templates, 
final ApplicationMessages messages) {
         super(eventBus, resources);
         // Initialize Editors
-        dataCenterEditor = new ListModelListBoxEditor<StoragePool>(new 
NullSafeRenderer<StoragePool>() {
-            @Override
-            public String renderNullSafe(StoragePool storagePool) {
-                return storagePool.getName();
-            }
-        });
-        externalProviderEditor = new ListModelListBoxEditor<Provider>(new 
NullSafeRenderer<Provider>() {
-            @Override
-            public String renderNullSafe(Provider provider) {
-                return provider.getName();
-            }
-        });
-        qosEditor = new ListModelListBoxEditor<HostNetworkQos>(new 
NullSafeRenderer<HostNetworkQos>() {
-            @Override
-            protected String renderNullSafe(HostNetworkQos qos) {
-                return qos.getName();
-            }
-        });
+        dataCenterEditor = new ListModelListBoxEditor<>(new 
NameRenderer<StoragePool>());
+        externalProviderEditor = new ListModelListBoxEditor<>(new 
NameRenderer<Provider>());
+        qosEditor = new ListModelListBoxEditor<>(new 
NameRenderer<HostNetworkQos>());
         exportEditor = new EntityModelCheckBoxEditor(Align.RIGHT);
         exportEditor.asCheckBox().addValueChangeHandler(new 
ValueChangeHandler<Boolean>() {
 
@@ -222,7 +207,7 @@
         vlanTagging = new EntityModelCheckBoxEditor(Align.RIGHT);
         mtuEditor = new IntegerEntityModelTextBoxOnlyEditor();
         createSubnetEditor = new EntityModelCheckBoxEditor(Align.RIGHT);
-        this.clustersTable = new 
EntityModelCellTable<ListModel<NetworkClusterModel>>(SelectionMode.NONE, true);
+        this.clustersTable = new EntityModelCellTable<>(SelectionMode.NONE, 
true);
         initWidget(ViewUiBinder.uiBinder.createAndBindUi(this));
         initEntityModelCellTable(constants, templates);
         localize(constants);
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/ImportVmsPopupView.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/ImportVmsPopupView.java
index c7c5774..6f89578 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/ImportVmsPopupView.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/ImportVmsPopupView.java
@@ -9,6 +9,7 @@
 import org.ovirt.engine.ui.common.widget.editor.EntityModelCellTable;
 import org.ovirt.engine.ui.common.widget.editor.ListModelListBoxEditor;
 import org.ovirt.engine.ui.common.widget.renderer.EnumRenderer;
+import org.ovirt.engine.ui.common.widget.renderer.NameRenderer;
 import org.ovirt.engine.ui.common.widget.renderer.NullSafeRenderer;
 import 
org.ovirt.engine.ui.common.widget.table.column.AbstractTextColumnWithTooltip;
 import org.ovirt.engine.ui.uicommonweb.models.EntityModel;
@@ -95,13 +96,7 @@
         this.messages = messages;
 
         // Initialize Editors
-        DataCentersEditor = new ListModelListBoxEditor<StoragePool>(new 
NullSafeRenderer<StoragePool>() {
-
-            @Override
-            protected String renderNullSafe(StoragePool sp) {
-                return sp.getName();
-            }
-        });
+        DataCentersEditor = new ListModelListBoxEditor<>(new 
NameRenderer<StoragePool>());
         importSourcesEditor = new ListModelListBoxEditor<ImportSource>(new 
NullSafeRenderer<ImportSource>() {
 
             @Override
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/cluster/ClusterPopupView.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/cluster/ClusterPopupView.java
index be3e6a3..1019153 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/cluster/ClusterPopupView.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/cluster/ClusterPopupView.java
@@ -26,6 +26,7 @@
 import 
org.ovirt.engine.ui.common.widget.editor.generic.StringEntityModelTextBoxEditor;
 import org.ovirt.engine.ui.common.widget.form.key_value.KeyValueWidget;
 import org.ovirt.engine.ui.common.widget.renderer.BooleanRendererWithNullText;
+import org.ovirt.engine.ui.common.widget.renderer.NameRenderer;
 import org.ovirt.engine.ui.common.widget.renderer.NullSafeRenderer;
 import 
org.ovirt.engine.ui.common.widget.uicommon.popup.vm.SerialNumberPolicyWidget;
 import org.ovirt.engine.ui.uicommonweb.dataprovider.AsyncDataProvider;
@@ -537,12 +538,7 @@
     }
 
     private void initListBoxEditors(ApplicationConstants constants) {
-        dataCenterEditor = new ListModelListBoxEditor<StoragePool>(new 
NullSafeRenderer<StoragePool>() {
-            @Override
-            public String renderNullSafe(StoragePool object) {
-                return object.getName();
-            }
-        });
+        dataCenterEditor = new ListModelListBoxEditor<>(new 
NameRenderer<StoragePool>());
 
         cpuEditor = new ListModelListBoxEditor<ServerCpu>(new 
NullSafeRenderer<ServerCpu>() {
             @Override
@@ -565,12 +561,7 @@
             }
         });
 
-        clusterPolicyEditor = new ListModelListBoxEditor<ClusterPolicy>(new 
NullSafeRenderer<ClusterPolicy>() {
-            @Override
-            public String renderNullSafe(ClusterPolicy object) {
-                return object.getName();
-            }
-        });
+        clusterPolicyEditor = new ListModelListBoxEditor<>(new 
NameRenderer<ClusterPolicy>());
         hostsWithBrokenConnectivityThresholdEditor = new 
ListModelListBoxEditor<Integer>(new NullSafeRenderer<Integer>() {
             @Override
             public String renderNullSafe(Integer object) {
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/datacenter/DataCenterPopupView.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/datacenter/DataCenterPopupView.java
index f34356e..fb89b74 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/datacenter/DataCenterPopupView.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/datacenter/DataCenterPopupView.java
@@ -13,6 +13,7 @@
 import 
org.ovirt.engine.ui.common.widget.editor.generic.StringEntityModelTextBoxEditor;
 import org.ovirt.engine.ui.common.widget.renderer.BooleanRenderer;
 import org.ovirt.engine.ui.common.widget.renderer.EnumRenderer;
+import org.ovirt.engine.ui.common.widget.renderer.NameRenderer;
 import org.ovirt.engine.ui.common.widget.renderer.NullSafeRenderer;
 import org.ovirt.engine.ui.uicommonweb.models.datacenters.DataCenterModel;
 import org.ovirt.engine.ui.uicommonweb.models.macpool.MacPoolModel;
@@ -113,12 +114,7 @@
 
         quotaEnforceTypeEditor = new 
ListModelListBoxEditor<QuotaEnforcementTypeEnum>(new EnumRenderer());
 
-        macPoolListEditor = new ListModelListBoxEditor<MacPool>(new 
NullSafeRenderer<MacPool>() {
-            @Override
-            protected String renderNullSafe(MacPool macPool) {
-                return macPool.getName();
-            }
-        });
+        macPoolListEditor = new ListModelListBoxEditor<>(new 
NameRenderer<MacPool>());
     }
 
     void localize(ApplicationConstants constants) {
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/gluster/GlusterClusterSnapshotConfigureOptionsPopupView.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/gluster/GlusterClusterSnapshotConfigureOptionsPopupView.java
index c368dcc..e0f9830 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/gluster/GlusterClusterSnapshotConfigureOptionsPopupView.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/gluster/GlusterClusterSnapshotConfigureOptionsPopupView.java
@@ -8,7 +8,7 @@
 import org.ovirt.engine.ui.common.widget.dialog.SimpleDialogPanel;
 import org.ovirt.engine.ui.common.widget.editor.EntityModelCellTable;
 import org.ovirt.engine.ui.common.widget.editor.ListModelListBoxEditor;
-import org.ovirt.engine.ui.common.widget.renderer.NullSafeRenderer;
+import org.ovirt.engine.ui.common.widget.renderer.NameRenderer;
 import 
org.ovirt.engine.ui.common.widget.table.column.AbstractEntityModelTextColumn;
 import org.ovirt.engine.ui.uicommonweb.models.EntityModel;
 import org.ovirt.engine.ui.uicommonweb.models.ListModel;
@@ -73,15 +73,9 @@
     }
 
     private void initEditors() {
-        clusterEditor = new ListModelListBoxEditor<VDSGroup>(new 
NullSafeRenderer<VDSGroup>() {
-            @Override
-            protected String renderNullSafe(VDSGroup object) {
-                return object.getName();
-            }
-        });
+        clusterEditor = new ListModelListBoxEditor<>(new 
NameRenderer<VDSGroup>());
 
-        configsTable =
-                new 
EntityModelCellTable<ListModel<EntityModel<GlusterVolumeSnapshotConfig>>>(false,
 true);
+        configsTable = new EntityModelCellTable<>(false, true);
 
         configsTable.addColumn(new 
AbstractEntityModelTextColumn<GlusterVolumeSnapshotConfig>() {
             @Override
@@ -90,19 +84,19 @@
             }
         }, constants.volumeSnapshotConfigName(), "200px"); //$NON-NLS-1$
 
-        Column<EntityModel, String> valueColumn = new Column<EntityModel, 
String>(new TextInputCell()) {
+        Column<EntityModel<GlusterVolumeSnapshotConfig>, String> valueColumn = 
new Column<EntityModel<GlusterVolumeSnapshotConfig>, String>(new 
TextInputCell()) {
             @Override
-            public String getValue(EntityModel object) {
-                return ((GlusterVolumeSnapshotConfig) 
object.getEntity()).getParamValue();
+            public String getValue(EntityModel<GlusterVolumeSnapshotConfig> 
object) {
+                return object.getEntity().getParamValue();
             }
         };
         configsTable.addColumn(valueColumn, 
constants.volumeSnapshotConfigValue(), "100px"); //$NON-NLS-1$
 
-        valueColumn.setFieldUpdater(new FieldUpdater<EntityModel, String>() {
+        valueColumn.setFieldUpdater(new 
FieldUpdater<EntityModel<GlusterVolumeSnapshotConfig>, String>() {
 
             @Override
-            public void update(int index, EntityModel object, String value) {
-                ((GlusterVolumeSnapshotConfig) 
object.getEntity()).setParamValue(value);
+            public void update(int index, 
EntityModel<GlusterVolumeSnapshotConfig> object, String value) {
+                object.getEntity().setParamValue(value);
             }
         });
     }
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/gluster/VolumePopupView.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/gluster/VolumePopupView.java
index 2a8397e..a8dd1d4 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/gluster/VolumePopupView.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/gluster/VolumePopupView.java
@@ -14,7 +14,7 @@
 import 
org.ovirt.engine.ui.common.widget.editor.generic.IntegerEntityModelLabelEditor;
 import 
org.ovirt.engine.ui.common.widget.editor.generic.StringEntityModelTextBoxEditor;
 import org.ovirt.engine.ui.common.widget.renderer.EnumRenderer;
-import org.ovirt.engine.ui.common.widget.renderer.NullSafeRenderer;
+import org.ovirt.engine.ui.common.widget.renderer.NameRenderer;
 import org.ovirt.engine.ui.uicommonweb.models.gluster.VolumeModel;
 import org.ovirt.engine.ui.uicompat.ConstantsManager;
 import org.ovirt.engine.ui.uicompat.Event;
@@ -172,21 +172,11 @@
     }
 
     private void initListBoxEditors() {
-        dataCenterEditor = new ListModelListBoxEditor<StoragePool>(new 
NullSafeRenderer<StoragePool>() {
-            @Override
-            public String renderNullSafe(StoragePool storagePool) {
-                return storagePool.getName();
-            }
-        });
+        dataCenterEditor = new ListModelListBoxEditor<>(new 
NameRenderer<StoragePool>());
 
-        clusterEditor = new ListModelListBoxEditor<VDSGroup>(new 
NullSafeRenderer<VDSGroup>() {
-            @Override
-            public String renderNullSafe(VDSGroup vdsGroup) {
-                return vdsGroup.getName();
-            }
-        });
+        clusterEditor = new ListModelListBoxEditor<>(new 
NameRenderer<VDSGroup>());
 
-        typeListEditor = new ListModelListBoxEditor<GlusterVolumeType>(new 
EnumRenderer<GlusterVolumeType>());
+        typeListEditor = new ListModelListBoxEditor<>(new 
EnumRenderer<GlusterVolumeType>());
     }
 
     private void initAddBricksButton() {
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/gluster/VolumeProfileStatisticsPopupView.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/gluster/VolumeProfileStatisticsPopupView.java
index 2c91541..816fd04 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/gluster/VolumeProfileStatisticsPopupView.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/gluster/VolumeProfileStatisticsPopupView.java
@@ -11,7 +11,7 @@
 import org.ovirt.engine.ui.common.widget.dialog.tab.DialogTab;
 import org.ovirt.engine.ui.common.widget.editor.EntityModelCellTable;
 import org.ovirt.engine.ui.common.widget.editor.ListModelListBoxEditor;
-import org.ovirt.engine.ui.common.widget.renderer.NullSafeRenderer;
+import org.ovirt.engine.ui.common.widget.renderer.NameRenderer;
 import 
org.ovirt.engine.ui.common.widget.table.column.AbstractEntityModelTextColumn;
 import org.ovirt.engine.ui.uicommonweb.models.ListModel;
 import 
org.ovirt.engine.ui.uicommonweb.models.gluster.VolumeProfileStatisticsModel;
@@ -160,18 +160,8 @@
     private void initEditors() {
         nfsRefreshIcon = new RefreshActionIcon(SafeHtmlUtils.EMPTY_SAFE_HTML, 
resources);
         brickRefreshIcon = new 
RefreshActionIcon(SafeHtmlUtils.EMPTY_SAFE_HTML, resources);
-        bricks = new ListModelListBoxEditor<BrickProfileDetails>(new 
NullSafeRenderer<BrickProfileDetails>() {
-            @Override
-            protected String renderNullSafe(BrickProfileDetails object) {
-                return object.getName();
-            }
-        });
-        nfsServers = new ListModelListBoxEditor<GlusterVolumeProfileStats>(new 
NullSafeRenderer<GlusterVolumeProfileStats>() {
-            @Override
-            protected String renderNullSafe(GlusterVolumeProfileStats object) {
-                return object.getName();
-            }
-        });
+        bricks = new ListModelListBoxEditor<>(new 
NameRenderer<BrickProfileDetails>());
+        nfsServers = new ListModelListBoxEditor<>(new 
NameRenderer<GlusterVolumeProfileStats>());
         volumeProfileStats = new EntityModelCellTable<ListModel>(false, true);
 
         volumeProfileStats.addEntityModelColumn(new 
AbstractEntityModelTextColumn<FopStats>() {
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/guide/MoveHostPopupView.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/guide/MoveHostPopupView.java
index 4927e67..3cf823f 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/guide/MoveHostPopupView.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/guide/MoveHostPopupView.java
@@ -9,7 +9,7 @@
 import org.ovirt.engine.ui.common.widget.dialog.SimpleDialogPanel;
 import org.ovirt.engine.ui.common.widget.editor.EntityModelCellTable;
 import org.ovirt.engine.ui.common.widget.editor.ListModelListBoxEditor;
-import org.ovirt.engine.ui.common.widget.renderer.NullSafeRenderer;
+import org.ovirt.engine.ui.common.widget.renderer.NameRenderer;
 import org.ovirt.engine.ui.common.widget.table.column.AbstractEnumColumn;
 import 
org.ovirt.engine.ui.common.widget.table.column.AbstractTextColumnWithTooltip;
 import org.ovirt.engine.ui.uicommonweb.models.EntityModel;
@@ -47,7 +47,7 @@
     @UiField(provided = true)
     @Path(value = "cluster.selectedItem")
     @WithElementId
-    ListModelListBoxEditor<Object> clusterListEditor;
+    ListModelListBoxEditor<VDSGroup> clusterListEditor;
 
     private final Driver driver = GWT.create(Driver.class);
 
@@ -66,38 +66,33 @@
     }
 
     private void initListBoxEditors() {
-        clusterListEditor = new ListModelListBoxEditor<Object>(new 
NullSafeRenderer<Object>() {
-            @Override
-            public String renderNullSafe(Object object) {
-                return ((VDSGroup) object).getName();
-            }
-        });
+        clusterListEditor = new ListModelListBoxEditor<>(new 
NameRenderer<VDSGroup>());
     }
 
     private void initTable(ApplicationConstants constants) {
-        table = new EntityModelCellTable<MoveHost>(true);
+        table = new EntityModelCellTable<>(true);
         table.setWidth("100%", true); //$NON-NLS-1$
 
-        AbstractTextColumnWithTooltip<EntityModel> nameColumn = new 
AbstractTextColumnWithTooltip<EntityModel>() {
+        AbstractTextColumnWithTooltip<EntityModel<VDS>> nameColumn = new 
AbstractTextColumnWithTooltip<EntityModel<VDS>>() {
             @Override
-            public String getValue(EntityModel object) {
-                return ((VDS) object.getEntity()).getName();
+            public String getValue(EntityModel<VDS> object) {
+                return object.getEntity().getName();
             }
         };
         table.addColumn(nameColumn, constants.nameHost());
 
-        AbstractTextColumnWithTooltip<EntityModel> hostColumn = new 
AbstractTextColumnWithTooltip<EntityModel>() {
+        AbstractTextColumnWithTooltip<EntityModel<VDS>> hostColumn = new 
AbstractTextColumnWithTooltip<EntityModel<VDS>>() {
             @Override
-            public String getValue(EntityModel object) {
-                return ((VDS) object.getEntity()).getHostName();
+            public String getValue(EntityModel<VDS> object) {
+                return object.getEntity().getHostName();
             }
         };
         table.addColumn(hostColumn, constants.ipHost());
 
-        AbstractTextColumnWithTooltip<EntityModel> statusColumn = new 
AbstractEnumColumn<EntityModel, VDSStatus>() {
+        AbstractTextColumnWithTooltip<EntityModel<VDS>> statusColumn = new 
AbstractEnumColumn<EntityModel<VDS>, VDSStatus>() {
             @Override
-            public VDSStatus getRawValue(EntityModel object) {
-                return ((VDS) object.getEntity()).getStatus();
+            public VDSStatus getRawValue(EntityModel<VDS> object) {
+                return object.getEntity().getStatus();
             }
         };
         table.addColumn(statusColumn, constants.statusHost(), "90px"); 
//$NON-NLS-1$
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/HostBondPopupView.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/HostBondPopupView.java
index 5032fd0..1549760 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/HostBondPopupView.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/HostBondPopupView.java
@@ -10,6 +10,7 @@
 import 
org.ovirt.engine.ui.common.widget.editor.generic.ListModelSuggestBoxEditor;
 import 
org.ovirt.engine.ui.common.widget.editor.generic.StringEntityModelLabelEditor;
 import 
org.ovirt.engine.ui.common.widget.editor.generic.StringEntityModelTextBoxEditor;
+import org.ovirt.engine.ui.common.widget.renderer.NameRenderer;
 import org.ovirt.engine.ui.common.widget.renderer.NullSafeRenderer;
 import org.ovirt.engine.ui.uicommonweb.models.EntityModel;
 import org.ovirt.engine.ui.uicommonweb.models.ListModel;
@@ -130,13 +131,7 @@
 
         bondSuggestEditor = new ListModelSuggestBoxEditor();
         bondEditor = new ListModelListBoxEditor<String>();
-        networkEditor = new ListModelListBoxEditor<Network>(new 
NullSafeRenderer<Network>() {
-            @Override
-            protected String renderNullSafe(Network network) {
-                return network.getName();
-            }
-
-        });
+        networkEditor = new ListModelListBoxEditor<>(new 
NameRenderer<Network>());
         bondingModeEditor = new ListModelListBoxEditor<Map.Entry<String, 
EntityModel<String>>>(new NullSafeRenderer<Map.Entry<String, 
EntityModel<String>>>() {
             @SuppressWarnings("unchecked")
             @Override
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/HostInterfacePopupView.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/HostInterfacePopupView.java
index a0d89a3..9fce165 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/HostInterfacePopupView.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/HostInterfacePopupView.java
@@ -15,6 +15,7 @@
 import 
org.ovirt.engine.ui.common.widget.editor.generic.StringEntityModelLabelEditor;
 import 
org.ovirt.engine.ui.common.widget.editor.generic.StringEntityModelTextBoxEditor;
 import org.ovirt.engine.ui.common.widget.form.key_value.KeyValueWidget;
+import org.ovirt.engine.ui.common.widget.renderer.NameRenderer;
 import org.ovirt.engine.ui.common.widget.renderer.NullSafeRenderer;
 import org.ovirt.engine.ui.uicommonweb.models.EntityModel;
 import org.ovirt.engine.ui.uicommonweb.models.ListModel;
@@ -165,20 +166,8 @@
 
         super(eventBus, resources);
 
-        networkEditor = new ListModelListBoxEditor<Network>(new 
NullSafeRenderer<Network>() {
-            @Override
-            protected String renderNullSafe(Network network) {
-                return network.getName();
-            }
-
-        });
-        interfaceEditor = new ListModelListBoxEditor<VdsNetworkInterface>(new 
NullSafeRenderer<VdsNetworkInterface>() {
-            @Override
-            protected String renderNullSafe(VdsNetworkInterface network) {
-                return network.getName();
-            }
-
-        });
+        networkEditor = new ListModelListBoxEditor<>(new 
NameRenderer<Network>());
+        interfaceEditor = new ListModelListBoxEditor<>(new 
NameRenderer<VdsNetworkInterface>());
         bondingModeEditor = new ListModelListBoxEditor<Map.Entry<String, 
EntityModel<String>>>(new NullSafeRenderer<Map.Entry<String, 
EntityModel<String>>>() {
             @Override
             protected String renderNullSafe(Map.Entry<String, 
EntityModel<String>> pair) {
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/HostPopupView.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/HostPopupView.java
index c831e98..9833165 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/HostPopupView.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/HostPopupView.java
@@ -34,7 +34,7 @@
 import 
org.ovirt.engine.ui.common.widget.editor.generic.StringEntityModelPasswordBoxEditor;
 import 
org.ovirt.engine.ui.common.widget.editor.generic.StringEntityModelTextAreaLabelEditor;
 import 
org.ovirt.engine.ui.common.widget.editor.generic.StringEntityModelTextBoxEditor;
-import org.ovirt.engine.ui.common.widget.renderer.NullSafeRenderer;
+import org.ovirt.engine.ui.common.widget.renderer.NameRenderer;
 import org.ovirt.engine.ui.common.widget.renderer.StringRenderer;
 import org.ovirt.engine.ui.uicommonweb.UICommand;
 import org.ovirt.engine.ui.uicommonweb.models.ApplicationModeHelper;
@@ -532,39 +532,19 @@
         publicKeyEditor = new StringEntityModelTextAreaLabelEditor();
 
         // List boxes
-        dataCenterEditor = new ListModelListBoxEditor<StoragePool>(new 
NullSafeRenderer<StoragePool>() {
-            @Override
-            public String renderNullSafe(StoragePool storagePool) {
-                return storagePool.getName();
-            }
-        });
+        dataCenterEditor = new ListModelListBoxEditor<>(new 
NameRenderer<StoragePool>());
 
-        clusterEditor = new ListModelListBoxEditor<VDSGroup>(new 
NullSafeRenderer<VDSGroup>() {
-            @Override
-            public String renderNullSafe(VDSGroup vdsGroup) {
-                return vdsGroup.getName();
-            }
-        });
+        clusterEditor = new ListModelListBoxEditor<>(new 
NameRenderer<VDSGroup>());
 
-        externalHostNameEditor = new ListModelListBoxEditor<VDS>(new 
NullSafeRenderer<VDS>() {
-            @Override
-            public String renderNullSafe(VDS vds) {
-                return vds.getName();
-            }
-        });
+        externalHostNameEditor = new ListModelListBoxEditor<>(new 
NameRenderer<VDS>());
 
-        providersEditor = new ListModelListBoxEditor<Provider>(new 
NullSafeRenderer<Provider>() {
-            @Override
-            public String renderNullSafe(Provider provider) {
-                return provider.getName();
-            }
-        });
+        providersEditor = new ListModelListBoxEditor<>(new 
NameRenderer<Provider>());
 
-        pmVariantsEditor = new ListModelListBoxOnlyEditor<String>(new 
StringRenderer<String>());
+        pmVariantsEditor = new ListModelListBoxOnlyEditor<>(new 
StringRenderer<String>());
 
-        pmTypeEditor = new ListModelListBoxEditor<String>(new 
StringRenderer<String>());
+        pmTypeEditor = new ListModelListBoxEditor<>(new 
StringRenderer<String>());
 
-        pmSecondaryTypeEditor = new ListModelListBoxEditor<String>(new 
StringRenderer<String>());
+        pmSecondaryTypeEditor = new ListModelListBoxEditor<>(new 
StringRenderer<String>());
 
         externalDiscoveredHostsEditor = getListModelTypeAheadListBoxEditor();
         externalHostGroupsEditor = getListModelTypeAheadListBoxEditor();
@@ -581,7 +561,7 @@
     }
 
     private ListModelTypeAheadListBoxEditor<ExternalEntityBase> 
getListModelTypeAheadListBoxEditor() {
-        return new ListModelTypeAheadListBoxEditor<ExternalEntityBase>(
+        return new ListModelTypeAheadListBoxEditor<>(
                 new 
ListModelTypeAheadListBoxEditor.NullSafeSuggestBoxRenderer<ExternalEntityBase>()
 {
                     @Override
                     public String 
getReplacementStringNullSafe(ExternalEntityBase data) {
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/networkQoS/NetworkQoSPopupView.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/networkQoS/NetworkQoSPopupView.java
index cf000ff..e698252 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/networkQoS/NetworkQoSPopupView.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/networkQoS/NetworkQoSPopupView.java
@@ -7,7 +7,7 @@
 import org.ovirt.engine.ui.common.widget.dialog.SimpleDialogPanel;
 import org.ovirt.engine.ui.common.widget.editor.ListModelListBoxEditor;
 import 
org.ovirt.engine.ui.common.widget.editor.generic.StringEntityModelTextBoxEditor;
-import org.ovirt.engine.ui.common.widget.renderer.NullSafeRenderer;
+import org.ovirt.engine.ui.common.widget.renderer.NameRenderer;
 import org.ovirt.engine.ui.uicommonweb.models.datacenters.NetworkQoSModel;
 import org.ovirt.engine.ui.webadmin.ApplicationConstants;
 import org.ovirt.engine.ui.webadmin.ApplicationResources;
@@ -64,12 +64,7 @@
     }
 
     private void initListBoxEditors() {
-        dataCenterEditor = new ListModelListBoxEditor<StoragePool>(new 
NullSafeRenderer<StoragePool>() {
-            @Override
-            public String renderNullSafe(StoragePool dataCenter) {
-                return dataCenter.getName();
-            }
-        });
+        dataCenterEditor = new ListModelListBoxEditor<>(new 
NameRenderer<StoragePool>());
     }
 
     private void localize(ApplicationConstants constants) {
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/profile/CpuProfilePopupView.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/profile/CpuProfilePopupView.java
index a34897a..dd4824d 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/profile/CpuProfilePopupView.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/profile/CpuProfilePopupView.java
@@ -8,7 +8,7 @@
 import org.ovirt.engine.ui.common.widget.dialog.SimpleDialogPanel;
 import org.ovirt.engine.ui.common.widget.editor.ListModelListBoxEditor;
 import 
org.ovirt.engine.ui.common.widget.editor.generic.StringEntityModelTextBoxEditor;
-import org.ovirt.engine.ui.common.widget.renderer.NullSafeRenderer;
+import org.ovirt.engine.ui.common.widget.renderer.NameRenderer;
 import org.ovirt.engine.ui.uicommonweb.models.profiles.CpuProfileBaseModel;
 import org.ovirt.engine.ui.webadmin.ApplicationConstants;
 import org.ovirt.engine.ui.webadmin.ApplicationResources;
@@ -58,18 +58,8 @@
     @Inject
     public CpuProfilePopupView(EventBus eventBus, ApplicationResources 
resources, ApplicationConstants constants) {
         super(eventBus, resources);
-        clusterEditor = new ListModelListBoxEditor<VDSGroup>(new 
NullSafeRenderer<VDSGroup>() {
-            @Override
-            public String renderNullSafe(VDSGroup cluster) {
-                return cluster.getName();
-            }
-        });
-        qosEditor = new ListModelListBoxEditor<CpuQos>(new 
NullSafeRenderer<CpuQos>() {
-            @Override
-            public String renderNullSafe(CpuQos cpuQos) {
-                return cpuQos.getName();
-            }
-        });
+        clusterEditor = new ListModelListBoxEditor<>(new 
NameRenderer<VDSGroup>());
+        qosEditor = new ListModelListBoxEditor<>(new NameRenderer<CpuQos>());
         initWidget(ViewUiBinder.uiBinder.createAndBindUi(this));
         localize(constants);
         ViewIdHandler.idHandler.generateAndSetIds(this);
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/profile/DiskProfilePopupView.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/profile/DiskProfilePopupView.java
index 6425609..e1b603d 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/profile/DiskProfilePopupView.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/profile/DiskProfilePopupView.java
@@ -8,7 +8,7 @@
 import org.ovirt.engine.ui.common.widget.dialog.SimpleDialogPanel;
 import org.ovirt.engine.ui.common.widget.editor.ListModelListBoxEditor;
 import 
org.ovirt.engine.ui.common.widget.editor.generic.StringEntityModelTextBoxEditor;
-import org.ovirt.engine.ui.common.widget.renderer.NullSafeRenderer;
+import org.ovirt.engine.ui.common.widget.renderer.NameRenderer;
 import org.ovirt.engine.ui.uicommonweb.models.profiles.DiskProfileBaseModel;
 import org.ovirt.engine.ui.webadmin.ApplicationConstants;
 import org.ovirt.engine.ui.webadmin.ApplicationResources;
@@ -58,18 +58,8 @@
     @Inject
     public DiskProfilePopupView(EventBus eventBus, ApplicationResources 
resources, ApplicationConstants constants) {
         super(eventBus, resources);
-        storageDomainEditor = new ListModelListBoxEditor<StorageDomain>(new 
NullSafeRenderer<StorageDomain>() {
-            @Override
-            public String renderNullSafe(StorageDomain storageDomain) {
-                return storageDomain.getName();
-            }
-        });
-        qosEditor = new ListModelListBoxEditor<StorageQos>(new 
NullSafeRenderer<StorageQos>() {
-            @Override
-            public String renderNullSafe(StorageQos storageQos) {
-                return storageQos.getName();
-            }
-        });
+        storageDomainEditor = new ListModelListBoxEditor<>(new 
NameRenderer<StorageDomain>());
+        qosEditor = new ListModelListBoxEditor<>(new 
NameRenderer<StorageQos>());
         initWidget(ViewUiBinder.uiBinder.createAndBindUi(this));
         localize(constants);
         ViewIdHandler.idHandler.generateAndSetIds(this);
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/profile/VnicProfilePopupView.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/profile/VnicProfilePopupView.java
index dcd0c2b..57542bd 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/profile/VnicProfilePopupView.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/profile/VnicProfilePopupView.java
@@ -11,7 +11,7 @@
 import 
org.ovirt.engine.ui.common.widget.editor.generic.EntityModelCheckBoxEditor;
 import 
org.ovirt.engine.ui.common.widget.editor.generic.StringEntityModelTextBoxEditor;
 import org.ovirt.engine.ui.common.widget.form.key_value.KeyValueWidget;
-import org.ovirt.engine.ui.common.widget.renderer.NullSafeRenderer;
+import org.ovirt.engine.ui.common.widget.renderer.NameRenderer;
 import org.ovirt.engine.ui.uicommonweb.models.profiles.VnicProfileModel;
 import org.ovirt.engine.ui.uicommonweb.models.vms.key_value.KeyValueModel;
 import org.ovirt.engine.ui.webadmin.ApplicationConstants;
@@ -89,18 +89,8 @@
         super(eventBus, resources);
         publicUseEditor = new EntityModelCheckBoxEditor(Align.RIGHT);
         customPropertiesSheetEditor = new 
KeyValueWidget<KeyValueModel>("380px"); //$NON-NLS-1$
-        networkEditor = new ListModelListBoxEditor<Network>(new 
NullSafeRenderer<Network>() {
-            @Override
-            public String renderNullSafe(Network network) {
-                return network.getName();
-            }
-        });
-        networkQoSEditor = new ListModelListBoxEditor<NetworkQoS>(new 
NullSafeRenderer<NetworkQoS>() {
-            @Override
-            public String renderNullSafe(NetworkQoS networkQoS) {
-                return networkQoS.getName();
-            }
-        });
+        networkEditor = new ListModelListBoxEditor<>(new 
NameRenderer<Network>());
+        networkQoSEditor = new ListModelListBoxEditor<>(new 
NameRenderer<NetworkQoS>());
         initWidget(ViewUiBinder.uiBinder.createAndBindUi(this));
         localize(constants);
         applyStyles();
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/provider/ImportNetworksPopupView.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/provider/ImportNetworksPopupView.java
index 2ec1062..06d5d3a 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/provider/ImportNetworksPopupView.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/provider/ImportNetworksPopupView.java
@@ -11,7 +11,7 @@
 import org.ovirt.engine.ui.common.widget.dialog.SimpleDialogPanel;
 import org.ovirt.engine.ui.common.widget.editor.EntityModelCellTable;
 import org.ovirt.engine.ui.common.widget.editor.ListModelListBoxEditor;
-import org.ovirt.engine.ui.common.widget.renderer.NullSafeRenderer;
+import org.ovirt.engine.ui.common.widget.renderer.NameRenderer;
 import org.ovirt.engine.ui.common.widget.table.column.AbstractCheckboxColumn;
 import 
org.ovirt.engine.ui.common.widget.table.column.AbstractEditTextColumnWithTooltip;
 import 
org.ovirt.engine.ui.common.widget.table.column.AbstractListModelListBoxColumn;
@@ -77,13 +77,7 @@
             ApplicationConstants constants, ApplicationTemplates templates) {
         super(eventBus, resources);
         // Initialize Editors
-        providersEditor = new ListModelListBoxEditor<Provider<?>>(new 
NullSafeRenderer<Provider<?>>() {
-
-            @Override
-            protected String renderNullSafe(Provider<?> provider) {
-                return provider.getName();
-            }
-        });
+        providersEditor = new ListModelListBoxEditor<>(new 
NameRenderer<Provider<?>>());
         providerNetworks = new 
EntityModelCellTable<ListModel<ExternalNetwork>>(true, false, true);
         importedNetworks = new 
EntityModelCellTable<ListModel<ExternalNetwork>>(true, false, true);
         splitTable =
@@ -140,12 +134,7 @@
         providerNetworks.addColumn(idColumn, constants.idNetworkHeader());
         importedNetworks.addColumn(idColumn, constants.idNetworkHeader());
 
-        dcColumn = new AbstractListModelListBoxColumn<ExternalNetwork, 
StoragePool>(new NullSafeRenderer<StoragePool>() {
-            @Override
-            public String renderNullSafe(StoragePool dc) {
-                return dc.getName();
-            }
-        })
+        dcColumn = new AbstractListModelListBoxColumn<ExternalNetwork, 
StoragePool>(new NameRenderer<StoragePool>())
         {
             @Override
             public ListModel<StoragePool> getValue(ExternalNetwork network) {
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/qos/QosPopupView.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/qos/QosPopupView.java
index 5ffa75e..40c82de 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/qos/QosPopupView.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/qos/QosPopupView.java
@@ -8,7 +8,7 @@
 import org.ovirt.engine.ui.common.widget.dialog.SimpleDialogPanel;
 import org.ovirt.engine.ui.common.widget.editor.ListModelListBoxEditor;
 import 
org.ovirt.engine.ui.common.widget.editor.generic.StringEntityModelTextBoxEditor;
-import org.ovirt.engine.ui.common.widget.renderer.NullSafeRenderer;
+import org.ovirt.engine.ui.common.widget.renderer.NameRenderer;
 import org.ovirt.engine.ui.uicommonweb.models.datacenters.qos.QosModel;
 import 
org.ovirt.engine.ui.uicommonweb.models.datacenters.qos.QosParametersModel;
 import org.ovirt.engine.ui.webadmin.ApplicationConstants;
@@ -71,12 +71,7 @@
     }
 
     private void initListBoxEditors() {
-        dataCenterEditor = new ListModelListBoxEditor<StoragePool>(new 
NullSafeRenderer<StoragePool>() {
-            @Override
-            public String renderNullSafe(StoragePool dataCenter) {
-                return dataCenter.getName();
-            }
-        });
+        dataCenterEditor = new ListModelListBoxEditor<>(new 
NameRenderer<StoragePool>());
     }
 
     private void localize() {
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/quota/QuotaPopupView.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/quota/QuotaPopupView.java
index f4621b8..150b9d7 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/quota/QuotaPopupView.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/quota/QuotaPopupView.java
@@ -20,7 +20,7 @@
 import org.ovirt.engine.ui.common.widget.form.Slider;
 import org.ovirt.engine.ui.common.widget.form.Slider.SliderValueChange;
 import org.ovirt.engine.ui.common.widget.renderer.DiskSizeRenderer;
-import org.ovirt.engine.ui.common.widget.renderer.NullSafeRenderer;
+import org.ovirt.engine.ui.common.widget.renderer.NameRenderer;
 import 
org.ovirt.engine.ui.common.widget.table.column.AbstractTextColumnWithTooltip;
 import org.ovirt.engine.ui.uicommonweb.models.ListModel;
 import org.ovirt.engine.ui.uicommonweb.models.quota.QuotaModel;
@@ -63,7 +63,7 @@
     private static final String MIN_COLOR = "#AFBF27"; //$NON-NLS-1$
 
     private static final DiskSizeRenderer<Number> diskSizeRenderer =
-            new DiskSizeRenderer<Number>(SizeConverter.SizeUnit.GB);
+            new DiskSizeRenderer<>(SizeConverter.SizeUnit.GB);
 
     @UiField
     WidgetStyle style;
@@ -165,8 +165,8 @@
 
     private boolean firstTime = false;
 
-    ArrayList<Guid> selectedClusterGuid = new ArrayList<Guid>();
-    ArrayList<Guid> selectedStorageGuid = new ArrayList<Guid>();
+    ArrayList<Guid> selectedClusterGuid = new ArrayList<>();
+    ArrayList<Guid> selectedStorageGuid = new ArrayList<>();
 
     interface Driver extends SimpleBeanEditorDriver<QuotaModel, 
QuotaPopupView> {
     }
@@ -223,7 +223,7 @@
     }
 
     private void initQuotaStorageTable(final ApplicationConstants constants, 
final ApplicationMessages messages) {
-        quotaStorageTable = new ListModelObjectCellTable<QuotaStorage, 
ListModel>();
+        quotaStorageTable = new ListModelObjectCellTable<>();
         storageQuotaTableContainer.add(quotaStorageTable);
 
         isStorageInQuotaColumn = new Column<QuotaStorage, Boolean>(
@@ -310,7 +310,7 @@
     }
 
     private void initQuotaClusterTable(final ApplicationConstants constants, 
final ApplicationMessages messages) {
-        quotaClusterTable = new ListModelObjectCellTable<QuotaVdsGroup, 
ListModel>();
+        quotaClusterTable = new ListModelObjectCellTable<>();
         clusterQuotaTableContainer.add(quotaClusterTable);
 
         isClusterInQuotaColumn = new Column<QuotaVdsGroup, Boolean>(
@@ -415,12 +415,7 @@
     }
 
     private void initListBoxEditors() {
-        dataCenterEditor = new ListModelListBoxEditor<StoragePool>(new 
NullSafeRenderer<StoragePool>() {
-            @Override
-            public String renderNullSafe(StoragePool pool) {
-                return pool.getName();
-            }
-        });
+        dataCenterEditor = new ListModelListBoxEditor<>(new 
NameRenderer<StoragePool>());
     }
 
     void localize(ApplicationConstants constants) {
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/scheduling/ClusterPolicyPopupView.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/scheduling/ClusterPolicyPopupView.java
index e2d11f3..57349b3 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/scheduling/ClusterPolicyPopupView.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/scheduling/ClusterPolicyPopupView.java
@@ -14,7 +14,7 @@
 import org.ovirt.engine.ui.common.widget.editor.ListModelListBoxOnlyEditor;
 import 
org.ovirt.engine.ui.common.widget.editor.generic.StringEntityModelTextBoxEditor;
 import org.ovirt.engine.ui.common.widget.form.key_value.KeyValueWidget;
-import org.ovirt.engine.ui.common.widget.renderer.NullSafeRenderer;
+import org.ovirt.engine.ui.common.widget.renderer.NameRenderer;
 import 
org.ovirt.engine.ui.uicommonweb.models.configure.scheduling.NewClusterPolicyModel;
 import org.ovirt.engine.ui.uicommonweb.models.vms.key_value.KeyValueModel;
 import org.ovirt.engine.ui.uicompat.Event;
@@ -136,12 +136,7 @@
     }
 
     private void initListBoxEditors() {
-        loadBalanceListEditor = new ListModelListBoxOnlyEditor<PolicyUnit>(new 
NullSafeRenderer<PolicyUnit>() {
-            @Override
-            public String renderNullSafe(PolicyUnit policyUnit) {
-                return policyUnit.getName();
-            }
-        });
+        loadBalanceListEditor = new ListModelListBoxOnlyEditor<>(new 
NameRenderer<PolicyUnit>());
     }
 
     private void localize(ApplicationConstants constants) {
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/storage/ImportExportImagePopupView.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/storage/ImportExportImagePopupView.java
index 26917b5..447523c 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/storage/ImportExportImagePopupView.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/storage/ImportExportImagePopupView.java
@@ -24,7 +24,7 @@
 import 
org.ovirt.engine.ui.common.widget.editor.EntityModelCellTable.SelectionMode;
 import 
org.ovirt.engine.ui.common.widget.editor.generic.EntityModelCheckBoxEditor;
 import org.ovirt.engine.ui.common.widget.editor.ListModelListBoxEditor;
-import org.ovirt.engine.ui.common.widget.renderer.NullSafeRenderer;
+import org.ovirt.engine.ui.common.widget.renderer.NameRenderer;
 import org.ovirt.engine.ui.common.widget.table.column.AbstractDiskSizeColumn;
 import 
org.ovirt.engine.ui.common.widget.table.column.AbstractEntityModelTextColumn;
 import org.ovirt.engine.ui.uicommonweb.models.EntityModel;
@@ -89,36 +89,16 @@
                                       final ApplicationConstants constants) {
         super(eventBus, resources);
 
-        dataCenterEditor = new ListModelListBoxEditor<StoragePool>(new 
NullSafeRenderer<StoragePool>() {
-            @Override
-            public String renderNullSafe(StoragePool storagePool) {
-                return storagePool.getName();
-            }
-        });
+        dataCenterEditor = new ListModelListBoxEditor<>(new 
NameRenderer<StoragePool>());
         dataCenterEditor.setLabel(constants.dataCenter());
 
-        clusterEditor = new ListModelListBoxEditor<VDSGroup>(new 
NullSafeRenderer<VDSGroup>() {
-            @Override
-            public String renderNullSafe(VDSGroup vdsGroup) {
-                return vdsGroup.getName();
-            }
-        });
+        clusterEditor = new ListModelListBoxEditor<>(new 
NameRenderer<VDSGroup>());
         clusterEditor.setLabel(constants.makeTemplateClusterLabel());
 
-        storageDomainEditor = new ListModelListBoxEditor<StorageDomain>(new 
NullSafeRenderer<StorageDomain>() {
-            @Override
-            public String renderNullSafe(StorageDomain storageDomain) {
-                return storageDomain.getStorageName();
-            }
-        });
+        storageDomainEditor = new ListModelListBoxEditor<>(new 
NameRenderer<StorageDomain>());
         storageDomainEditor.setLabel(constants.domainNameStorage());
 
-        quotaEditor = new ListModelListBoxEditor<Quota>(new 
NullSafeRenderer<Quota>() {
-            @Override
-            public String renderNullSafe(Quota quota) {
-                return quota.getQuotaName();
-            }
-        });
+        quotaEditor = new ListModelListBoxEditor<>(new NameRenderer<Quota>());
         quotaEditor.setLabel(constants.quota());
 
         importAsTemplateEditor = new EntityModelCheckBoxEditor(Align.RIGHT);
@@ -126,7 +106,7 @@
 
         imageListPanel = new SimplePanel();
 
-        imageList = new EntityModelCellTable<ListModel>(SelectionMode.NONE, 
true);
+        imageList = new EntityModelCellTable<>(SelectionMode.NONE, true);
         imageList.addEntityModelColumn(new 
AbstractEntityModelTextColumn<Object>() {
             @Override
             public String getText(Object image) {
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/storage/StoragePopupView.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/storage/StoragePopupView.java
index 6e60294..151ea9e 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/storage/StoragePopupView.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/storage/StoragePopupView.java
@@ -15,6 +15,7 @@
 import 
org.ovirt.engine.ui.common.widget.editor.generic.EntityModelCheckBoxEditor;
 import 
org.ovirt.engine.ui.common.widget.editor.generic.StringEntityModelTextBoxEditor;
 import org.ovirt.engine.ui.common.widget.renderer.EnumRenderer;
+import org.ovirt.engine.ui.common.widget.renderer.NameRenderer;
 import org.ovirt.engine.ui.common.widget.uicommon.storage.AbstractStorageView;
 import org.ovirt.engine.ui.common.widget.uicommon.storage.FcpStorageView;
 import org.ovirt.engine.ui.common.widget.uicommon.storage.ImportFcpStorageView;
@@ -172,12 +173,7 @@
 
         formatListEditor = new ListModelListBoxEditor<StorageFormatType>(new 
EnumRenderer());
 
-        hostListEditor = new ListModelListBoxEditor<VDS>(new 
AbstractRenderer<VDS>() {
-            @Override
-            public String render(VDS vds) {
-                return vds == null ? "" : vds.getName(); //$NON-NLS-1$
-            }
-        });
+        hostListEditor = new ListModelListBoxEditor<>(new NameRenderer<VDS>());
 
         storageTypeListEditor = new ListModelListBoxEditor<IStorageModel>(new 
AbstractRenderer<IStorageModel>() {
             @Override
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/storage/StorageRemovePopupView.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/storage/StorageRemovePopupView.java
index 8250bdd..8357b57 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/storage/StorageRemovePopupView.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/storage/StorageRemovePopupView.java
@@ -8,7 +8,7 @@
 import org.ovirt.engine.ui.common.widget.dialog.SimpleDialogPanel;
 import 
org.ovirt.engine.ui.common.widget.editor.generic.EntityModelCheckBoxEditor;
 import org.ovirt.engine.ui.common.widget.editor.ListModelListBoxEditor;
-import org.ovirt.engine.ui.common.widget.renderer.NullSafeRenderer;
+import org.ovirt.engine.ui.common.widget.renderer.NameRenderer;
 import org.ovirt.engine.ui.uicommonweb.models.storage.RemoveStorageModel;
 import org.ovirt.engine.ui.webadmin.ApplicationConstants;
 import org.ovirt.engine.ui.webadmin.ApplicationResources;
@@ -68,12 +68,7 @@
     }
 
     void initListBoxEditors() {
-        hostListEditor = new ListModelListBoxEditor<VDS>(new 
NullSafeRenderer<VDS>() {
-            @Override
-            public String renderNullSafe(VDS vds) {
-                return vds.getName();
-            }
-        });
+        hostListEditor = new ListModelListBoxEditor<>(new NameRenderer<VDS>());
     }
 
     void initCheckBoxEditors() {
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/storage/backup/ImportVmFromExportDomainPopupView.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/storage/backup/ImportVmFromExportDomainPopupView.java
index 068f69c..c174dab 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/storage/backup/ImportVmFromExportDomainPopupView.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/storage/backup/ImportVmFromExportDomainPopupView.java
@@ -20,7 +20,7 @@
 import org.ovirt.engine.ui.common.widget.editor.ListModelListBoxEditor;
 import org.ovirt.engine.ui.common.widget.editor.ListModelObjectCellTable;
 import org.ovirt.engine.ui.common.widget.renderer.EnumRenderer;
-import org.ovirt.engine.ui.common.widget.renderer.NullSafeRenderer;
+import org.ovirt.engine.ui.common.widget.renderer.NameRenderer;
 import 
org.ovirt.engine.ui.common.widget.renderer.StorageDomainFreeSpaceRenderer;
 import org.ovirt.engine.ui.common.widget.table.column.AbstractCheckboxColumn;
 import org.ovirt.engine.ui.common.widget.table.column.AbstractDiskSizeColumn;
@@ -85,7 +85,7 @@
 
     @UiField(provided = true)
     @Path(value = "cluster.selectedItem")
-    ListModelListBoxEditor<Object> destClusterEditor;
+    ListModelListBoxEditor<VDSGroup> destClusterEditor;
 
     @UiField(provided = true)
     @Path(value = "cpuProfiles.selectedItem")
@@ -93,7 +93,7 @@
 
     @UiField(provided = true)
     @Path(value = "clusterQuota.selectedItem")
-    ListModelListBoxEditor<Object> destClusterQuotaEditor;
+    ListModelListBoxEditor<Quota> destClusterQuotaEditor;
 
     @UiField(provided = true)
     @Path(value = "storage.selectedItem")
@@ -618,27 +618,11 @@
     }
 
     private void initListBoxEditors() {
-        destClusterEditor = new ListModelListBoxEditor<>(new 
NullSafeRenderer<Object>() {
-            @Override
-            public String renderNullSafe(Object object) {
-                return ((VDSGroup) object).getName();
-            }
-        });
-        destClusterQuotaEditor = new ListModelListBoxEditor<>(new 
NullSafeRenderer<Object>() {
-            @Override
-            public String renderNullSafe(Object object) {
-                return ((Quota) object).getQuotaName();
-            }
-        });
+        destClusterEditor = new ListModelListBoxEditor<>(new 
NameRenderer<VDSGroup>());
+        destClusterQuotaEditor = new ListModelListBoxEditor<>(new 
NameRenderer<Quota>());
         destStorageEditor = new ListModelListBoxEditor<>(new 
StorageDomainFreeSpaceRenderer());
 
-        cpuProfileEditor = new ListModelListBoxEditor<>(new 
NullSafeRenderer<CpuProfile>() {
-
-            @Override
-            protected String renderNullSafe(CpuProfile object) {
-                return object.getName();
-            }
-        });
+        cpuProfileEditor = new ListModelListBoxEditor<>(new 
NameRenderer<CpuProfile>());
     }
 
     private void localize(ApplicationConstants constants) {
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/vm/VmMigratePopupView.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/vm/VmMigratePopupView.java
index 3be28c8..da2e2a5 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/vm/VmMigratePopupView.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/vm/VmMigratePopupView.java
@@ -9,7 +9,7 @@
 import org.ovirt.engine.ui.common.widget.dialog.SimpleDialogPanel;
 import 
org.ovirt.engine.ui.common.widget.editor.generic.EntityModelRadioButtonEditor;
 import org.ovirt.engine.ui.common.widget.editor.ListModelListBoxEditor;
-import org.ovirt.engine.ui.common.widget.renderer.NullSafeRenderer;
+import org.ovirt.engine.ui.common.widget.renderer.NameRenderer;
 import org.ovirt.engine.ui.uicommonweb.models.vms.MigrateModel;
 import org.ovirt.engine.ui.uicompat.Event;
 import org.ovirt.engine.ui.uicompat.IEventListener;
@@ -95,19 +95,9 @@
         selectHostAutomaticallyEditor = new EntityModelRadioButtonEditor("1"); 
//$NON-NLS-1$
         selectDestinationHostEditor = new EntityModelRadioButtonEditor("1"); 
//$NON-NLS-1$
 
-        hostsListEditor = new ListModelListBoxEditor<VDS>(new 
NullSafeRenderer<VDS>() {
-            @Override
-            public String renderNullSafe(VDS vds) {
-                return vds.getName();
-            }
-        });
+        hostsListEditor = new ListModelListBoxEditor<>(new 
NameRenderer<VDS>());
 
-        clustersEditor = new ListModelListBoxEditor<VDSGroup>(new 
NullSafeRenderer<VDSGroup>() {
-            @Override
-            protected String renderNullSafe(VDSGroup cluster) {
-                return cluster.getName();
-            }
-        });
+        clustersEditor = new ListModelListBoxEditor<>(new 
NameRenderer<VDSGroup>());
     }
 
     void localize(ApplicationConstants constants, ApplicationMessages 
messages) {
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/provider/HostNetworkProviderWidget.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/provider/HostNetworkProviderWidget.java
index ffcd247..e9dab2e 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/provider/HostNetworkProviderWidget.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/provider/HostNetworkProviderWidget.java
@@ -11,7 +11,7 @@
 import 
org.ovirt.engine.ui.common.widget.editor.generic.ListModelSuggestBoxEditor;
 import org.ovirt.engine.ui.common.widget.editor.generic.StringEntityModelLabel;
 import org.ovirt.engine.ui.common.widget.renderer.EnumRenderer;
-import org.ovirt.engine.ui.common.widget.renderer.NullSafeRenderer;
+import org.ovirt.engine.ui.common.widget.renderer.NameRenderer;
 import 
org.ovirt.engine.ui.common.widget.uicommon.popup.AbstractModelBoundPopupWidget;
 import 
org.ovirt.engine.ui.uicommonweb.models.providers.HostNetworkProviderModel;
 import org.ovirt.engine.ui.uicommonweb.models.providers.NeutronAgentModel;
@@ -79,12 +79,7 @@
     public HostNetworkProviderWidget() {
 
         networkProviderLabel = new StringEntityModelLabel();
-        networkProviderEditor = new 
ListModelListBoxOnlyEditor<Provider<OpenstackNetworkProviderProperties>>(new 
NullSafeRenderer<Provider<OpenstackNetworkProviderProperties>>() {
-            @Override
-            public String 
renderNullSafe(Provider<OpenstackNetworkProviderProperties> provider) {
-                return provider.getName();
-            }
-        });
+        networkProviderEditor = new ListModelListBoxOnlyEditor<>(new 
NameRenderer<Provider<OpenstackNetworkProviderProperties>>());
         networkProvider = new 
EntityModelWidgetWithInfo<String>(networkProviderLabel, networkProviderEditor);
         networkProviderTypeEditor = new 
ListModelListBoxEditor<ProviderType>(new EnumRenderer<ProviderType>());
         neutronAgentWidget = new NeutronAgentWidget();
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/vnicProfile/VnicProfileWidget.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/vnicProfile/VnicProfileWidget.java
index 5ce7dcb..83f42c6 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/vnicProfile/VnicProfileWidget.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/vnicProfile/VnicProfileWidget.java
@@ -7,7 +7,7 @@
 import 
org.ovirt.engine.ui.common.widget.editor.generic.EntityModelCheckBoxEditor;
 import org.ovirt.engine.ui.common.widget.editor.ListModelListBoxEditor;
 import 
org.ovirt.engine.ui.common.widget.editor.generic.StringEntityModelTextBoxOnlyEditor;
-import org.ovirt.engine.ui.common.widget.renderer.NullSafeRenderer;
+import org.ovirt.engine.ui.common.widget.renderer.NameRenderer;
 import 
org.ovirt.engine.ui.common.widget.uicommon.popup.AbstractModelBoundPopupWidget;
 import org.ovirt.engine.ui.uicommonweb.models.profiles.VnicProfileModel;
 import org.ovirt.engine.ui.uicompat.Event;
@@ -71,12 +71,7 @@
     public VnicProfileWidget() {
         publicUseEditor = new EntityModelCheckBoxEditor(Align.RIGHT);
         publicInfo = new 
InfoIcon(templates.italicText(constants.profilePublicUseLabel()), resources);
-        networkQoSEditor = new ListModelListBoxEditor<NetworkQoS>(new 
NullSafeRenderer<NetworkQoS>() {
-            @Override
-            public String renderNullSafe(NetworkQoS networkQoS) {
-                return networkQoS.getName();
-            }
-        });
+        networkQoSEditor = new ListModelListBoxEditor<>(new 
NameRenderer<NetworkQoS>());
         initWidget(WidgetUiBinder.uiBinder.createAndBindUi(this));
         
publicUseEditor.setLabel(constants.profilePublicUseInstanceTypeLabel());
         networkQoSEditor.setLabel(constants.profileQoSInstanceTypeLabel());


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

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

Reply via email to