Alona Kaplan has uploaded a new change for review. Change subject: webadmin: When vnic's property become disabled again it should be reseted ......................................................................
webadmin: When vnic's property become disabled again it should be reseted Some vnic's properties update is blocked if the vm is up and the vnic is plugged. Opening the update vnic dialog and changing the vnic to unplugged, unblocks these properties. Changing the vnic back to plugged should revert the changes done on these properties. Change-Id: I39d70d8948f32e8e6f45f2d1eba5a3d26bb04975 Bug-Url: https://bugzilla.redhat.com/909852 Signed-off-by: Alona Kaplan <[email protected]> --- M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/BaseEditVmInterfaceModel.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/EditVmInterfaceModel.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/NewVmInterfaceModel.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/VmInterfaceModel.java 4 files changed, 66 insertions(+), 23 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/30/11930/1 diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/BaseEditVmInterfaceModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/BaseEditVmInterfaceModel.java index 030e0ba..f67037b 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/BaseEditVmInterfaceModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/BaseEditVmInterfaceModel.java @@ -1,6 +1,7 @@ package org.ovirt.engine.ui.uicommonweb.models.vms; import java.util.ArrayList; +import java.util.List; import org.ovirt.engine.core.common.action.AddVmInterfaceParameters; import org.ovirt.engine.core.common.action.VdcActionParametersBase; @@ -43,22 +44,12 @@ VmInterfaceType.forValue(selectedNicType) == VmInterfaceType.rtl8139_pv); getNicType().setItems(nicTypes); - if (selectedNicType == null || !nicTypes.contains(VmInterfaceType.forValue(selectedNicType))) - { - selectedNicType = AsyncDataProvider.GetDefaultNicType(getVm().getOs()).getValue(); - } - - getNicType().setSelectedItem(VmInterfaceType.forValue(selectedNicType)); + initSelectedType(); getName().setEntity(getNic().getName()); initMAC(); - if (hotUpdateSupported) { - getLinked().setEntity(getNic().isLinked()); - } else { - getLinked().setEntity(true); - getLinked().setIsAvailable(false); - } + initLinked(); initPortMirroring(); initNetworks(); @@ -91,7 +82,9 @@ } @Override - protected void initSelectedNetwork(ArrayList<Network> networks) { + protected void initSelectedNetwork() { + List<Network> networks = (List<Network>) getNetwork().getItems(); + networks = networks == null ? new ArrayList<Network>() : networks; for (Network a : networks) { String networkName = a == null ? null : a.getName(); @@ -112,6 +105,20 @@ } @Override + protected void initSelectedType() { + Integer selectedNicType = getNic().getType(); + ArrayList<VmInterfaceType> nicTypes = (ArrayList<VmInterfaceType>) getNicType().getItems(); + nicTypes = nicTypes == null ? new ArrayList<VmInterfaceType>() : nicTypes; + + if (selectedNicType == null || !nicTypes.contains(VmInterfaceType.forValue(selectedNicType))) + { + selectedNicType = AsyncDataProvider.GetDefaultNicType(getVm().getOs()).getValue(); + } + + getNicType().setSelectedItem(VmInterfaceType.forValue(selectedNicType)); + } + + @Override protected void initMAC() { getMAC().setIsChangable(false); getMAC().setEntity(getNic().getMacAddress()); @@ -124,6 +131,16 @@ } @Override + protected void initLinked() { + if (hotUpdateSupported) { + getLinked().setEntity(getNic().isLinked()); + } else { + getLinked().setEntity(true); + getLinked().setIsAvailable(false); + } + } + + @Override protected VdcActionParametersBase createVdcActionParameters(VmNetworkInterface nicToSave) { return new AddVmInterfaceParameters(getVm().getId(), nicToSave); } diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/EditVmInterfaceModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/EditVmInterfaceModel.java index e10d758..8d645e1 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/EditVmInterfaceModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/EditVmInterfaceModel.java @@ -53,6 +53,12 @@ .add(ConstantsManager.getInstance() .getConstants() .hotPortMirroringUpdateNotSupported()); + + initSelectedType(); + getEnableMac().setEntity(false); + initMAC(); + initPortMirroring(); + } getNicType().setIsChangable(!plug); @@ -81,6 +87,7 @@ .getConstants() .hotLinkStateUpdateNotSupportedWithPortMirroring()); getLinked().setIsChangable(false); + initLinked(); return; } } @@ -103,6 +110,7 @@ .getConstants() .hotNetworkUpdateNotSupportedWithPortMirroring()); getNetwork().setIsChangable(false); + initSelectedNetwork(); return; } } else if (isVmUp() && isPlugged) { @@ -110,6 +118,7 @@ .getMessages() .hotNetworkUpdateNotSupported(getClusterCompatibilityVersion().toString())); getNetwork().setIsChangable(false); + initSelectedNetwork(); return; } } diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/NewVmInterfaceModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/NewVmInterfaceModel.java index 71b430d..259c664 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/NewVmInterfaceModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/NewVmInterfaceModel.java @@ -1,6 +1,7 @@ package org.ovirt.engine.ui.uicommonweb.models.vms; import java.util.ArrayList; +import java.util.List; import org.ovirt.engine.core.common.action.AddVmInterfaceParameters; import org.ovirt.engine.core.common.action.VdcActionParametersBase; @@ -37,7 +38,7 @@ protected void init() { String newNicName = AsyncDataProvider.GetNewNicName(getVmNicList()); getNicType().setItems(AsyncDataProvider.GetNicTypeList(getVm().getOs(), false)); - getNicType().setSelectedItem(AsyncDataProvider.GetDefaultNicType(getVm().getOs())); + initSelectedType(); getName().setEntity(newNicName); initMAC(); @@ -49,12 +50,7 @@ getPlugged().setIsChangable(hotPlugSupported); getPlugged().setEntity(true); - if (hotUpdateSupported) { - getLinked().setEntity(true); - } else { - getLinked().setEntity(true); - getLinked().setIsAvailable(false); - } + initLinked(); initPortMirroring(); initNetworks(); @@ -77,7 +73,9 @@ } @Override - protected void initSelectedNetwork(ArrayList<Network> networks) { + protected void initSelectedNetwork() { + List<Network> networks = (List<Network>) getNetwork().getItems(); + networks = networks == null ? new ArrayList<Network>() : networks; for (Network network : networks) { if (ENGINE_NETWORK_NAME.equals(network.getName())) { getNetwork().setSelectedItem(network); @@ -85,6 +83,11 @@ } } getNetwork().setSelectedItem(networks.size() > 0 ? networks.get(0) : null); + } + + @Override + protected void initSelectedType() { + getNicType().setSelectedItem(AsyncDataProvider.GetDefaultNicType(getVm().getOs())); } @Override @@ -100,6 +103,16 @@ } @Override + protected void initLinked() { + if (hotUpdateSupported) { + getLinked().setEntity(true); + } else { + getLinked().setEntity(true); + getLinked().setIsAvailable(false); + } + } + + @Override protected VdcActionParametersBase createVdcActionParameters(VmNetworkInterface nicToSave) { return new AddVmInterfaceParameters(getVm().getId(), nicToSave); } diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/VmInterfaceModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/VmInterfaceModel.java index f42f2f9..df790a4 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/VmInterfaceModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/VmInterfaceModel.java @@ -455,7 +455,7 @@ } getNetwork().setItems(networks); - initSelectedNetwork(networks); + initSelectedNetwork(); // fetch completed okCommand.setIsExecutionAllowed(true); @@ -477,7 +477,9 @@ getCommands().add(cancelCommand); } - protected abstract void initSelectedNetwork(ArrayList<Network> networks); + protected abstract void initSelectedNetwork(); + + protected abstract void initSelectedType(); @Override public void ExecuteCommand(UICommand command) @@ -498,6 +500,8 @@ protected abstract void initPortMirroring(); + protected abstract void initLinked(); + protected void onSaveMAC(VmNetworkInterface nicToSave) { nicToSave.setMacAddress(getMAC().getIsChangable() ? (getMAC().getEntity() == null ? null : ((String) (getMAC().getEntity())).toLowerCase()) : getDefaultMacAddress()); -- To view, visit http://gerrit.ovirt.org/11930 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I39d70d8948f32e8e6f45f2d1eba5a3d26bb04975 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Alona Kaplan <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
