diff --git a/azure-mgmt-network/src/main/java/com/microsoft/azure/management/network/implementation/NetworkInterfaceImpl.java b/azure-mgmt-network/src/main/java/com/microsoft/azure/management/network/implementation/NetworkInterfaceImpl.java index b45b03ec34279..cc819506019e7 100644 --- a/azure-mgmt-network/src/main/java/com/microsoft/azure/management/network/implementation/NetworkInterfaceImpl.java +++ b/azure-mgmt-network/src/main/java/com/microsoft/azure/management/network/implementation/NetworkInterfaceImpl.java @@ -75,9 +75,7 @@ class NetworkInterfaceImpl initializeNicIpConfigurations(); } - /**************************************************. - * Verbs - **************************************************/ + // Verbs @Override public NetworkInterface refresh() throws Exception { @@ -99,9 +97,7 @@ public ServiceCall applyAsync(ServiceCallback callback) { return createAsync(callback); } - /**************************************************. - * Setters - **************************************************/ + // Setters (fluent) @Override public NetworkInterfaceImpl withNewPrimaryNetwork(Creatable creatable) { @@ -247,9 +243,7 @@ public NetworkInterfaceImpl withInternalDnsNameLabel(String dnsNameLabel) { return this; } - /**************************************************. - * Getters - **************************************************/ + // Getters @Override public boolean isIpForwardingEnabled() { @@ -377,8 +371,8 @@ public void failure(Throwable t) { @Override public void success(ServiceResponse result) { - initializeNicIpConfigurations(); clearCachedRelatedResources(); + initializeNicIpConfigurations(); callback.success(result); } })); @@ -398,6 +392,7 @@ private NicIpConfigurationImpl primaryIpConfiguration() { if (isInCreateMode()) { this.nicPrimaryIpConfiguration = prepareNewNicIpConfiguration("primary-nic-config"); + withIpConfiguration(this.nicPrimaryIpConfiguration); } else { // Currently Azure supports only one IP configuration and that is the primary // hence we pick the first one here. @@ -450,7 +445,6 @@ private NicIpConfigurationImpl prepareNewNicIpConfiguration(String name) { this, super.myManager ); - this.nicIpConfigurations.add(nicIpConfiguration); return nicIpConfiguration; } @@ -461,6 +455,12 @@ private void clearCachedRelatedResources() { this.nicPrimaryIpConfiguration = null; } + NetworkInterfaceImpl withIpConfiguration(NicIpConfigurationImpl nicIpConfiguration) { + this.nicIpConfigurations.add(nicIpConfiguration); + this.inner().ipConfigurations().add(nicIpConfiguration.inner()); + return this; + } + void addToCreatableDependencies(Creatable creatableResource) { super.addCreatableDependency(creatableResource); } diff --git a/azure-mgmt-network/src/main/java/com/microsoft/azure/management/network/implementation/NicIpConfigurationImpl.java b/azure-mgmt-network/src/main/java/com/microsoft/azure/management/network/implementation/NicIpConfigurationImpl.java index e4765c5f4424b..b911ec63bdc53 100644 --- a/azure-mgmt-network/src/main/java/com/microsoft/azure/management/network/implementation/NicIpConfigurationImpl.java +++ b/azure-mgmt-network/src/main/java/com/microsoft/azure/management/network/implementation/NicIpConfigurationImpl.java @@ -59,7 +59,6 @@ protected static NicIpConfigurationImpl prepareNicIpConfiguration(String name, final NetworkManager networkManager) { NetworkInterfaceIPConfiguration ipConfigurationInner = new NetworkInterfaceIPConfiguration(); ipConfigurationInner.withName(name); - parent.inner().ipConfigurations().add(ipConfigurationInner); return new NicIpConfigurationImpl(name, ipConfigurationInner, parent, @@ -115,7 +114,7 @@ public String privateIpAllocationMethod() { @Override public NetworkInterfaceImpl attach() { - return parent(); + return parent().withIpConfiguration(this); } @Override