Moti Asayag has uploaded a new change for review. Change subject: engine: Extract nic labels check into a method ......................................................................
engine: Extract nic labels check into a method The nic is recurrently being checked whether it is labeled. The same check is extracted into a method. Change-Id: Icef35e6a0f8a1334e871d2bdc718fb0eb1b9ece6 Signed-off-by: Moti Asayag <[email protected]> --- M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ChangeVDSClusterCommand.java M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/dc/GetNetworkLabelsByHostNicIdQuery.java M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/dc/UpdateNetworkCommand.java M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/host/LabelNicCommand.java M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/host/SetupNetworksHelper.java M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/host/UnlabelNicCommand.java M backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/NetworkUtils.java 7 files changed, 22 insertions(+), 10 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/93/23193/1 diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ChangeVDSClusterCommand.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ChangeVDSClusterCommand.java index 18023df..a475eb6 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ChangeVDSClusterCommand.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ChangeVDSClusterCommand.java @@ -383,7 +383,7 @@ Map<String, VdsNetworkInterface> nicsByNetwork, Map<String, List<Network>> networksByLabel, VdsNetworkInterface nic) { - if (nic.getLabels() == null) { + if (!NetworkUtils.isLabeled(nic)) { return; } diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/dc/GetNetworkLabelsByHostNicIdQuery.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/dc/GetNetworkLabelsByHostNicIdQuery.java index cf98ef8..6326a24 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/dc/GetNetworkLabelsByHostNicIdQuery.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/dc/GetNetworkLabelsByHostNicIdQuery.java @@ -9,6 +9,7 @@ import org.ovirt.engine.core.common.businessentities.network.VdsNetworkInterface; import org.ovirt.engine.core.common.businessentities.network.pseudo.NetworkLabel; import org.ovirt.engine.core.common.queries.IdQueryParameters; +import org.ovirt.engine.core.utils.NetworkUtils; public class GetNetworkLabelsByHostNicIdQuery<P extends IdQueryParameters> extends QueriesCommandBase<P> { public GetNetworkLabelsByHostNicIdQuery(P parameters) { @@ -18,7 +19,7 @@ @Override protected void executeQueryCommand() { VdsNetworkInterface nic = getDbFacade().getInterfaceDao().get(getParameters().getId()); - getQueryReturnValue().setReturnValue(nic == null || nic.getLabels() == null ? Collections.<NetworkLabel> emptyList() + getQueryReturnValue().setReturnValue(nic == null || !NetworkUtils.isLabeled(nic) ? Collections.<NetworkLabel> emptyList() : convertToNetworkLabels(nic.getLabels())); } 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 63a06b7..ae7b25b 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 @@ -183,7 +183,7 @@ List<VdsNetworkInterface> nics = getDbFacade().getInterfaceDao().getVdsInterfacesByNetworkId(network.getId()); for (VdsNetworkInterface nic : nics) { - if (nic.getLabels() != null && nic.getLabels().contains(oldLabel)) { + if (NetworkUtils.isLabeled(nic) && nic.getLabels().contains(oldLabel)) { new ValidationResult(VdcBllMessages.ACTION_TYPE_FAILED_NETWORK_LABEL_RENAMING_NOT_SUPPORTED); } } diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/host/LabelNicCommand.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/host/LabelNicCommand.java index c43bcc1..35fb57c 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/host/LabelNicCommand.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/host/LabelNicCommand.java @@ -66,7 +66,7 @@ return failCanDoAction(VdcBllMessages.HOST_NETWORK_INTERFACE_NOT_EXIST); } - if (getNic().getLabels() != null && getNic().getLabels().contains(getLabel())) { + if (NetworkUtils.isLabeled(getNic()) && getNic().getLabels().contains(getLabel())) { return failCanDoAction(VdcBllMessages.INTERFACE_ALREADY_LABELED); } @@ -75,7 +75,7 @@ } for (VdsNetworkInterface nic : getHostInterfaces()) { - if (!StringUtils.equals(nic.getName(), getNicName()) && nic.getLabels() != null + if (!StringUtils.equals(nic.getName(), getNicName()) && NetworkUtils.isLabeled(nic) && nic.getLabels().contains(getLabel())) { return failCanDoAction(VdcBllMessages.OTHER_INTERFACE_ALREADY_LABELED, "$LabeledNic " + nic.getName()); } diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/host/SetupNetworksHelper.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/host/SetupNetworksHelper.java index 87b5e6a..26754da 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/host/SetupNetworksHelper.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/host/SetupNetworksHelper.java @@ -118,7 +118,7 @@ } Network removedNetwork = getExistingClusterNetworks().get(network); - if (nic.getLabels() != null && removedNetwork != null + if (NetworkUtils.isLabeled(nic) && removedNetwork != null && nic.getLabels().contains(removedNetwork.getLabel())) { addViolation(VdcBllMessages.ACTION_TYPE_FAILED_CANNOT_REMOVE_LABELED_NETWORK_FROM_NIC, network); } @@ -130,9 +130,9 @@ for (VdsNetworkInterface nic : params.getInterfaces()) { VdsNetworkInterface existingNic = getExistingIfaces().get(nic.getName()); if (existingNic != null) { - Set<String> newLabels = nic.getLabels() == null ? Collections.<String> emptySet() : nic.getLabels(); + Set<String> newLabels = NetworkUtils.isLabeled(nic) ? nic.getLabels() : Collections.<String> emptySet(); Set<String> existingLabels = - existingNic.getLabels() == null ? Collections.<String> emptySet() : existingNic.getLabels(); + NetworkUtils.isLabeled(existingNic) ? existingNic.getLabels() : Collections.<String> emptySet(); if (!CollectionUtils.isEqualCollection(newLabels, existingLabels) || nic.isQosOverridden() != existingNic.isQosOverridden()) { existingNic.setLabels(newLabels); diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/host/UnlabelNicCommand.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/host/UnlabelNicCommand.java index 8a9de6a..4852b80 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/host/UnlabelNicCommand.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/host/UnlabelNicCommand.java @@ -59,7 +59,7 @@ return failCanDoAction(VdcBllMessages.HOST_NETWORK_INTERFACE_NOT_EXIST); } - if (getNic().getLabels() == null || !getNic().getLabels().contains(getLabel())) { + if (NetworkUtils.isLabeled(getNic()) || !getNic().getLabels().contains(getLabel())) { return failCanDoAction(VdcBllMessages.INTERFACE_NOT_LABELED); } @@ -137,7 +137,7 @@ } private void unlabelConfiguredNic(String label, VdsNetworkInterface nicToConfigure) { - if (nicToConfigure.getLabels() != null) { + if (NetworkUtils.isLabeled(nicToConfigure)) { nicToConfigure.getLabels().remove(getLabel()); } } diff --git a/backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/NetworkUtils.java b/backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/NetworkUtils.java index 827b5a8..f15a6ca 100644 --- a/backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/NetworkUtils.java +++ b/backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/NetworkUtils.java @@ -252,6 +252,17 @@ } /** + * Determine if a given network interface is labeled + * + * @param nic + * the nic to check. + * @return <code>true</code> iff the nic is labeled. + */ + public static boolean isLabeled(VdsNetworkInterface nic) { + return nic.getLabels() != null && !nic.getLabels().isEmpty(); + } + + /** * Constructs the vlan device name in the format of "{nic name}.{vlan-id}" * * @param underlyingNic -- To view, visit http://gerrit.ovirt.org/23193 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Icef35e6a0f8a1334e871d2bdc718fb0eb1b9ece6 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Moti Asayag <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
