Lior Vernia has uploaded a new change for review.

Change subject: webadmin: Added linking from Network to Provider
......................................................................

webadmin: Added linking from Network to Provider

When a Provider name is clicked in the "Provided By" column in the
Networks main tab, that Provider is selected in the System Tree.

Change-Id: I57f740624bd2dd4c4e9ea6e02656787e3ca1788a
Signed-off-by: Lior Vernia <lver...@redhat.com>
---
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/SystemTreeModel.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/presenter/tab/MainTabNetworkPresenter.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/MainTabNetworkView.java
3 files changed, 38 insertions(+), 5 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/23/15523/1

diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/SystemTreeModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/SystemTreeModel.java
index 9cec552..d7d7d18 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/SystemTreeModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/SystemTreeModel.java
@@ -588,6 +588,7 @@
             providerItem.setTitle(provider.getName());
             providerItem.setParent(providersItem);
             providersItem.getChildren().add(providerItem);
+            treeItemById.put(provider.getId(), providerItem);
         }
 
         if 
(!ApplicationModeHelper.getUiMode().equals(ApplicationMode.AllModes)) {
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/presenter/tab/MainTabNetworkPresenter.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/presenter/tab/MainTabNetworkPresenter.java
index b2950ad..8830a54 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/presenter/tab/MainTabNetworkPresenter.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/presenter/tab/MainTabNetworkPresenter.java
@@ -5,12 +5,15 @@
 import org.ovirt.engine.core.common.businessentities.network.NetworkView;
 import org.ovirt.engine.ui.common.uicommon.model.MainModelProvider;
 import org.ovirt.engine.ui.common.widget.tab.ModelBoundTabData;
+import org.ovirt.engine.ui.uicommonweb.models.SystemTreeModel;
 import org.ovirt.engine.ui.uicommonweb.models.networks.NetworkListModel;
 import org.ovirt.engine.ui.webadmin.gin.ClientGinjector;
 import org.ovirt.engine.ui.webadmin.place.ApplicationPlaces;
 import 
org.ovirt.engine.ui.webadmin.section.main.presenter.AbstractMainTabWithDetailsPresenter;
 import 
org.ovirt.engine.ui.webadmin.section.main.presenter.MainTabPanelPresenter;
+import org.ovirt.engine.ui.webadmin.uicommon.model.SystemTreeModelProvider;
 
+import com.google.gwt.cell.client.FieldUpdater;
 import com.google.gwt.event.shared.EventBus;
 import com.google.inject.Inject;
 import com.gwtplatform.dispatch.annotation.GenEvent;
@@ -23,6 +26,8 @@
 import com.gwtplatform.mvp.client.proxy.TabContentProxyPlace;
 
 public class MainTabNetworkPresenter extends 
AbstractMainTabWithDetailsPresenter<NetworkView, NetworkListModel, 
MainTabNetworkPresenter.ViewDef, MainTabNetworkPresenter.ProxyDef> {
+
+    private SystemTreeModel systemTreeModel;
 
     @GenEvent
     public static class NetworkSelectionChange {
@@ -37,6 +42,7 @@
     }
 
     public interface ViewDef extends 
AbstractMainTabWithDetailsPresenter.ViewDef<NetworkView> {
+        void setProviderClickHandler(FieldUpdater<NetworkView, String> 
fieldUpdater);
     }
 
     @TabInfo(container = MainTabPanelPresenter.class)
@@ -46,9 +52,15 @@
     }
 
     @Inject
-    public MainTabNetworkPresenter(EventBus eventBus, ViewDef view, ProxyDef 
proxy,
-            PlaceManager placeManager, MainModelProvider<NetworkView, 
NetworkListModel> modelProvider) {
+    public MainTabNetworkPresenter(EventBus eventBus,
+            ViewDef view,
+            ProxyDef proxy,
+            PlaceManager placeManager,
+            MainModelProvider<NetworkView, NetworkListModel> modelProvider,
+            SystemTreeModelProvider systemTreeModelProvider) {
+
         super(eventBus, view, proxy, placeManager, modelProvider);
+        systemTreeModel = systemTreeModelProvider.getModel();
     }
 
     @Override
@@ -60,5 +72,16 @@
     protected PlaceRequest getMainTabRequest() {
         return new PlaceRequest(ApplicationPlaces.networkMainTabPlace);
     }
-}
 
+    @Override
+    protected void onBind() {
+        super.onBind();
+        getView().setProviderClickHandler(new FieldUpdater<NetworkView, 
String> () {
+
+            @Override
+            public void update(int index, NetworkView network, String value) {
+                
systemTreeModel.setSelectedItem(network.getProvidedBy().getProviderId());
+            }
+        });
+    }
+}
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/MainTabNetworkView.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/MainTabNetworkView.java
index 44deb5e..e28d186 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/MainTabNetworkView.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/MainTabNetworkView.java
@@ -9,6 +9,7 @@
 import org.ovirt.engine.core.common.queries.ConfigurationValues;
 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.LinkColumnWithTooltip;
 import 
org.ovirt.engine.ui.common.widget.table.column.SafeHtmlWithSafeHtmlTooltipColumn;
 import org.ovirt.engine.ui.common.widget.table.column.TextColumnWithTooltip;
 import org.ovirt.engine.ui.uicommonweb.UICommand;
@@ -22,6 +23,7 @@
 import org.ovirt.engine.ui.webadmin.widget.action.WebAdminButtonDefinition;
 import 
org.ovirt.engine.ui.webadmin.widget.table.column.NetworkRoleColumnHelper;
 
+import com.google.gwt.cell.client.FieldUpdater;
 import com.google.gwt.core.client.GWT;
 import com.google.gwt.safehtml.shared.SafeHtml;
 import com.google.gwt.safehtml.shared.SafeHtmlUtils;
@@ -44,6 +46,8 @@
     private final SafeHtml mgmtImage;
     private final SafeHtml vmImage;
     private final SafeHtml emptyImage;
+
+    private LinkColumnWithTooltip<NetworkView> providerColumn;
 
     @Inject
     public MainTabNetworkView(MainModelProvider<NetworkView, NetworkListModel> 
modelProvider,
@@ -140,10 +144,10 @@
         };
         getTable().addColumn(vlanColumn, constants.vlanNetwork(), "200px"); 
//$NON-NLS-1$
 
-        TextColumnWithTooltip<NetworkView> providerColumn = new 
TextColumnWithTooltip<NetworkView>() {
+        providerColumn = new LinkColumnWithTooltip<NetworkView>() {
             @Override
             public String getValue(NetworkView object) {
-                return object.getProvidedBy() == null ? "-" : 
object.getProviderName(); // $NON-NLS-1$
+                return object.getProvidedBy() == null ? new String() : 
object.getProviderName();
             }
         };
         getTable().addColumn(providerColumn, constants.providerNetwork(), 
"200px"); //$NON-NLS-1$
@@ -168,4 +172,9 @@
         });
 
     }
+
+    @Override
+    public void setProviderClickHandler(FieldUpdater<NetworkView, String> 
fieldUpdater) {
+        providerColumn.setFieldUpdater(fieldUpdater);
+    }
 }


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

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

Reply via email to