Mike Kolesnik has uploaded a new change for review. Change subject: engine: Allow updating network description & comment ......................................................................
engine: Allow updating network description & comment Always allow updating the description and comment fields, regardless of the network state. Change-Id: I670e862c075ec20ab6b39c63c4c140a798e19903 Bug-Url: https://bugzilla.redhat.com/1028739 Signed-off-by: Mike Kolesnik <[email protected]> --- M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/dc/UpdateNetworkCommand.java 1 file changed, 27 insertions(+), 0 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/93/21093/1 diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/dc/UpdateNetworkCommand.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/dc/UpdateNetworkCommand.java index 93ca3af..202eb75 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/dc/UpdateNetworkCommand.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/dc/UpdateNetworkCommand.java @@ -1,6 +1,7 @@ package org.ovirt.engine.core.bll.network.dc; import java.util.List; +import java.util.Objects; import org.apache.commons.lang.ObjectUtils; import org.ovirt.engine.core.bll.RenamedEntityInfoProvider; @@ -51,6 +52,10 @@ @Override protected boolean canDoAction() { + if (onlyPermittedFieldsChanged()) { + return true; + } + NetworkValidator validatorNew = new NetworkValidator(getNetwork()); UpdateNetworkValidator validatorOld = new UpdateNetworkValidator(getOldNetwork()); return validate(validatorNew.dataCenterExists()) @@ -68,6 +73,28 @@ || validate(validatorOld.externalNetworkDetailsUnchanged(getNetwork()))); } + /** + * @return <code>true</code> iff only the description or comment field were changed, otherwise <code>false</code>. + */ + private boolean onlyPermittedFieldsChanged() { + Network oldNetwork = getOldNetwork(); + Network newNetwork = getNetwork(); + + if (oldNetwork == null || newNetwork == null) { + return false; + } + + return Objects.equals(oldNetwork.getName(), newNetwork.getName()) && + Objects.equals(oldNetwork.getDataCenterId(), newNetwork.getDataCenterId()) && + Objects.equals(oldNetwork.getId(), newNetwork.getId()) && + Objects.equals(oldNetwork.getMtu(), newNetwork.getMtu()) && + Objects.equals(oldNetwork.getName(), newNetwork.getName()) && + Objects.equals(oldNetwork.getProvidedBy(), newNetwork.getProvidedBy()) && + Objects.equals(oldNetwork.getStp(), newNetwork.getStp()) && + Objects.equals(oldNetwork.getVlanId(), newNetwork.getVlanId()) && + Objects.equals(oldNetwork.isVmNetwork(), newNetwork.isVmNetwork()); + } + private boolean oldAndNewNetworkIsNotExternal() { return !getOldNetwork().isExternal() && !getNetwork().isExternal(); } -- To view, visit http://gerrit.ovirt.org/21093 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I670e862c075ec20ab6b39c63c4c140a798e19903 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: ovirt-engine-3.3 Gerrit-Owner: Mike Kolesnik <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
