You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by ch...@apache.org on 2013/01/08 00:22:53 UTC

[4/7] git commit: Remove old applyRules implementation

Remove old applyRules implementation


Project: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/commit/cf906859
Tree: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/tree/cf906859
Diff: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/diff/cf906859

Branch: refs/heads/network-refactor
Commit: cf9068598516963e34af69f72dec38f22b96c3f2
Parents: f4da219
Author: Chiradeep Vittal <ch...@apache.org>
Authored: Mon Jan 7 12:53:20 2013 -0800
Committer: Chiradeep Vittal <ch...@apache.org>
Committed: Mon Jan 7 14:26:09 2013 -0800

----------------------------------------------------------------------
 server/src/com/cloud/network/NetworkManager.java   |    2 -
 .../src/com/cloud/network/NetworkManagerImpl.java  |   91 +--------------
 2 files changed, 1 insertions(+), 92 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/cf906859/server/src/com/cloud/network/NetworkManager.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/NetworkManager.java b/server/src/com/cloud/network/NetworkManager.java
index 101d318..87848b8 100755
--- a/server/src/com/cloud/network/NetworkManager.java
+++ b/server/src/com/cloud/network/NetworkManager.java
@@ -133,8 +133,6 @@ public interface NetworkManager {
     List<NicProfile> getNicProfiles(VirtualMachine vm);
 
     String getNextAvailableMacAddressInNetwork(long networkConfigurationId) throws InsufficientAddressCapacityException;
-
-    boolean applyRules(List<? extends FirewallRule> rules, boolean continueOnError) throws ResourceUnavailableException;
     
     boolean applyRules(List<? extends FirewallRule> rules, FirewallRule.Purpose purpose, NetworkRuleApplier applier, boolean continueOnError) throws ResourceUnavailableException;
 

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/cf906859/server/src/com/cloud/network/NetworkManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/NetworkManagerImpl.java b/server/src/com/cloud/network/NetworkManagerImpl.java
index a3fa57c..592613e 100755
--- a/server/src/com/cloud/network/NetworkManagerImpl.java
+++ b/server/src/com/cloud/network/NetworkManagerImpl.java
@@ -255,8 +255,6 @@ public class NetworkManagerImpl implements NetworkManager, Manager, Listener {
     @Inject
     FirewallRulesDao _firewallDao;
     @Inject
-    PortForwardingRulesDao _portForwardingDao;
-    @Inject
     ResourceLimitService _resourceLimitMgr;
 
     @Inject
@@ -2852,94 +2850,7 @@ public class NetworkManagerImpl implements NetworkManager, Manager, Listener {
         
     
 
-    @Override
-    /* The rules here is only the same kind of rule, e.g. all load balancing rules or all port forwarding rules */
-    public boolean applyRules(List<? extends FirewallRule> rules, boolean continueOnError) throws ResourceUnavailableException {
-        if (rules == null || rules.size() == 0) {
-            s_logger.debug("There are no rules to forward to the network elements");
-            return true;
-        }
-
-        boolean success = true;
-        Network network = _networksDao.findById(rules.get(0).getNetworkId());
-        Purpose purpose = rules.get(0).getPurpose();
-
-        // get the list of public ip's owned by the network
-        List<IPAddressVO> userIps = _ipAddressDao.listByAssociatedNetwork(network.getId(), null);
-        List<PublicIp> publicIps = new ArrayList<PublicIp>();
-        if (userIps != null && !userIps.isEmpty()) {
-            for (IPAddressVO userIp : userIps) {
-                PublicIp publicIp = new PublicIp(userIp, _vlanDao.findById(userIp.getVlanId()), NetUtils.createSequenceBasedMacAddress(userIp.getMacAddress()));
-                publicIps.add(publicIp);
-            }
-        }
-
-        // rules can not programmed unless IP is associated with network service provider, so run IP assoication for
-        // the network so as to ensure IP is associated before applying rules (in add state)
-        applyIpAssociations(network, false, continueOnError, publicIps);
-
-        for (NetworkElement ne : _networkElements) {
-            Provider provider = Network.Provider.getProvider(ne.getName());
-            if (provider == null) {
-                if (ne.getName().equalsIgnoreCase("Ovs") || ne.getName().equalsIgnoreCase("BareMetal")
-                        || ne.getName().equalsIgnoreCase("CiscoNexus1000vVSM")) {
-                    continue;
-                }
-                throw new CloudRuntimeException("Unable to identify the provider by name " + ne.getName());
-            }
-            try {
-                boolean handled;
-                switch (purpose) {
-                case LoadBalancing:
-                    boolean isLbProvider = isProviderSupportServiceInNetwork(network.getId(), Service.Lb, provider);
-                    if (!(ne instanceof LoadBalancingServiceProvider && isLbProvider)) {
-                        continue;
-                    }
-                    handled = ((LoadBalancingServiceProvider) ne).applyLBRules(network, (List<LoadBalancingRule>) rules);
-                    break;
-                case PortForwarding:
-                    boolean isPfProvider = isProviderSupportServiceInNetwork(network.getId(), Service.PortForwarding, provider);
-                    if (!(ne instanceof PortForwardingServiceProvider && isPfProvider)) {
-                        continue;
-                    }
-                    handled = ((PortForwardingServiceProvider) ne).applyPFRules(network, (List<PortForwardingRule>) rules);
-                    break;
-                case StaticNat:
-                    /* It's firewall rule for static nat, not static nat rule */
-                    /* Fall through */
-                case Firewall:
-                    boolean isFirewallProvider = isProviderSupportServiceInNetwork(network.getId(), Service.Firewall, provider);
-                    if (!(ne instanceof FirewallServiceProvider && isFirewallProvider)) {
-                        continue;
-                    }
-                    handled = ((FirewallServiceProvider) ne).applyFWRules(network, rules);
-                    break;
-                case NetworkACL:
-                    boolean isNetworkACLProvider = isProviderSupportServiceInNetwork(network.getId(), Service.NetworkACL, provider);
-                    if (!(ne instanceof NetworkACLServiceProvider && isNetworkACLProvider)) {
-                        continue;
-                    }
-                    handled = ((NetworkACLServiceProvider) ne).applyNetworkACLs(network, rules);
-                    break;
-                default:
-                    s_logger.debug("Unable to handle network rules for purpose: " + purpose.toString());
-                    handled = false;
-                }
-                s_logger.debug("Network Rules for network " + network.getId() + " were " + (handled ? "" : " not") + " handled by " + ne.getName());
-            } catch (ResourceUnavailableException e) {
-                if (!continueOnError) {
-                    throw e;
-                }
-                s_logger.warn("Problems with " + ne.getName() + " but pushing on", e);
-                success = false;
-            }
-        }
-
-        // if all the rules configured on public IP are revoked then dis-associate IP with network service provider
-        applyIpAssociations(network, true, continueOnError, publicIps);
-
-        return success;
-    }
+   
 
     public class NetworkGarbageCollector implements Runnable {