diff --git a/server/src/com/cloud/network/firewall/FirewallManagerImpl.java b/server/src/com/cloud/network/firewall/FirewallManagerImpl.java index d250a08d477..8c4583ebac8 100644 --- a/server/src/com/cloud/network/firewall/FirewallManagerImpl.java +++ b/server/src/com/cloud/network/firewall/FirewallManagerImpl.java @@ -544,6 +544,8 @@ public class FirewallManagerImpl extends ManagerBase implements FirewallService, throws ResourceUnavailableException { boolean handled = false; switch (purpose){ + /* StaticNatRule would be applied by Firewall provider, since the incompatible of two object */ + case StaticNat: case Firewall: for (FirewallServiceProvider fwElement: _firewallElements) { Network.Provider provider = fwElement.getProvider(); @@ -568,18 +570,6 @@ public class FirewallManagerImpl extends ManagerBase implements FirewallService, break; } break; - case StaticNat: - for (StaticNatServiceProvider element: _staticNatElements) { - Network.Provider provider = element.getProvider(); - boolean isSnatProvider = _networkModel.isProviderSupportServiceInNetwork(network.getId(), Service.StaticNat, provider); - if (!isSnatProvider) { - continue; - } - handled = element.applyStaticNats(network, (List) rules); - if (handled) - break; - } - break; /* case NetworkACL: for (NetworkACLServiceProvider element: _networkAclElements) { Network.Provider provider = element.getProvider();