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

[2/2] Name change for vpc/Dao package (dao is lowercased now)

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057d6ccb/server/src/com/cloud/network/vpc/dao/VpcOfferingServiceMapDao.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/vpc/dao/VpcOfferingServiceMapDao.java b/server/src/com/cloud/network/vpc/dao/VpcOfferingServiceMapDao.java
new file mode 100644
index 0000000..b298c1e
--- /dev/null
+++ b/server/src/com/cloud/network/vpc/dao/VpcOfferingServiceMapDao.java
@@ -0,0 +1,41 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License.  You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied.  See the License for the
+// specific language governing permissions and limitations
+// under the License.
+package com.cloud.network.vpc.dao;
+
+import java.util.List;
+
+import com.cloud.network.Network.Service;
+import com.cloud.network.vpc.VpcOfferingServiceMapVO;
+import com.cloud.utils.db.GenericDao;
+
+
+public interface VpcOfferingServiceMapDao extends GenericDao<VpcOfferingServiceMapVO, Long>{
+    
+    List<VpcOfferingServiceMapVO> listByVpcOffId(long vpcOffId);
+
+    /**
+     * @param networkOfferingId
+     * @param services
+     * @return
+     */
+    boolean areServicesSupportedByNetworkOffering(long networkOfferingId, Service[] services);
+    
+    List<String> listServicesForVpcOffering(long vpcOfferingId);
+    
+    VpcOfferingServiceMapVO findByServiceProviderAndOfferingId(String service, String provider, long vpcOfferingId);
+
+}

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057d6ccb/server/src/com/cloud/network/vpc/dao/VpcOfferingServiceMapDaoImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/vpc/dao/VpcOfferingServiceMapDaoImpl.java b/server/src/com/cloud/network/vpc/dao/VpcOfferingServiceMapDaoImpl.java
new file mode 100644
index 0000000..056df74
--- /dev/null
+++ b/server/src/com/cloud/network/vpc/dao/VpcOfferingServiceMapDaoImpl.java
@@ -0,0 +1,117 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License.  You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied.  See the License for the
+// specific language governing permissions and limitations
+// under the License.
+package com.cloud.network.vpc.dao;
+
+import java.util.List;
+
+import javax.ejb.Local;
+
+import com.cloud.network.Network.Service;
+import com.cloud.network.vpc.VpcOfferingServiceMapVO;
+import com.cloud.utils.db.DB;
+import com.cloud.utils.db.GenericDaoBase;
+import com.cloud.utils.db.GenericSearchBuilder;
+import com.cloud.utils.db.SearchBuilder;
+import com.cloud.utils.db.SearchCriteria;
+import com.cloud.utils.db.SearchCriteria.Func;
+
+
+@Local(value = VpcOfferingServiceMapDao.class)
+@DB(txn = false)
+public class VpcOfferingServiceMapDaoImpl extends GenericDaoBase<VpcOfferingServiceMapVO, Long> implements VpcOfferingServiceMapDao{
+    final SearchBuilder<VpcOfferingServiceMapVO> AllFieldsSearch;
+    final SearchBuilder<VpcOfferingServiceMapVO> MultipleServicesSearch;
+    final GenericSearchBuilder<VpcOfferingServiceMapVO, String> ServicesSearch;
+
+    
+    protected VpcOfferingServiceMapDaoImpl() {
+        super();
+        AllFieldsSearch = createSearchBuilder();
+        AllFieldsSearch.and("vpcOffId", AllFieldsSearch.entity().getVpcOfferingId(), SearchCriteria.Op.EQ);
+        AllFieldsSearch.and("service", AllFieldsSearch.entity().getService(), SearchCriteria.Op.EQ);
+        AllFieldsSearch.and("provider", AllFieldsSearch.entity().getProvider(), SearchCriteria.Op.EQ);
+        AllFieldsSearch.done();
+        
+        
+        MultipleServicesSearch = createSearchBuilder();
+        MultipleServicesSearch.and("vpcOffId", MultipleServicesSearch.entity().getVpcOfferingId(), SearchCriteria.Op.EQ);
+        MultipleServicesSearch.and("service", MultipleServicesSearch.entity().getService(), SearchCriteria.Op.IN);
+        MultipleServicesSearch.and("provider", MultipleServicesSearch.entity().getProvider(), SearchCriteria.Op.EQ);
+        MultipleServicesSearch.done();
+        
+        ServicesSearch = createSearchBuilder(String.class);
+        ServicesSearch.and("offeringId", ServicesSearch.entity().getVpcOfferingId(), SearchCriteria.Op.EQ);
+        ServicesSearch.select(null, Func.DISTINCT, ServicesSearch.entity().getService());
+        ServicesSearch.done();
+    }
+    
+    @Override
+    public List<VpcOfferingServiceMapVO> listByVpcOffId(long vpcOffId) {
+        SearchCriteria<VpcOfferingServiceMapVO> sc = AllFieldsSearch.create();
+        sc.setParameters("vpcOffId", vpcOffId);
+        return listBy(sc);
+    }
+    
+    
+    @Override
+    public boolean areServicesSupportedByNetworkOffering(long networkOfferingId, Service... services) {
+        SearchCriteria<VpcOfferingServiceMapVO> sc = MultipleServicesSearch.create();
+        sc.setParameters("vpcOffId", networkOfferingId);
+        
+        if (services != null) {
+            String[] servicesStr = new String[services.length];
+            
+            int i = 0;
+            for (Service service : services) {
+                servicesStr[i] = service.getName();
+                i++;
+            }
+            
+            sc.setParameters("service", (Object[])servicesStr);
+        }
+        
+        List<VpcOfferingServiceMapVO> offeringServices = listBy(sc);
+        
+        if (services != null) {
+            if (offeringServices.size() == services.length) {
+                return true;
+            }
+        } else if (!offeringServices.isEmpty()) {
+            return true;
+        }
+        
+        return false;
+    }
+
+    @Override
+    public List<String> listServicesForVpcOffering(long offId) {
+        SearchCriteria<String> sc = ServicesSearch.create();;
+        sc.setParameters("offeringId", offId);
+        return customSearch(sc, null);
+    }
+
+
+    @Override
+    public VpcOfferingServiceMapVO findByServiceProviderAndOfferingId(String service, String provider, long vpcOfferingId) {
+        SearchCriteria<VpcOfferingServiceMapVO> sc = AllFieldsSearch.create();
+        sc.setParameters("vpcOffId", vpcOfferingId);
+        sc.setParameters("service", service);
+        sc.setParameters("provider", provider);
+        
+        return findOneBy(sc);
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057d6ccb/server/src/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java b/server/src/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java
index 73a73e4..1462fdb 100644
--- a/server/src/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java
+++ b/server/src/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java
@@ -9,7 +9,6 @@ import javax.naming.ConfigurationException;
 
 import org.apache.log4j.Logger;
 
-import com.cloud.api.BaseListProjectAndAccountResourcesCmd;
 import com.cloud.api.commands.CreateVpnConnectionCmd;
 import com.cloud.api.commands.CreateVpnCustomerGatewayCmd;
 import com.cloud.api.commands.CreateVpnGatewayCmd;
@@ -21,14 +20,12 @@ import com.cloud.api.commands.ListVpnCustomerGatewaysCmd;
 import com.cloud.api.commands.ListVpnGatewaysCmd;
 import com.cloud.api.commands.ResetVpnConnectionCmd;
 import com.cloud.api.commands.UpdateVpnCustomerGatewayCmd;
-import com.cloud.domain.Domain;
 import com.cloud.event.ActionEvent;
 import com.cloud.event.EventTypes;
 import com.cloud.exception.InvalidParameterValueException;
 import com.cloud.exception.NetworkRuleConflictException;
 import com.cloud.exception.ResourceUnavailableException;
 import com.cloud.network.IPAddressVO;
-import com.cloud.network.IpAddress;
 import com.cloud.network.NetworkManager;
 import com.cloud.network.Site2SiteCustomerGateway;
 import com.cloud.network.Site2SiteCustomerGatewayVO;
@@ -44,7 +41,7 @@ import com.cloud.network.dao.Site2SiteVpnGatewayDao;
 import com.cloud.network.element.Site2SiteVpnServiceProvider;
 import com.cloud.network.vpc.VpcManager;
 import com.cloud.network.vpc.VpcVO;
-import com.cloud.network.vpc.Dao.VpcDao;
+import com.cloud.network.vpc.dao.VpcDao;
 import com.cloud.projects.Project.ListProjectResourcesCriteria;
 import com.cloud.user.Account;
 import com.cloud.user.AccountManager;
@@ -55,7 +52,6 @@ import com.cloud.utils.component.Inject;
 import com.cloud.utils.component.Manager;
 import com.cloud.utils.db.DB;
 import com.cloud.utils.db.Filter;
-import com.cloud.utils.db.GenericDao;
 import com.cloud.utils.db.JoinBuilder;
 import com.cloud.utils.db.SearchBuilder;
 import com.cloud.utils.db.SearchCriteria;

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057d6ccb/server/src/com/cloud/resourcelimit/ResourceLimitManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/resourcelimit/ResourceLimitManagerImpl.java b/server/src/com/cloud/resourcelimit/ResourceLimitManagerImpl.java
index 26da588..7f446d7 100755
--- a/server/src/com/cloud/resourcelimit/ResourceLimitManagerImpl.java
+++ b/server/src/com/cloud/resourcelimit/ResourceLimitManagerImpl.java
@@ -52,7 +52,7 @@ import com.cloud.exception.PermissionDeniedException;
 import com.cloud.exception.ResourceAllocationException;
 import com.cloud.network.dao.IPAddressDao;
 import com.cloud.network.dao.NetworkDao;
-import com.cloud.network.vpc.Dao.VpcDao;
+import com.cloud.network.vpc.dao.VpcDao;
 import com.cloud.projects.Project;
 import com.cloud.projects.ProjectAccount.Role;
 import com.cloud.projects.dao.ProjectAccountDao;

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057d6ccb/server/src/com/cloud/tags/TaggedResourceManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/tags/TaggedResourceManagerImpl.java b/server/src/com/cloud/tags/TaggedResourceManagerImpl.java
index 5d519e3..db32f2c 100644
--- a/server/src/com/cloud/tags/TaggedResourceManagerImpl.java
+++ b/server/src/com/cloud/tags/TaggedResourceManagerImpl.java
@@ -39,8 +39,8 @@ import com.cloud.network.dao.NetworkDao;
 import com.cloud.network.dao.RemoteAccessVpnDao;
 import com.cloud.network.rules.dao.PortForwardingRulesDao;
 import com.cloud.network.security.dao.SecurityGroupDao;
-import com.cloud.network.vpc.Dao.StaticRouteDao;
-import com.cloud.network.vpc.Dao.VpcDao;
+import com.cloud.network.vpc.dao.StaticRouteDao;
+import com.cloud.network.vpc.dao.VpcDao;
 import com.cloud.projects.Project.ListProjectResourcesCriteria;
 import com.cloud.projects.dao.ProjectDao;
 import com.cloud.server.ResourceTag;

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/057d6ccb/server/src/com/cloud/vm/dao/DomainRouterDaoImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/vm/dao/DomainRouterDaoImpl.java b/server/src/com/cloud/vm/dao/DomainRouterDaoImpl.java
index 590fd6a..175d3f2 100755
--- a/server/src/com/cloud/vm/dao/DomainRouterDaoImpl.java
+++ b/server/src/com/cloud/vm/dao/DomainRouterDaoImpl.java
@@ -23,8 +23,8 @@ import javax.ejb.Local;
 import com.cloud.host.HostVO;
 import com.cloud.host.dao.HostDaoImpl;
 import com.cloud.network.Network;
-import com.cloud.network.RouterNetworkDaoImpl;
 import com.cloud.network.RouterNetworkVO;
+import com.cloud.network.dao.RouterNetworkDaoImpl;
 import com.cloud.network.router.VirtualRouter;
 import com.cloud.network.router.VirtualRouter.Role;
 import com.cloud.offering.NetworkOffering;