diff --git a/engine/schema/src/com/cloud/network/dao/PhysicalNetworkIsolationMethodDao.java b/engine/schema/src/com/cloud/network/dao/PhysicalNetworkIsolationMethodDao.java new file mode 100644 index 00000000000..a4e1bd588c8 --- /dev/null +++ b/engine/schema/src/com/cloud/network/dao/PhysicalNetworkIsolationMethodDao.java @@ -0,0 +1,39 @@ +// Copyright 2012 Citrix Systems, Inc. Licensed under the +// Apache License, Version 2.0 (the "License"); you may not use this +// file except in compliance with the License. Citrix Systems, Inc. +// reserves all rights not expressly granted by 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. +// +// Automatically generated by addcopyright.py at 04/03/2012 +package com.cloud.network.dao; + +import java.util.List; + +import com.cloud.utils.db.GenericDao; + +public interface PhysicalNetworkIsolationMethodDao extends GenericDao{ + + /** + * @param physicalNetworkId + * @return + */ + List getAllIsolationMethod(long physicalNetworkId); + + /** + * @param physicalNetworkId + * @return + */ + String getIsolationMethod(long physicalNetworkId); + + /** + * @param physicalNetworkId + * @return + */ + int clearIsolationMethods(long physicalNetworkId); + +} diff --git a/engine/schema/src/com/cloud/network/dao/PhysicalNetworkIsolationMethodDaoImpl.java b/engine/schema/src/com/cloud/network/dao/PhysicalNetworkIsolationMethodDaoImpl.java index 11b4399fcca..a22548a239e 100644 --- a/engine/schema/src/com/cloud/network/dao/PhysicalNetworkIsolationMethodDaoImpl.java +++ b/engine/schema/src/com/cloud/network/dao/PhysicalNetworkIsolationMethodDaoImpl.java @@ -20,7 +20,6 @@ import java.util.List; import org.springframework.stereotype.Component; -import com.cloud.utils.db.GenericDao; import com.cloud.utils.db.GenericDaoBase; import com.cloud.utils.db.GenericSearchBuilder; import com.cloud.utils.db.SearchBuilder; @@ -28,8 +27,7 @@ import com.cloud.utils.db.SearchCriteria; import com.cloud.utils.db.SearchCriteria.Op; @Component -public class PhysicalNetworkIsolationMethodDaoImpl extends GenericDaoBase implements - GenericDao { +public class PhysicalNetworkIsolationMethodDaoImpl extends GenericDaoBase implements PhysicalNetworkIsolationMethodDao { private final GenericSearchBuilder IsolationMethodSearch; private final SearchBuilder AllFieldsSearch; @@ -47,6 +45,7 @@ public class PhysicalNetworkIsolationMethodDaoImpl extends GenericDaoBase getAllIsolationMethod(long physicalNetworkId) { SearchCriteria sc = IsolationMethodSearch.create(); sc.setParameters("physicalNetworkId", physicalNetworkId); @@ -54,6 +53,7 @@ public class PhysicalNetworkIsolationMethodDaoImpl extends GenericDaoBase sc = IsolationMethodSearch.create(); sc.setParameters("physicalNetworkId", physicalNetworkId); @@ -61,6 +61,7 @@ public class PhysicalNetworkIsolationMethodDaoImpl extends GenericDaoBase sc = AllFieldsSearch.create(); sc.setParameters("physicalNetworkId", physicalNetworkId); diff --git a/server/src/com/cloud/api/ApiDBUtils.java b/server/src/com/cloud/api/ApiDBUtils.java index 67e47f7bf66..65f41c609b9 100755 --- a/server/src/com/cloud/api/ApiDBUtils.java +++ b/server/src/com/cloud/api/ApiDBUtils.java @@ -181,6 +181,7 @@ import com.cloud.network.dao.NetworkRuleConfigDao; import com.cloud.network.dao.NetworkRuleConfigVO; import com.cloud.network.dao.NetworkVO; import com.cloud.network.dao.PhysicalNetworkDao; +import com.cloud.network.dao.PhysicalNetworkIsolationMethodDao; import com.cloud.network.dao.PhysicalNetworkServiceProviderDao; import com.cloud.network.dao.PhysicalNetworkServiceProviderVO; import com.cloud.network.dao.PhysicalNetworkTrafficTypeDao; @@ -409,6 +410,7 @@ public class ApiDBUtils { static ResourceMetaDataService s_resourceDetailsService; static HostGpuGroupsDao s_hostGpuGroupsDao; static VGPUTypesDao s_vgpuTypesDao; + static PhysicalNetworkIsolationMethodDao s_pNtwkIsolatinoMethodsDao; @Inject private ManagementServer ms; @@ -631,6 +633,8 @@ public class ApiDBUtils { private HostGpuGroupsDao hostGpuGroupsDao; @Inject private VGPUTypesDao vgpuTypesDao; + @Inject + private PhysicalNetworkIsolationMethodDao pNtwkIsolatinoMethodsDao; @PostConstruct void init() { @@ -745,6 +749,7 @@ public class ApiDBUtils { s_resourceDetailsService = resourceDetailsService; s_hostGpuGroupsDao = hostGpuGroupsDao; s_vgpuTypesDao = vgpuTypesDao; + s_pNtwkIsolatinoMethodsDao = pNtwkIsolatinoMethodsDao; } // /////////////////////////////////////////////////////////// @@ -1835,4 +1840,9 @@ public class ApiDBUtils { public static List listResourceTagViewByResourceUUID(String resourceUUID, ResourceObjectType resourceType) { return s_tagJoinDao.listBy(resourceUUID, resourceType); } + + public static List getIsolationMethodsForPhysicalNtwk(long pNtwkId) { + return s_pNtwkIsolatinoMethodsDao.getAllIsolationMethod(pNtwkId); + } + } diff --git a/server/src/com/cloud/api/ApiResponseHelper.java b/server/src/com/cloud/api/ApiResponseHelper.java index ba1e91f72f3..263110ad92e 100755 --- a/server/src/com/cloud/api/ApiResponseHelper.java +++ b/server/src/com/cloud/api/ApiResponseHelper.java @@ -2197,7 +2197,7 @@ public class ApiResponseHelper implements ResponseGenerator { if (result.getBroadcastDomainRange() != null) { response.setBroadcastDomainRange(result.getBroadcastDomainRange().toString()); } - response.setIsolationMethods(result.getIsolationMethods()); + response.setIsolationMethods(ApiDBUtils.getIsolationMethodsForPhysicalNtwk(result.getId())); response.setTags(result.getTags()); if (result.getState() != null) { response.setState(result.getState().toString());