Lior Vernia has uploaded a new change for review.

Change subject: webadmin: Added Provider/Networks subtab
......................................................................

webadmin: Added Provider/Networks subtab

Change-Id: I5806572ec4ac0c7b892dfa8ef714d8f93a8459a7
Signed-off-by: Lior Vernia <lver...@redhat.com>
---
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/providers/ProviderListModel.java
A 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/providers/ProviderNetworkListModel.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationConstants.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/gin/ManagedComponents.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/gin/PresenterModule.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/gin/uicommon/ProviderModule.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/place/ApplicationPlaces.java
A 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/presenter/tab/provider/SubTabProviderNetworkPresenter.java
A 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/provider/SubTabProviderNetworkView.java
9 files changed, 307 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/28/15028/1

diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/providers/ProviderListModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/providers/ProviderListModel.java
index 27dd2ac..607e590 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/providers/ProviderListModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/providers/ProviderListModel.java
@@ -79,6 +79,7 @@
         ObservableCollection<EntityModel> list = new 
ObservableCollection<EntityModel>();
 
         list.add(new ProviderGeneralModel());
+        list.add(new ProviderNetworkListModel());
 
         setDetailModels(list);
     }
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/providers/ProviderNetworkListModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/providers/ProviderNetworkListModel.java
new file mode 100644
index 0000000..3881afb
--- /dev/null
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/providers/ProviderNetworkListModel.java
@@ -0,0 +1,111 @@
+package org.ovirt.engine.ui.uicommonweb.models.providers;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.ovirt.engine.core.common.businessentities.Provider;
+import org.ovirt.engine.core.common.queries.IdQueryParameters;
+import org.ovirt.engine.core.common.queries.VdcQueryType;
+import org.ovirt.engine.ui.uicommonweb.UICommand;
+import org.ovirt.engine.ui.uicommonweb.models.SearchableListModel;
+import org.ovirt.engine.ui.uicompat.ConstantsManager;
+
+public class ProviderNetworkListModel extends SearchableListModel {
+
+    private UICommand privateDiscoverCommand;
+    private UICommand privateRemoveCommand;
+
+    public ProviderNetworkListModel() {
+        
setTitle(ConstantsManager.getInstance().getConstants().networkInterfacesTitle());
+        setHashName("networks"); //$NON-NLS-1$
+
+        setDiscoverCommand(new UICommand("Discover", this)); //$NON-NLS-1$
+        setRemoveCommand(new UICommand("Remove", this)); //$NON-NLS-1$
+
+        updateActionAvailability();
+    }
+
+    public UICommand getDiscoverCommand() {
+        return privateDiscoverCommand;
+    }
+
+    private void setDiscoverCommand(UICommand value) {
+        privateDiscoverCommand = value;
+    }
+
+    public UICommand getRemoveCommand() {
+        return privateRemoveCommand;
+    }
+
+    private void setRemoveCommand(UICommand value) {
+        privateRemoveCommand = value;
+    }
+
+    @Override
+    protected void onEntityChanged() {
+        super.onEntityChanged();
+
+        if (getEntity() != null) {
+            getSearchCommand().execute();
+        }
+
+        updateActionAvailability();
+    }
+
+    @Override
+    protected void syncSearch() {
+        Provider provider = getEntity();
+        if (provider == null) {
+            return;
+        }
+
+        super.syncSearch(VdcQueryType.GetAllNetworksForProvider, new 
IdQueryParameters(provider.getId()));
+    }
+
+    private void discover() {
+    }
+
+    private void remove() {
+    }
+
+    @Override
+    protected void selectedItemsChanged() {
+        super.selectedItemsChanged();
+        updateActionAvailability();
+    }
+
+    private void updateActionAvailability() {
+        List tempVar = getSelectedItems();
+        ArrayList selectedItems =
+                (ArrayList) ((tempVar != null) ? tempVar : new ArrayList());
+
+        getRemoveCommand().setIsExecutionAllowed(selectedItems.size() > 0);
+    }
+
+    @Override
+    public void executeCommand(UICommand command) {
+        super.executeCommand(command);
+
+        if (command == getDiscoverCommand()) {
+            discover();
+        } else if (command == getRemoveCommand()) {
+            remove();
+        }
+    }
+
+    @Override
+    protected String getListName() {
+        return "ProviderNetworkListModel"; //$NON-NLS-1$
+    }
+
+    @Override
+    protected void onSelectedItemChanged() {
+        super.onSelectedItemChanged();
+        updateActionAvailability();
+    }
+
+    @Override
+    public Provider getEntity() {
+        return (Provider) super.getEntity();
+    }
+}
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationConstants.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationConstants.java
index 127321e..4a1bd33 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationConstants.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationConstants.java
@@ -2664,4 +2664,14 @@
 
     @DefaultStringValue("General")
     String providerGeneralSubTabLabel();
+
+    @DefaultStringValue("Networks")
+    String providerNetworksSubTabLabel();
+
+    // Provider Network
+    @DefaultStringValue("External ID")
+    String externalIdProviderNetwork();
+
+    @DefaultStringValue("Discover")
+    String discoverProviderNetwork();
 }
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/gin/ManagedComponents.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/gin/ManagedComponents.java
index 2c3bdfe..22998b9 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/gin/ManagedComponents.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/gin/ManagedComponents.java
@@ -77,6 +77,7 @@
 import org.ovirt.engine.ui.uicommonweb.models.pools.PoolVmListModel;
 import org.ovirt.engine.ui.uicommonweb.models.providers.ProviderGeneralModel;
 import org.ovirt.engine.ui.uicommonweb.models.providers.ProviderListModel;
+import 
org.ovirt.engine.ui.uicommonweb.models.providers.ProviderNetworkListModel;
 import org.ovirt.engine.ui.uicommonweb.models.quota.QuotaClusterListModel;
 import org.ovirt.engine.ui.uicommonweb.models.quota.QuotaEventListModel;
 import org.ovirt.engine.ui.uicommonweb.models.quota.QuotaListModel;
@@ -195,6 +196,7 @@
 import 
org.ovirt.engine.ui.webadmin.section.main.presenter.tab.pool.SubTabPoolVmPresenter;
 import 
org.ovirt.engine.ui.webadmin.section.main.presenter.tab.provider.ProviderSubTabPanelPresenter;
 import 
org.ovirt.engine.ui.webadmin.section.main.presenter.tab.provider.SubTabProviderGeneralPresenter;
+import 
org.ovirt.engine.ui.webadmin.section.main.presenter.tab.provider.SubTabProviderNetworkPresenter;
 import 
org.ovirt.engine.ui.webadmin.section.main.presenter.tab.quota.QuotaSubTabPanelPresenter;
 import 
org.ovirt.engine.ui.webadmin.section.main.presenter.tab.quota.SubTabQuotaClusterPresenter;
 import 
org.ovirt.engine.ui.webadmin.section.main.presenter.tab.quota.SubTabQuotaEventPresenter;
@@ -716,4 +718,8 @@
     AsyncProvider<SubTabProviderGeneralPresenter> 
getSubTabProviderGeneralPresenter();
 
     DetailModelProvider<ProviderListModel, ProviderGeneralModel> 
getSubTabProviderGeneralModelProvider();
+
+    AsyncProvider<SubTabProviderNetworkPresenter> 
getSubTabProviderNetworkPresenter();
+
+    SearchableDetailModelProvider<Network, ProviderListModel, 
ProviderNetworkListModel> getSubTabProviderNetworkModelProvider();
 }
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/gin/PresenterModule.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/gin/PresenterModule.java
index 892ddac..92cff8f 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/gin/PresenterModule.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/gin/PresenterModule.java
@@ -151,6 +151,7 @@
 import 
org.ovirt.engine.ui.webadmin.section.main.presenter.tab.pool.SubTabPoolVmPresenter;
 import 
org.ovirt.engine.ui.webadmin.section.main.presenter.tab.provider.ProviderSubTabPanelPresenter;
 import 
org.ovirt.engine.ui.webadmin.section.main.presenter.tab.provider.SubTabProviderGeneralPresenter;
+import 
org.ovirt.engine.ui.webadmin.section.main.presenter.tab.provider.SubTabProviderNetworkPresenter;
 import 
org.ovirt.engine.ui.webadmin.section.main.presenter.tab.quota.QuotaSubTabPanelPresenter;
 import 
org.ovirt.engine.ui.webadmin.section.main.presenter.tab.quota.SubTabQuotaClusterPresenter;
 import 
org.ovirt.engine.ui.webadmin.section.main.presenter.tab.quota.SubTabQuotaEventPresenter;
@@ -342,6 +343,7 @@
 import 
org.ovirt.engine.ui.webadmin.section.main.view.tab.pool.SubTabPoolVmView;
 import 
org.ovirt.engine.ui.webadmin.section.main.view.tab.provider.ProviderSubTabPanelView;
 import 
org.ovirt.engine.ui.webadmin.section.main.view.tab.provider.SubTabProviderGeneralView;
+import 
org.ovirt.engine.ui.webadmin.section.main.view.tab.provider.SubTabProviderNetworkView;
 import 
org.ovirt.engine.ui.webadmin.section.main.view.tab.quota.QuotaSubTabPanelView;
 import 
org.ovirt.engine.ui.webadmin.section.main.view.tab.quota.SubTabQuotaClusterView;
 import 
org.ovirt.engine.ui.webadmin.section.main.view.tab.quota.SubTabQuotaEventView;
@@ -874,6 +876,10 @@
                 SubTabProviderGeneralPresenter.ViewDef.class,
                 SubTabProviderGeneralView.class,
                 SubTabProviderGeneralPresenter.ProxyDef.class);
+        bindPresenter(SubTabProviderNetworkPresenter.class,
+                SubTabProviderNetworkPresenter.ViewDef.class,
+                SubTabProviderNetworkView.class,
+                SubTabProviderNetworkPresenter.ProxyDef.class);
 
         // Main section: popups
 
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/gin/uicommon/ProviderModule.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/gin/uicommon/ProviderModule.java
index 95cc7d4..36ef4d8 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/gin/uicommon/ProviderModule.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/gin/uicommon/ProviderModule.java
@@ -1,16 +1,20 @@
 package org.ovirt.engine.ui.webadmin.gin.uicommon;
 
+import org.ovirt.engine.core.common.businessentities.network.Network;
 import 
org.ovirt.engine.ui.common.presenter.AbstractModelBoundPopupPresenterWidget;
 import 
org.ovirt.engine.ui.common.presenter.popup.RemoveConfirmationPopupPresenterWidget;
 import org.ovirt.engine.ui.common.uicommon.model.DetailModelProvider;
 import org.ovirt.engine.ui.common.uicommon.model.DetailTabModelProvider;
 import org.ovirt.engine.ui.common.uicommon.model.MainModelProvider;
 import org.ovirt.engine.ui.common.uicommon.model.MainTabModelProvider;
+import org.ovirt.engine.ui.common.uicommon.model.SearchableDetailModelProvider;
+import 
org.ovirt.engine.ui.common.uicommon.model.SearchableDetailTabModelProvider;
 import org.ovirt.engine.ui.uicommonweb.UICommand;
 import org.ovirt.engine.ui.uicommonweb.models.ConfirmationModel;
 import org.ovirt.engine.ui.uicommonweb.models.Model;
 import org.ovirt.engine.ui.uicommonweb.models.providers.ProviderGeneralModel;
 import org.ovirt.engine.ui.uicommonweb.models.providers.ProviderListModel;
+import 
org.ovirt.engine.ui.uicommonweb.models.providers.ProviderNetworkListModel;
 import org.ovirt.engine.ui.webadmin.gin.ClientGinjector;
 import 
org.ovirt.engine.ui.webadmin.section.main.presenter.popup.provider.ProviderPopupPresenterWidget;
 
@@ -66,6 +70,39 @@
                 ProviderGeneralModel.class);
     }
 
+    // Searchable Detail Models
+
+    @Provides
+    @Singleton
+    public SearchableDetailModelProvider<Network, ProviderListModel, 
ProviderNetworkListModel> getNetworkClusterListProvider(ClientGinjector 
ginjector,
+            // final Provider<DicoverProviderPopupPresenterWidget> 
discoverPopupProvider,
+            final Provider<RemoveConfirmationPopupPresenterWidget> 
removeConfirmPopupProvider) {
+        return new SearchableDetailTabModelProvider<Network, 
ProviderListModel, ProviderNetworkListModel>(ginjector,
+                ProviderListModel.class,
+                ProviderNetworkListModel.class) {
+            @Override
+            public AbstractModelBoundPopupPresenterWidget<? extends Model, ?> 
getModelPopup(ProviderNetworkListModel source,
+                    UICommand lastExecutedCommand,
+                    Model windowModel) {
+                // if (lastExecutedCommand == getModel().getDiscoverCommand()) 
{
+                // return discoverPopupProvider.get();
+                // } else {
+                    return super.getModelPopup(source, lastExecutedCommand, 
windowModel);
+                // }
+            }
+
+            @Override
+            public AbstractModelBoundPopupPresenterWidget<? extends 
ConfirmationModel, ?> getConfirmModelPopup(ProviderNetworkListModel source,
+                    UICommand lastExecutedCommand) {
+                if (lastExecutedCommand == getModel().getRemoveCommand()) {
+                    return removeConfirmPopupProvider.get();
+                } else {
+                    return super.getConfirmModelPopup(source, 
lastExecutedCommand);
+                }
+                }
+        };
+    }
+
     @Override
     protected void configure() {
     }
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/place/ApplicationPlaces.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/place/ApplicationPlaces.java
index 7d3739b..f71aeb2 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/place/ApplicationPlaces.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/place/ApplicationPlaces.java
@@ -297,6 +297,9 @@
     // Provider
     public static final String providerGeneralSubTabPlace = 
providerMainTabPlace + SUB_TAB_PREFIX + "general"; //$NON-NLS-1$
 
+    public static final String providerNetworkSubTabPlace = 
providerMainTabPlace + SUB_TAB_PREFIX
+            + "networks"; //$NON-NLS-1$
+
 
     // Default places
 
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/presenter/tab/provider/SubTabProviderNetworkPresenter.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/presenter/tab/provider/SubTabProviderNetworkPresenter.java
new file mode 100644
index 0000000..4723e40
--- /dev/null
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/presenter/tab/provider/SubTabProviderNetworkPresenter.java
@@ -0,0 +1,65 @@
+package org.ovirt.engine.ui.webadmin.section.main.presenter.tab.provider;
+
+import org.ovirt.engine.core.common.businessentities.Provider;
+import org.ovirt.engine.core.common.businessentities.network.Network;
+import org.ovirt.engine.ui.common.presenter.AbstractSubTabPresenter;
+import org.ovirt.engine.ui.common.uicommon.model.SearchableDetailModelProvider;
+import org.ovirt.engine.ui.common.widget.tab.ModelBoundTabData;
+import org.ovirt.engine.ui.uicommonweb.models.providers.ProviderListModel;
+import 
org.ovirt.engine.ui.uicommonweb.models.providers.ProviderNetworkListModel;
+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.tab.ProviderSelectionChangeEvent;
+
+import com.google.gwt.event.shared.EventBus;
+import com.google.inject.Inject;
+import com.gwtplatform.mvp.client.TabData;
+import com.gwtplatform.mvp.client.annotations.NameToken;
+import com.gwtplatform.mvp.client.annotations.ProxyCodeSplit;
+import com.gwtplatform.mvp.client.annotations.ProxyEvent;
+import com.gwtplatform.mvp.client.annotations.TabInfo;
+import com.gwtplatform.mvp.client.proxy.PlaceManager;
+import com.gwtplatform.mvp.client.proxy.PlaceRequest;
+import com.gwtplatform.mvp.client.proxy.RevealContentEvent;
+import com.gwtplatform.mvp.client.proxy.TabContentProxyPlace;
+
+public class SubTabProviderNetworkPresenter extends 
AbstractSubTabPresenter<Provider, ProviderListModel, ProviderNetworkListModel, 
SubTabProviderNetworkPresenter.ViewDef, 
SubTabProviderNetworkPresenter.ProxyDef> {
+
+    @ProxyCodeSplit
+    @NameToken(ApplicationPlaces.providerNetworkSubTabPlace)
+    public interface ProxyDef extends 
TabContentProxyPlace<SubTabProviderNetworkPresenter> {
+    }
+
+    public interface ViewDef extends AbstractSubTabPresenter.ViewDef<Provider> 
{
+    }
+
+    @TabInfo(container = ProviderSubTabPanelPresenter.class)
+    static TabData getTabData(ClientGinjector ginjector) {
+        return new 
ModelBoundTabData(ginjector.getApplicationConstants().providerNetworksSubTabLabel(),
 1,
+                ginjector.getSubTabProviderNetworkModelProvider());
+    }
+
+    @Inject
+    public SubTabProviderNetworkPresenter(EventBus eventBus, ViewDef view, 
ProxyDef proxy,
+            PlaceManager placeManager,
+            SearchableDetailModelProvider<Network, ProviderListModel, 
ProviderNetworkListModel> modelProvider) {
+        super(eventBus, view, proxy, placeManager, modelProvider);
+    }
+
+    @Override
+    protected void revealInParent() {
+        RevealContentEvent.fire(this, 
ProviderSubTabPanelPresenter.TYPE_SetTabContent, this);
+    }
+
+    @Override
+    protected PlaceRequest getMainTabRequest() {
+        return new PlaceRequest(ApplicationPlaces.providerMainTabPlace);
+    }
+
+    @ProxyEvent
+    public void onProviderSelectionChange(ProviderSelectionChangeEvent event) {
+        updateMainTabSelection(event.getSelectedItems());
+    }
+
+}
+
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/provider/SubTabProviderNetworkView.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/provider/SubTabProviderNetworkView.java
new file mode 100644
index 0000000..4d2ce00
--- /dev/null
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/provider/SubTabProviderNetworkView.java
@@ -0,0 +1,68 @@
+package org.ovirt.engine.ui.webadmin.section.main.view.tab.provider;
+
+import javax.inject.Inject;
+
+import org.ovirt.engine.core.common.businessentities.Provider;
+import org.ovirt.engine.core.common.businessentities.network.Network;
+import org.ovirt.engine.ui.common.uicommon.model.SearchableDetailModelProvider;
+import org.ovirt.engine.ui.common.widget.table.column.TextColumnWithTooltip;
+import org.ovirt.engine.ui.uicommonweb.UICommand;
+import org.ovirt.engine.ui.uicommonweb.models.providers.ProviderListModel;
+import 
org.ovirt.engine.ui.uicommonweb.models.providers.ProviderNetworkListModel;
+import org.ovirt.engine.ui.webadmin.ApplicationConstants;
+import org.ovirt.engine.ui.webadmin.ApplicationResources;
+import 
org.ovirt.engine.ui.webadmin.section.main.presenter.tab.provider.SubTabProviderNetworkPresenter;
+import org.ovirt.engine.ui.webadmin.section.main.view.AbstractSubTabTableView;
+import org.ovirt.engine.ui.webadmin.widget.action.WebAdminButtonDefinition;
+
+public class SubTabProviderNetworkView extends 
AbstractSubTabTableView<Provider, Network, ProviderListModel, 
ProviderNetworkListModel>
+        implements SubTabProviderNetworkPresenter.ViewDef {
+
+    private final ApplicationConstants constants;
+
+    @Inject
+    public SubTabProviderNetworkView(SearchableDetailModelProvider<Network, 
ProviderListModel, ProviderNetworkListModel> modelProvider,
+            ApplicationConstants constants,
+            ApplicationResources resources) {
+        super(modelProvider);
+        this.constants = constants;
+        initTable();
+        initWidget(getTable());
+    }
+
+    void initTable() {
+
+        TextColumnWithTooltip<Network> nameColumn =
+                new TextColumnWithTooltip<Network>() {
+                    @Override
+                    public String getValue(Network object) {
+                        return object.getName();
+                    }
+                };
+        getTable().addColumn(nameColumn, constants.nameNetwork());
+
+        TextColumnWithTooltip<Network> externalIdColumn =
+                new TextColumnWithTooltip<Network>() {
+                    @Override
+                    public String getValue(Network object) {
+                        return object.getId().toString();
+                    }
+                };
+        getTable().addColumn(externalIdColumn, 
constants.externalIdProviderNetwork(), "130px"); //$NON-NLS-1$
+
+        getTable().addActionButton(new 
WebAdminButtonDefinition<Network>(constants.discoverProviderNetwork()) {
+            @Override
+            protected UICommand resolveCommand() {
+                return getDetailModel().getDiscoverCommand();
+            }
+        });
+
+        getTable().addActionButton(new 
WebAdminButtonDefinition<Network>(constants.removeNetwork()) {
+            @Override
+            protected UICommand resolveCommand() {
+                return getDetailModel().getRemoveCommand();
+            }
+        });
+    }
+
+}


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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I5806572ec4ac0c7b892dfa8ef714d8f93a8459a7
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