Lior Vernia has uploaded a new change for review. Change subject: webadmin: Disable static IP if equal to hostname ......................................................................
webadmin: Disable static IP if equal to hostname This to prevent a user from performing a move that would necessarily cause the engine to lost connectivity to a host. Change-Id: I46836fac331f3d510fc3be8d435bb71fb546d37c Bug-Url: https://bugzilla.redhat.com/989360 Signed-off-by: Lior Vernia <[email protected]> --- M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostInterfaceModel.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostManagementNetworkModel.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostSetupNetworksModel.java M frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/UIConstants.java 4 files changed, 27 insertions(+), 4 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/47/20347/1 diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostInterfaceModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostInterfaceModel.java index 2bfba7f..24e8e9f 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostInterfaceModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostInterfaceModel.java @@ -12,11 +12,11 @@ import org.ovirt.engine.ui.uicommonweb.validation.IpAddressValidation; import org.ovirt.engine.ui.uicommonweb.validation.NotEmptyValidation; import org.ovirt.engine.ui.uicommonweb.validation.SubnetMaskValidation; +import org.ovirt.engine.ui.uicompat.ConstantsManager; import org.ovirt.engine.ui.uicompat.Event; import org.ovirt.engine.ui.uicompat.EventArgs; import org.ovirt.engine.ui.uicompat.PropertyChangedEventArgs; -@SuppressWarnings("unused") public class HostInterfaceModel extends EntityModel { @@ -234,6 +234,13 @@ gateway = value; } + private boolean staticIpChangeAllowed = true; + + public void setStaticIpChangeAllowed(boolean staticIpChangeAllowed) { + this.staticIpChangeAllowed = staticIpChangeAllowed; + updateCanSpecify(); + } + public HostInterfaceModel() { this(false); } @@ -334,7 +341,9 @@ private void updateCanSpecify() { boolean isChangable = bootProtocolsAvailable && getIsStaticAddress(); - getAddress().setIsChangable(isChangable); + getAddress().setChangeProhibitionReason(isChangable && !staticIpChangeAllowed + ? ConstantsManager.getInstance().getConstants().staticIpAddressSameAsHostname() : null); + getAddress().setIsChangable(isChangable && staticIpChangeAllowed); getSubnet().setIsChangable(isChangable); getGateway().setIsChangable(isChangable); } diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostManagementNetworkModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostManagementNetworkModel.java index 0a87322..94f5717 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostManagementNetworkModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostManagementNetworkModel.java @@ -8,9 +8,9 @@ import org.ovirt.engine.ui.uicommonweb.validation.IpAddressValidation; import org.ovirt.engine.ui.uicommonweb.validation.NotEmptyValidation; import org.ovirt.engine.ui.uicommonweb.validation.SubnetMaskValidation; +import org.ovirt.engine.ui.uicompat.ConstantsManager; import org.ovirt.engine.ui.uicompat.PropertyChangedEventArgs; -@SuppressWarnings("unused") public class HostManagementNetworkModel extends EntityModel { @@ -215,6 +215,13 @@ this.originalNetParams = originalNetParams; } + private boolean staticIpChangeAllowed = true; + + public void setStaticIpChangeAllowed(boolean staticIpChangeAllowed) { + this.staticIpChangeAllowed = staticIpChangeAllowed; + updateCanSpecify(); + } + public HostManagementNetworkModel() { this(false); } @@ -287,7 +294,9 @@ private void updateCanSpecify() { boolean isChangable = bootProtocolsAvailable && getIsStaticAddress(); - getAddress().setIsChangable(isChangable); + getAddress().setChangeProhibitionReason(isChangable && !staticIpChangeAllowed + ? ConstantsManager.getInstance().getConstants().staticIpAddressSameAsHostname() : null); + getAddress().setIsChangable(isChangable && staticIpChangeAllowed); getSubnet().setIsChangable(isChangable); getGateway().setIsChangable(isChangable); } diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostSetupNetworksModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostSetupNetworksModel.java index 71b2f2b..eab30c2 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostSetupNetworksModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostSetupNetworksModel.java @@ -276,6 +276,7 @@ mgmntDialogModel.getAddress().setEntity(entity.getAddress()); mgmntDialogModel.getSubnet().setEntity(entity.getSubnet()); mgmntDialogModel.getGateway().setEntity(entity.getGateway()); + mgmntDialogModel.setStaticIpChangeAllowed(!getEntity().getHostName().equals(entity.getAddress())); mgmntDialogModel.setNoneBootProtocolAvailable(false); mgmntDialogModel.getBondingOptions().setIsAvailable(false); mgmntDialogModel.getInterface().setIsAvailable(false); @@ -322,6 +323,7 @@ networkDialogModel.getAddress().setEntity(entity.getAddress()); networkDialogModel.getSubnet().setEntity(entity.getSubnet()); networkDialogModel.getGateway().setEntity(entity.getGateway()); + networkDialogModel.setStaticIpChangeAllowed(!getEntity().getHostName().equals(entity.getAddress())); networkDialogModel.getGateway() .setIsAvailable((Boolean) AsyncDataProvider.getConfigValuePreConverted(ConfigurationValues.MultipleGatewaysSupported, getEntity().getVdsGroupCompatibilityVersion().getValue())); diff --git a/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/UIConstants.java b/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/UIConstants.java index aaf041e..3c8129f 100644 --- a/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/UIConstants.java +++ b/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/UIConstants.java @@ -379,6 +379,9 @@ @DefaultStringValue("Edit Management Network") String editManagementNetworkTitle(); + @DefaultStringValue("The network's IP address cannot be statically modified if it's the same address supplied as the hostname.") + String staticIpAddressSameAsHostname(); + @DefaultStringValue("InterfaceList") String interfaceListTitle(); -- To view, visit http://gerrit.ovirt.org/20347 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I46836fac331f3d510fc3be8d435bb71fb546d37c Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: ovirt-engine-3.3 Gerrit-Owner: Lior Vernia <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
