Updated Branches:
  refs/heads/vpc a1333649d -> 6ad2388c7

VPC: added one more default network offering for VPC - the one not having LB 
service


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

Branch: refs/heads/vpc
Commit: 6ad2388c72c074d9ff6151b03a132b8f3306cc36
Parents: a133364
Author: Alena Prokharchyk <[email protected]>
Authored: Tue Jul 17 17:41:07 2012 -0700
Committer: Alena Prokharchyk <[email protected]>
Committed: Tue Jul 17 17:46:17 2012 -0700

----------------------------------------------------------------------
 api/src/com/cloud/offering/NetworkOffering.java    |    1 +
 .../configuration/ConfigurationManagerImpl.java    |   74 ++++++++-------
 .../src/com/cloud/network/NetworkManagerImpl.java  |   13 +++-
 .../com/cloud/server/ConfigurationServerImpl.java  |   33 ++++++-
 4 files changed, 84 insertions(+), 37 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6ad2388c/api/src/com/cloud/offering/NetworkOffering.java
----------------------------------------------------------------------
diff --git a/api/src/com/cloud/offering/NetworkOffering.java 
b/api/src/com/cloud/offering/NetworkOffering.java
index 5a30f51..a514ccf 100644
--- a/api/src/com/cloud/offering/NetworkOffering.java
+++ b/api/src/com/cloud/offering/NetworkOffering.java
@@ -48,6 +48,7 @@ public interface NetworkOffering {
     public final static String DefaultIsolatedNetworkOffering = 
"DefaultIsolatedNetworkOffering";
     public final static String DefaultSharedEIPandELBNetworkOffering = 
"DefaultSharedNetscalerEIPandELBNetworkOffering";
     public final static String DefaultIsolatedNetworkOfferingForVpcNetworks = 
"DefaultIsolatedNetworkOfferingForVpcNetworks";
+    public final static String 
DefaultIsolatedNetworkOfferingForVpcNetworksNoLB = 
"DefaultIsolatedNetworkOfferingForVpcNetworksNoLB";
 
 
     long getId();

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6ad2388c/server/src/com/cloud/configuration/ConfigurationManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/configuration/ConfigurationManagerImpl.java 
b/server/src/com/cloud/configuration/ConfigurationManagerImpl.java
index dd3f9e8..3a44b55 100755
--- a/server/src/com/cloud/configuration/ConfigurationManagerImpl.java
+++ b/server/src/com/cloud/configuration/ConfigurationManagerImpl.java
@@ -3178,49 +3178,53 @@ public class ConfigurationManagerImpl implements 
ConfigurationManager, Configura
             }
         }
 
-        Map<Capability, String> lbServiceCapabilityMap = 
serviceCapabilityMap.get(Service.Lb);
+        
         boolean dedicatedLb = false;
         boolean elasticLb = false;
-        if ((lbServiceCapabilityMap != null) && 
(!lbServiceCapabilityMap.isEmpty())) {
-            String isolationCapability = 
lbServiceCapabilityMap.get(Capability.SupportedLBIsolation);
-            if (isolationCapability != null) {
-                
_networkMgr.checkCapabilityForProvider(serviceProviderMap.get(Service.Lb), 
Service.Lb, Capability.SupportedLBIsolation, isolationCapability);
-                dedicatedLb = isolationCapability.contains("dedicated");
-            } else {
-                dedicatedLb = true;
-            }
-
-            String param = lbServiceCapabilityMap.get(Capability.ElasticLb);
-            if (param != null) {
-                elasticLb = param.contains("true");
-            }
-        }
-
-        Map<Capability, String> sourceNatServiceCapabilityMap = 
serviceCapabilityMap.get(Service.SourceNat);
         boolean sharedSourceNat = false;
         boolean redundantRouter = false;
-        if ((sourceNatServiceCapabilityMap != null) && 
(!sourceNatServiceCapabilityMap.isEmpty())) {
-            String sourceNatType = 
sourceNatServiceCapabilityMap.get(Capability.SupportedSourceNatTypes);
-            if (sourceNatType != null) {
-                
_networkMgr.checkCapabilityForProvider(serviceProviderMap.get(Service.SourceNat),
 Service.SourceNat, 
-                        Capability.SupportedSourceNatTypes, sourceNatType);
-                sharedSourceNat = sourceNatType.contains("perzone");
+        boolean elasticIp = false;
+        if (serviceCapabilityMap != null && !serviceCapabilityMap.isEmpty()) {
+            Map<Capability, String> lbServiceCapabilityMap = 
serviceCapabilityMap.get(Service.Lb);
+            
+            if ((lbServiceCapabilityMap != null) && 
(!lbServiceCapabilityMap.isEmpty())) {
+                String isolationCapability = 
lbServiceCapabilityMap.get(Capability.SupportedLBIsolation);
+                if (isolationCapability != null) {
+                    
_networkMgr.checkCapabilityForProvider(serviceProviderMap.get(Service.Lb), 
Service.Lb, Capability.SupportedLBIsolation, isolationCapability);
+                    dedicatedLb = isolationCapability.contains("dedicated");
+                } else {
+                    dedicatedLb = true;
+                }
+
+                String param = 
lbServiceCapabilityMap.get(Capability.ElasticLb);
+                if (param != null) {
+                    elasticLb = param.contains("true");
+                }
             }
 
-            String param = 
sourceNatServiceCapabilityMap.get(Capability.RedundantRouter);
-            if (param != null) {
-                
_networkMgr.checkCapabilityForProvider(serviceProviderMap.get(Service.SourceNat),
 Service.SourceNat, 
-                        Capability.RedundantRouter, param);
-                redundantRouter = param.contains("true");
+            Map<Capability, String> sourceNatServiceCapabilityMap = 
serviceCapabilityMap.get(Service.SourceNat);
+            if ((sourceNatServiceCapabilityMap != null) && 
(!sourceNatServiceCapabilityMap.isEmpty())) {
+                String sourceNatType = 
sourceNatServiceCapabilityMap.get(Capability.SupportedSourceNatTypes);
+                if (sourceNatType != null) {
+                    
_networkMgr.checkCapabilityForProvider(serviceProviderMap.get(Service.SourceNat),
 Service.SourceNat, 
+                            Capability.SupportedSourceNatTypes, sourceNatType);
+                    sharedSourceNat = sourceNatType.contains("perzone");
+                }
+
+                String param = 
sourceNatServiceCapabilityMap.get(Capability.RedundantRouter);
+                if (param != null) {
+                    
_networkMgr.checkCapabilityForProvider(serviceProviderMap.get(Service.SourceNat),
 Service.SourceNat, 
+                            Capability.RedundantRouter, param);
+                    redundantRouter = param.contains("true");
+                }
             }
-        }
 
-        Map<Capability, String> staticNatServiceCapabilityMap = 
serviceCapabilityMap.get(Service.StaticNat);
-        boolean elasticIp = false;
-        if ((staticNatServiceCapabilityMap != null) && 
(!staticNatServiceCapabilityMap.isEmpty())) {
-            String param = 
staticNatServiceCapabilityMap.get(Capability.ElasticIp);
-            if (param != null) {
-                elasticIp = param.contains("true");
+            Map<Capability, String> staticNatServiceCapabilityMap = 
serviceCapabilityMap.get(Service.StaticNat);
+            if ((staticNatServiceCapabilityMap != null) && 
(!staticNatServiceCapabilityMap.isEmpty())) {
+                String param = 
staticNatServiceCapabilityMap.get(Capability.ElasticIp);
+                if (param != null) {
+                    elasticIp = param.contains("true");
+                }
             }
         }
 

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6ad2388c/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 4514b3f..f0e49ab 100755
--- a/server/src/com/cloud/network/NetworkManagerImpl.java
+++ b/server/src/com/cloud/network/NetworkManagerImpl.java
@@ -1461,7 +1461,18 @@ public class NetworkManagerImpl implements 
NetworkManager, NetworkService, Manag
         if 
(_networkOfferingDao.findByUniqueName(NetworkOffering.DefaultIsolatedNetworkOfferingForVpcNetworks)
 == null) {
             offering = 
_configMgr.createNetworkOffering(NetworkOffering.DefaultIsolatedNetworkOfferingForVpcNetworks,
                     "Offering for Isolated VPC networks with Source Nat 
service enabled", TrafficType.Guest,
-                    null, false, Availability.Required, null, 
defaultVPCOffProviders,
+                    null, false, Availability.Optional, null, 
defaultVPCOffProviders,
+                    true, Network.GuestType.Isolated, false, null, false, 
null, false);
+            offering.setState(NetworkOffering.State.Enabled);
+            _networkOfferingDao.update(offering.getId(), offering);
+        }
+        
+        if 
(_networkOfferingDao.findByUniqueName(NetworkOffering.DefaultIsolatedNetworkOfferingForVpcNetworksNoLB)
 == null) {
+            //remove LB service
+            defaultVPCOffProviders.remove(Service.Lb);
+            offering = 
_configMgr.createNetworkOffering(NetworkOffering.DefaultIsolatedNetworkOfferingForVpcNetworksNoLB,
+                    "Offering for Isolated VPC networks with Source Nat 
service enabled and LB service disabled", TrafficType.Guest,
+                    null, false, Availability.Optional, null, 
defaultVPCOffProviders,
                     true, Network.GuestType.Isolated, false, null, false, 
null, false);
             offering.setState(NetworkOffering.State.Enabled);
             _networkOfferingDao.update(offering.getId(), offering);

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6ad2388c/server/src/com/cloud/server/ConfigurationServerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/server/ConfigurationServerImpl.java 
b/server/src/com/cloud/server/ConfigurationServerImpl.java
index 27e96b9..a0d10b6 100755
--- a/server/src/com/cloud/server/ConfigurationServerImpl.java
+++ b/server/src/com/cloud/server/ConfigurationServerImpl.java
@@ -1020,7 +1020,7 @@ public class ConfigurationServerImpl implements 
ConfigurationServer {
                 NetworkOffering.DefaultIsolatedNetworkOfferingForVpcNetworks,
                 "Offering for Isolated Vpc networks with Source Nat service 
enabled",
                 TrafficType.Guest,
-                false, false, null, null, true, Availability.Required,
+                false, false, null, null, true, Availability.Optional,
                 null, Network.GuestType.Isolated, false, false);
 
         
defaultNetworkOfferingForVpcNetworks.setState(NetworkOffering.State.Enabled);
@@ -1045,6 +1045,37 @@ public class ConfigurationServerImpl implements 
ConfigurationServer {
             s_logger.trace("Added service for the network offering: " + 
offService);
         }
         
+        // Offering #7
+        NetworkOfferingVO defaultNetworkOfferingForVpcNetworksNoLB = new 
NetworkOfferingVO(
+                
NetworkOffering.DefaultIsolatedNetworkOfferingForVpcNetworksNoLB,
+                "Offering for Isolated Vpc networks with Source Nat service 
enabled and LB service Disabled",
+                TrafficType.Guest,
+                false, false, null, null, true, Availability.Optional,
+                null, Network.GuestType.Isolated, false, false);
+
+        
defaultNetworkOfferingForVpcNetworksNoLB.setState(NetworkOffering.State.Enabled);
+        defaultNetworkOfferingForVpcNetworksNoLB = 
_networkOfferingDao.persistDefaultNetworkOffering(defaultNetworkOfferingForVpcNetworksNoLB);
+        
+        Map<Network.Service, Network.Provider> 
defaultVpcNetworkOfferingProvidersNoLB = new HashMap<Network.Service, 
Network.Provider>();
+        defaultVpcNetworkOfferingProvidersNoLB.put(Service.Dhcp, 
Provider.VPCVirtualRouter);
+        defaultVpcNetworkOfferingProvidersNoLB.put(Service.Dns, 
Provider.VPCVirtualRouter);
+        defaultVpcNetworkOfferingProvidersNoLB.put(Service.UserData, 
Provider.VPCVirtualRouter);
+        defaultVpcNetworkOfferingProvidersNoLB.put(Service.NetworkACL, 
Provider.VPCVirtualRouter);
+        defaultVpcNetworkOfferingProvidersNoLB.put(Service.Gateway, 
Provider.VPCVirtualRouter);
+        defaultVpcNetworkOfferingProvidersNoLB.put(Service.SourceNat, 
Provider.VPCVirtualRouter);
+        defaultVpcNetworkOfferingProvidersNoLB.put(Service.StaticNat, 
Provider.VPCVirtualRouter);
+        defaultVpcNetworkOfferingProvidersNoLB.put(Service.PortForwarding, 
Provider.VPCVirtualRouter);
+        defaultVpcNetworkOfferingProvidersNoLB.put(Service.Vpn, 
Provider.VPCVirtualRouter);
+        
+        for (Service service : 
defaultVpcNetworkOfferingProvidersNoLB.keySet()) {
+            NetworkOfferingServiceMapVO offService = new 
NetworkOfferingServiceMapVO
+                    (defaultNetworkOfferingForVpcNetworksNoLB.getId(), 
service, defaultVpcNetworkOfferingProvidersNoLB.get(service));
+            _ntwkOfferingServiceMapDao.persist(offService);
+            s_logger.trace("Added service for the network offering: " + 
offService);
+        }
+        
+        
+        
         txn.commit();
     }
 

Reply via email to