private ExternalLoadBalancerDeviceVO findGslbProvider(long zoneId, long physicalNetworkId) { List<PhysicalNetworkVO> pNtwks = _physicalNetworkDao.listByZoneAndTrafficType(zoneId, TrafficType.Guest); if (pNtwks == null || pNtwks.isEmpty()) { throw new InvalidParameterValueException( "Unable to get physical network: " + physicalNetworkId + " in zone id = " + zoneId); } else { for (PhysicalNetwork physicalNetwork : pNtwks) { if (physicalNetwork.getId() == physicalNetworkId) { PhysicalNetworkVO physNetwork = pNtwks.get(0); ExternalLoadBalancerDeviceVO nsGslbProvider = _externalLoadBalancerDeviceDao .findGslbServiceProvider(physNetwork.getId(), Provider.Netscaler.getName()); return nsGslbProvider; } } } return null; }
_externalLoadBalancerDeviceDao.findGslbServiceProvider(physicalNetworkId, ntwkDevice.getNetworkServiceProvder()); if (zoneGslbProvider != null) { throw new CloudRuntimeException("There is a GSLB service provider configured in the zone alredy.");