ofri masad has uploaded a new change for review. Change subject: webadmin: Add details to general Cluster sub-tab ......................................................................
webadmin: Add details to general Cluster sub-tab Added some information about the selected Cluster to sub-tab 'General' under the main-tab Cluster. Change-Id: I9933cd4ec03a3df35dc4ff8fa157854b776a632c Signed-off-by: Ofri Masad <[email protected]> --- M frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/CommonApplicationConstants.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/clusters/ClusterGeneralModel.java A frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/cluster/ClusterGeneralModelForm.java M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/cluster/SubTabClusterGeneralView.java M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/cluster/SubTabClusterGeneralView.ui.xml 5 files changed, 206 insertions(+), 4 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/26/11726/1 diff --git a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/CommonApplicationConstants.java b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/CommonApplicationConstants.java index 5ab4dba..5a7b017 100644 --- a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/CommonApplicationConstants.java +++ b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/CommonApplicationConstants.java @@ -1134,4 +1134,27 @@ @DefaultStringValue("MAC") String macVmGuestAgent(); + @DefaultStringValue("Name") + String nameCluster(); + + @DefaultStringValue("Description") + String descriptionCluster(); + + @DefaultStringValue("Data Center") + String nameStoragePool(); + + @DefaultStringValue("CPU Type") + String cpuNameCluster(); + + @DefaultStringValue("Use Threads as CPU") + String cpuThreadsCluster(); + + @DefaultStringValue("Max Memory Over Commitment") + String memoryOptimizationCluster(); + + @DefaultStringValue("Resilience Policy") + String resiliencePolicyCluster(); + + @DefaultStringValue("High Priority Only") + String highPriorityOnly(); } diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/clusters/ClusterGeneralModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/clusters/ClusterGeneralModel.java index 5563828..ea785f8 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/clusters/ClusterGeneralModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/clusters/ClusterGeneralModel.java @@ -8,8 +8,10 @@ import org.ovirt.engine.core.common.action.VdcActionType; import org.ovirt.engine.core.common.action.VdcReturnValueBase; import org.ovirt.engine.core.common.action.gluster.RemoveGlusterServerParameters; +import org.ovirt.engine.core.common.businessentities.MigrateOnErrorOptions; import org.ovirt.engine.core.common.businessentities.VDS; import org.ovirt.engine.core.common.businessentities.VDSGroup; +import org.ovirt.engine.core.common.businessentities.VdsSelectionAlgorithm; import org.ovirt.engine.core.common.businessentities.gluster.GlusterStatus; import org.ovirt.engine.core.common.businessentities.gluster.GlusterVolumeEntity; import org.ovirt.engine.core.common.queries.IdQueryParameters; @@ -135,6 +137,15 @@ detachNewGlusterHostsCommand = value; } + private String name; + private String description; + private String cpuName; + private String dataCenterName; + private int memoryOverCommit; + private VdsSelectionAlgorithm clusterPolicy; + private MigrateOnErrorOptions resiliencePolicy; + private boolean cpuThreads; + public void setConsoleAddressPartiallyOverridden(Boolean consoleAddressPartiallyOverridden) { if (this.consoleAddressPartiallyOverridden != consoleAddressPartiallyOverridden) { this.consoleAddressPartiallyOverridden = consoleAddressPartiallyOverridden; @@ -223,9 +234,22 @@ UpdateVolumeDetails(); updateAlerts(); updateConsoleAddressPartiallyOverridden(getEntity()); + updateProperties(); } UpdateActionAvailability(); + } + + private void updateProperties() { + VDSGroup vdsGroup = getEntity(); + + setName(vdsGroup.getname()); + setDescription(vdsGroup.getdescription()); + setCpuName(vdsGroup.getcpu_name()); + setDataCenterName(vdsGroup.getStoragePoolName()); + setMemoryOverCommit(vdsGroup.getmax_vds_memory_over_commit()); + setClusterPolicy(vdsGroup.getselection_algorithm()); + setResiliencePolicy(vdsGroup.getMigrateOnError()); } private void updateConsoleAddressPartiallyOverridden(VDSGroup cluster) { @@ -535,4 +559,68 @@ Cancel(); } } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + + public String getCpuName() { + return cpuName; + } + + public void setCpuName(String cpuName) { + this.cpuName = cpuName; + } + + public String getDataCenterName() { + return dataCenterName; + } + + public void setDataCenterName(String dataCenterName) { + this.dataCenterName = dataCenterName; + } + + public int getMemoryOverCommit() { + return memoryOverCommit; + } + + public void setMemoryOverCommit(int memoryOverCommit) { + this.memoryOverCommit = memoryOverCommit; + } + + public VdsSelectionAlgorithm getClusterPolicy() { + return clusterPolicy; + } + + public void setClusterPolicy(VdsSelectionAlgorithm clusterPolicy) { + this.clusterPolicy = clusterPolicy; + } + + public MigrateOnErrorOptions getResiliencePolicy() { + return resiliencePolicy; + } + + public void setResiliencePolicy(MigrateOnErrorOptions resiliencePolicy) { + this.resiliencePolicy = resiliencePolicy; + } + + public boolean isCpuThreads() { + return cpuThreads; + } + + public void setCpuThreads(boolean cpuThreads) { + this.cpuThreads = cpuThreads; + } } diff --git a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/cluster/ClusterGeneralModelForm.java b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/cluster/ClusterGeneralModelForm.java new file mode 100644 index 0000000..868beb1 --- /dev/null +++ b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/cluster/ClusterGeneralModelForm.java @@ -0,0 +1,74 @@ +package org.ovirt.engine.ui.webadmin.section.main.view.tab.cluster; + +import org.ovirt.engine.ui.common.CommonApplicationConstants; +import org.ovirt.engine.ui.common.uicommon.model.ModelProvider; +import org.ovirt.engine.ui.common.widget.form.FormItem; +import org.ovirt.engine.ui.common.widget.label.TextBoxLabel; +import org.ovirt.engine.ui.common.widget.uicommon.AbstractModelBoundFormWidget; +import org.ovirt.engine.ui.uicommonweb.models.clusters.ClusterGeneralModel; + +import com.google.gwt.core.client.GWT; +import com.google.gwt.editor.client.SimpleBeanEditorDriver; + +public class ClusterGeneralModelForm extends AbstractModelBoundFormWidget<ClusterGeneralModel> { + + private CommonApplicationConstants constants; + + interface Driver extends SimpleBeanEditorDriver<ClusterGeneralModel, ClusterGeneralModelForm> { + Driver driver = GWT.create(Driver.class); + } + + TextBoxLabel name = new TextBoxLabel(); + TextBoxLabel description = new TextBoxLabel(); + TextBoxLabel dataCenterName = new TextBoxLabel(); + TextBoxLabel cpuName = new TextBoxLabel(); + + + + public ClusterGeneralModelForm(ModelProvider<ClusterGeneralModel> modelProvider, CommonApplicationConstants constants) { + super(modelProvider, 2, 7); + + Driver.driver.initialize(this); + this.constants = constants; + update(); + } + + @Override + protected void doEdit(ClusterGeneralModel model) { + Driver.driver.edit(model); + } + + @Override + public void update() { + super.update(); + + TextBoxLabel cpuThreads = new TextBoxLabel(); + cpuThreads.setText(getModel().isCpuThreads() ? constants.yes() : constants.no()); + + TextBoxLabel resiliencePolicy = new TextBoxLabel(); + switch (getModel().getResiliencePolicy()) { + case YES: + resiliencePolicy.setText(constants.yes()); + break; + case NO: + resiliencePolicy.setText(constants.no()); + break; + case HA_ONLY: + resiliencePolicy.setText(constants.highPriorityOnly()); + break; + } + + TextBoxLabel memoryOverCommit = new TextBoxLabel(); + memoryOverCommit.setText(String.valueOf(getModel().getMemoryOverCommit())); + + formBuilder.setColumnsWidth("240px", "160px"); //$NON-NLS-1$ //$NON-NLS-2$ + formBuilder.addFormItem(new FormItem(constants.nameCluster(), name, 0, 0)); + formBuilder.addFormItem(new FormItem(constants.descriptionCluster(), description, 1, 0)); + formBuilder.addFormItem(new FormItem(constants.nameStoragePool(), dataCenterName, 2, 0)); + formBuilder.addFormItem(new FormItem(constants.cpuNameCluster(), cpuName, 3, 0)); + formBuilder.addFormItem(new FormItem(constants.cpuThreadsCluster(), cpuThreads, 0, 1)); + formBuilder.addFormItem(new FormItem(constants.memoryOptimizationCluster(), memoryOverCommit, 1,1)); + formBuilder.addFormItem(new FormItem(constants.resiliencePolicyCluster(), resiliencePolicy, 2, 1)); + } + +} diff --git a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/cluster/SubTabClusterGeneralView.java b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/cluster/SubTabClusterGeneralView.java index c948ca5..afd8638 100644 --- a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/cluster/SubTabClusterGeneralView.java +++ b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/cluster/SubTabClusterGeneralView.java @@ -55,6 +55,10 @@ // to find the icon for alert messages: private final ApplicationResources resources; + @UiField(provided = true) + @Ignore + ClusterGeneralModelForm form; + @UiField HorizontalPanel policyPanel; @@ -129,6 +133,7 @@ // Inject a reference to the resources: this.resources = resources; + this.form = new ClusterGeneralModelForm(modelProvider, constants); initSliders(); initLabels(); @@ -234,7 +239,7 @@ policyPanel.setVisible(selectedItem.supportsVirtService()); volumeSummaryPanel.setVisible(selectedItem.supportsGlusterService()); - + form.update(); } @Override diff --git a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/cluster/SubTabClusterGeneralView.ui.xml b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/cluster/SubTabClusterGeneralView.ui.xml index 0440227..864fb13 100644 --- a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/cluster/SubTabClusterGeneralView.ui.xml +++ b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/cluster/SubTabClusterGeneralView.ui.xml @@ -2,7 +2,8 @@ <!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent"> <ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder" xmlns:g="urn:import:com.google.gwt.user.client.ui" xmlns:f="urn:import:org.ovirt.engine.ui.common.widget.form" - xmlns:w="urn:import:org.ovirt.engine.ui.common.widget"> + xmlns:w="urn:import:org.ovirt.engine.ui.common.widget" + xmlns:c="urn:import:org.ovirt.engine.ui.webadmin.section.main.view.tab.cluster"> <ui:with field='constants' type='org.ovirt.engine.ui.webadmin.ApplicationConstants' /> @@ -66,8 +67,14 @@ color: black; text-decoration: underline; } + + .leftPanel { + border-right: 1px solid #c0c0c0; + } </ui:style> - <g:FlowPanel> + <g:DockLayoutPanel height="100%"> + <g:west size="570"> + <g:FlowPanel addStyleNames="{style.leftPanel}"> <g:HorizontalPanel spacing="5"> <g:HorizontalPanel ui:field="policyPanel" addStyleNames="{style.marginLeft}"> <g:FlowPanel width="400px"> @@ -110,6 +117,11 @@ </div> <g:FlowPanel ui:field="alertsList"/> </g:HTMLPanel> - </g:FlowPanel> + </g:FlowPanel> + </g:west> + <g:center size="300"> + <c:ClusterGeneralModelForm ui:field="form" /> + </g:center> + </g:DockLayoutPanel> </ui:UiBinder> -- To view, visit http://gerrit.ovirt.org/11726 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I9933cd4ec03a3df35dc4ff8fa157854b776a632c Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: ofri masad <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
