You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by ed...@apache.org on 2012/09/12 08:43:29 UTC

[5/41] git commit: CS-16187: don't allow vpc offering creation with unsupported services (Firewall, SecurityGroup)

CS-16187: don't allow vpc offering creation with unsupported services (Firewall, SecurityGroup)

Conflicts:

	server/src/com/cloud/network/vpc/VpcManagerImpl.java


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

Branch: refs/heads/4.0
Commit: f5c939732706228ca6044b561d4a4d6eb994b340
Parents: d0c526f
Author: Alena Prokharchyk <al...@citrix.com>
Authored: Tue Sep 11 16:59:43 2012 -0700
Committer: Alena Prokharchyk <al...@citrix.com>
Committed: Tue Sep 11 17:05:04 2012 -0700

----------------------------------------------------------------------
 .../src/com/cloud/network/vpc/VpcManagerImpl.java  |   13 +++++--------
 1 files changed, 5 insertions(+), 8 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/f5c93973/server/src/com/cloud/network/vpc/VpcManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/vpc/VpcManagerImpl.java b/server/src/com/cloud/network/vpc/VpcManagerImpl.java
index 08a03b1..675ae59 100644
--- a/server/src/com/cloud/network/vpc/VpcManagerImpl.java
+++ b/server/src/com/cloud/network/vpc/VpcManagerImpl.java
@@ -17,6 +17,7 @@
 package com.cloud.network.vpc;
 
 import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.List;
@@ -53,7 +54,6 @@ import com.cloud.exception.NetworkRuleConflictException;
 import com.cloud.exception.PermissionDeniedException;
 import com.cloud.exception.ResourceAllocationException;
 import com.cloud.exception.ResourceUnavailableException;
-import com.cloud.exception.UnsupportedServiceException;
 import com.cloud.hypervisor.Hypervisor.HypervisorType;
 import com.cloud.network.IPAddressVO;
 import com.cloud.network.IpAddress;
@@ -167,7 +167,8 @@ public class VpcManagerImpl implements VpcManager, Manager{
 
     private final ScheduledExecutorService _executor = Executors.newScheduledThreadPool(1, new NamedThreadFactory("VpcChecker"));
     private VpcProvider vpcElement = null;
-    
+    private final List<Service> nonSupportedServices = Arrays.asList(Service.SecurityGroup, Service.Firewall);
+ 
     String _name;
     int _cleanupInterval;
     int _maxNetworks;
@@ -265,14 +266,10 @@ public class VpcManagerImpl implements VpcManager, Manager{
         for (String serviceName : supportedServices) {
             // validate if the service is supported
             Service service = Network.Service.getService(serviceName);
-            if (service == null || service == Service.Gateway) {
-                throw new InvalidParameterValueException("Invalid service " + serviceName);
+            if (service == null || nonSupportedServices.contains(service)) {
+                throw new InvalidParameterValueException("Service " + serviceName + " is not supported in VPC");
             }
 
-            //don't allow security group service for vpc
-            if (service == Service.SecurityGroup) {
-                throw new UnsupportedServiceException("Service " + Service.SecurityGroup.getName() + " is not supported by VPC");
-            }
             svcProviderMap.put(service, defaultProviders);
             if (service == Service.NetworkACL) {
                 firewallSvs = true;