@Override protected boolean canHandle(NetworkOffering offering, final NetworkType networkType, final PhysicalNetwork physicalNetwork) { if (networkType == NetworkType.Advanced && isMyTrafficType(offering.getTrafficType()) && isMyIsolationMethod(physicalNetwork) && (offering.getGuestType() == GuestType.Isolated || offering.getGuestType() == GuestType.Shared) && hasRequiredServices(offering)) { if (_configMgr.isOfferingForVpc(offering) && !offering.isPersistent()) { if (s_logger.isDebugEnabled()) { s_logger.debug("NuageVsp can't handle VPC tiers which use a network offering which are not persistent"); } return false; } else if (offering.getGuestType() == GuestType.Shared) { List<String> supportedSharedNetworkServices = Lists.newArrayList(Network.Service.Connectivity.getName(), Network.Service.Dhcp.getName(), Network.Service.UserData.getName()); List<String> offeringServices = _ntwkOfferingSrvcDao.listServicesForNetworkOffering(offering.getId()); if (!supportedSharedNetworkServices.containsAll(offeringServices)) { if (s_logger.isDebugEnabled()) { s_logger.debug("We only support " + Iterables.toString(supportedSharedNetworkServices) + " services for shared networks"); } return false; } } return true; } else { if (s_logger.isTraceEnabled()) { s_logger.trace("We only take care of networks in zone of type " + NetworkType.Advanced + " without VLAN"); } return false; } }
if (network.getVpcId() != null && !networkOffering.isPersistent()) { if (s_logger.isDebugEnabled()) { s_logger.debug("NuageVsp can't handle VPC tiers which use a network offering which are not persistent");
response.setSpecifyIpRanges(offering.isSpecifyIpRanges()); response.setAvailability(offering.getAvailability().toString()); response.setIsPersistent(offering.isPersistent()); response.setNetworkRate(ApiDBUtils.getNetworkRate(offering.getId())); response.setEgressDefaultPolicy(offering.isEgressDefaultPolicy());
NetworkVO networkInOldPhysNet = _networksDao.findById(networkIdInOldPhysicalNet); boolean shouldImplement = (newNtwkOff.isPersistent() || networkInOldPhysNet.getState() == Network.State.Implemented) && networkInNewPhysicalNet.getState() != Network.State.Implemented;
if (networkOfferingChanged && !oldNtwkOff.isPersistent() && networkOffering.isPersistent()) { if (network.getState() == Network.State.Allocated) { try {
response.setIsSystem(networkOffering.isSystemOnly()); response.setNetworkOfferingAvailability(networkOffering.getAvailability().toString()); response.setIsPersistent(networkOffering.isPersistent());