Alona Kaplan has uploaded a new change for review. Change subject: webadmin: New vnic name should be nic + the lowset available number. ......................................................................
webadmin: New vnic name should be nic + the lowset available number. For example- if the vm has two vnics 'nic1' and 'nic8'. The next new nic name should be 'nic2' (not 'nic9' as it was due to a bug). Change-Id: Ib8594a29ba9c8ed32e4a0d4f8df78212dfc9f40f Bug-Url: https://bugzilla.redhat.com/1049789 Signed-off-by: Alona Kaplan <alkap...@redhat.com> --- M frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/profile/ProfilesInstanceTypeEditor.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/dataprovider/AsyncDataProvider.java 2 files changed, 18 insertions(+), 10 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/99/28599/1 diff --git a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/profile/ProfilesInstanceTypeEditor.java b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/profile/ProfilesInstanceTypeEditor.java index faa2f970..c74b3e5 100644 --- a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/profile/ProfilesInstanceTypeEditor.java +++ b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/profile/ProfilesInstanceTypeEditor.java @@ -3,6 +3,7 @@ import java.util.ArrayList; import java.util.Collection; import java.util.HashSet; +import java.util.List; import java.util.Set; import org.ovirt.engine.core.common.businessentities.network.VmNetworkInterface; @@ -27,10 +28,10 @@ private String elementId = DOM.createUniqueId(); private Collection<VnicProfileView> vnicProfiles; - private final Set<VmNetworkInterface> vnics; + private final List<VmNetworkInterface> vnics; public ProfilesInstanceTypeEditor() { - vnics = new HashSet<VmNetworkInterface>(); + vnics = new ArrayList<VmNetworkInterface>(); initWidget(WidgetUiBinder.uiBinder.createAndBindUi(this)); } diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/dataprovider/AsyncDataProvider.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/dataprovider/AsyncDataProvider.java index 6de1bcd..8d1205f 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/dataprovider/AsyncDataProvider.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/dataprovider/AsyncDataProvider.java @@ -3227,22 +3227,29 @@ public static String getNewNicName(Collection<VmNetworkInterface> existingInterfaces) { - int maxIfaceNumber = 0; - if (existingInterfaces != null) - { - for (VmNetworkInterface iface : existingInterfaces) - { + SortedSet<Integer> occupiedNicNums = new TreeSet<Integer>(); + + if (existingInterfaces != null) { + for (VmNetworkInterface iface : existingInterfaces) { // name of Interface is "eth<n>" (<n>: integer). if (iface.getName().length() > 3) { final Integer ifaceNumber = IntegerCompat.tryParse(iface.getName().substring(3)); - if (ifaceNumber != null && ifaceNumber > maxIfaceNumber) { - maxIfaceNumber = ifaceNumber; + if (ifaceNumber != null && ifaceNumber != 0) { + occupiedNicNums.add(ifaceNumber); } } } } - return "nic" + (maxIfaceNumber + 1); //$NON-NLS-1$ + int i = 1; + for (Iterator<Integer> iter = occupiedNicNums.iterator(); iter.hasNext(); ++i) { + if (i != iter.next()) { + break; + } + } + + return "nic" + i; //$NON-NLS-1$ + } /** -- To view, visit http://gerrit.ovirt.org/28599 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ib8594a29ba9c8ed32e4a0d4f8df78212dfc9f40f Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Alona Kaplan <alkap...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches