Lior Vernia has uploaded a new change for review. Change subject: webadmin: Added plugin to Provider popup ......................................................................
webadmin: Added plugin to Provider popup Added a plugin field which appears when the selected provider type is OpenStack Network. Change-Id: Ic3c64a2e5f21f86ca4658c2792a1a9b8c9bd35e8 Signed-off-by: Lior Vernia <lver...@redhat.com> --- M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/providers/ProviderModel.java M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationConstants.java M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/provider/ProviderPopupView.java M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/provider/ProviderPopupView.ui.xml 4 files changed, 43 insertions(+), 6 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/44/15844/1 diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/providers/ProviderModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/providers/ProviderModel.java index 38956b7..4447af5 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/providers/ProviderModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/providers/ProviderModel.java @@ -5,7 +5,8 @@ import org.ovirt.engine.core.common.action.ProviderParameters; import org.ovirt.engine.core.common.action.VdcActionType; import org.ovirt.engine.core.common.action.VdcReturnValueBase; -import org.ovirt.engine.core.common.businessentities.MultiTenantProviderProperties; +import org.ovirt.engine.core.common.businessentities.OpenstackNetworkPluginType; +import org.ovirt.engine.core.common.businessentities.OpenstackNetworkProviderProperties; import org.ovirt.engine.core.common.businessentities.Provider; import org.ovirt.engine.core.common.businessentities.ProviderType; import org.ovirt.engine.core.common.errors.VdcBllErrors; @@ -53,6 +54,7 @@ private EntityModel username = new EntityModel(); private EntityModel password = new EntityModel(); private EntityModel tenantName = new EntityModel(); + private ListModel pluginType = new ListModel(); private UICommand testCommand; private EntityModel testResult = new EntityModel(); @@ -62,6 +64,10 @@ public ListModel getType() { return type; + } + + private boolean isTypeOpenStackNetwork() { + return (ProviderType) getType().getSelectedItem() == ProviderType.OPENSTACK_NETWORK; } public EntityModel getDescription() { @@ -86,6 +92,10 @@ public EntityModel getTenantName() { return tenantName; + } + + public ListModel getPluginType() { + return pluginType; } public UICommand getTestCommand() { @@ -117,7 +127,9 @@ getType().getSelectedItemChangedEvent().addListener(new IEventListener() { @Override public void eventRaised(Event ev, Object sender, EventArgs args) { - getTenantName().setIsAvailable(((ProviderType) getType().getSelectedItem()) == ProviderType.OPENSTACK_NETWORK); + boolean openStackNetProvider = isTypeOpenStackNetwork(); + getTenantName().setIsAvailable(openStackNetProvider); + getPluginType().setIsAvailable(openStackNetProvider); } }); @@ -128,11 +140,16 @@ getUsername().setEntity(provider.getUsername()); getPassword().setEntity(provider.getPassword()); getTenantName().setIsAvailable(false); + getPluginType().setIsAvailable(false); getType().setItems(Arrays.asList(ProviderType.values())); getType().setSelectedItem(provider.getType()); - if (getTenantName().getIsAvailable()) { - getTenantName().setEntity(((MultiTenantProviderProperties) provider.getAdditionalProperties()).getTenantName()); + getPluginType().setItems(Arrays.asList(OpenstackNetworkPluginType.values())); + if (isTypeOpenStackNetwork()) { + OpenstackNetworkProviderProperties properties = + (OpenstackNetworkProviderProperties) provider.getAdditionalProperties(); + getTenantName().setEntity(properties.getTenantName()); + getPluginType().setSelectedItem(properties.getPluginType()); } UICommand tempVar = new UICommand(CMD_SAVE, this); @@ -169,13 +186,20 @@ provider.setDescription((String) description.getEntity()); provider.setUrl((String) url.getEntity()); + if (isTypeOpenStackNetwork()) { + OpenstackNetworkProviderProperties properties = new OpenstackNetworkProviderProperties(); + properties.setPluginType((OpenstackNetworkPluginType) getPluginType().getSelectedItem()); + provider.setAdditionalProperties(properties); + } + boolean authenticationRequired = (Boolean) requiresAuthentication.getEntity(); provider.setRequiringAuthentication(authenticationRequired); if (authenticationRequired) { provider.setUsername((String) username.getEntity()); provider.setPassword((String) password.getEntity()); - if (getTenantName().getIsAvailable()) { - provider.setAdditionalProperties(new MultiTenantProviderProperties((String) getTenantName().getEntity())); + if (isTypeOpenStackNetwork()) { + ((OpenstackNetworkProviderProperties) provider.getAdditionalProperties()).setTenantName( + (String) getTenantName().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 a6702d4..2a7dc0e 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 @@ -2737,6 +2737,9 @@ @DefaultStringValue("Tenant Name") String tenantName(); + @DefaultStringValue("Networking Plugin") + String pluginType(); + @DefaultStringValue("Add") String addProvider(); diff --git a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/provider/ProviderPopupView.java b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/provider/ProviderPopupView.java index 0c3d915..a5e87f7 100644 --- a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/provider/ProviderPopupView.java +++ b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/provider/ProviderPopupView.java @@ -93,6 +93,11 @@ @WithElementId EntityModelTextBoxEditor tenantNameEditor; + @UiField(provided = true) + @Path(value = "pluginType.selectedItem") + @WithElementId + ListModelListBoxEditor<Object> pluginTypeEditor; + @UiField Style style; @@ -104,6 +109,7 @@ super(eventBus, resources); typeEditor = new ListModelListBoxEditor<Object>(new EnumRenderer()); + pluginTypeEditor = new ListModelListBoxEditor<Object>(new EnumRenderer()); requiresAuthenticationEditor = new EntityModelCheckBoxEditor(Align.RIGHT); this.resources = resources; @@ -125,6 +131,7 @@ usernameEditor.setLabel(constants.usernameProvider()); passwordEditor.setLabel(constants.passwordProvider()); tenantNameEditor.setLabel(constants.tenantName()); + pluginTypeEditor.setLabel(constants.pluginType()); } @Override diff --git a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/provider/ProviderPopupView.ui.xml b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/provider/ProviderPopupView.ui.xml index 9c93cfd..b0dbecf 100644 --- a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/provider/ProviderPopupView.ui.xml +++ b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/provider/ProviderPopupView.ui.xml @@ -53,6 +53,9 @@ <e:EntityModelPasswordBoxEditor ui:field="passwordEditor" addStyleNames="{style.authField}" /> <e:EntityModelTextBoxEditor ui:field="tenantNameEditor" addStyleNames="{style.authField}" /> </g:FlowPanel> + <g:FlowPanel addStyleNames="{style.sectionStyle}"> + <e:ListModelListBoxEditor ui:field="pluginTypeEditor" /> + </g:FlowPanel> </g:FlowPanel> </g:center> <g:south size="30"> -- To view, visit http://gerrit.ovirt.org/15844 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ic3c64a2e5f21f86ca4658c2792a1a9b8c9bd35e8 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