@Override public Map<Detail, String> getNtwkOffDetails(long offId) { return _ntwkOffDetailsDao.getNtwkOffDetails(offId); }
@Override public LoadBalancingServiceProvider getLoadBalancingProviderForNetwork(final Network network, final Scheme lbScheme) { final List<NetworkElement> lbElements = getElementForServiceInNetwork(network, Service.Lb); NetworkElement lbElement = null; if (lbElements.size() > 1) { String providerName = null; //get network offering details final NetworkOffering off = _entityMgr.findById(NetworkOffering.class, network.getNetworkOfferingId()); if (lbScheme == Scheme.Public) { providerName = _ntwkOffDetailsDao.getDetail(off.getId(), NetworkOffering.Detail.PublicLbProvider); } else { providerName = _ntwkOffDetailsDao.getDetail(off.getId(), NetworkOffering.Detail.InternalLbProvider); } if (providerName == null) { throw new InvalidParameterValueException("Can't find Lb provider supporting scheme " + lbScheme.toString() + " in network " + network); } lbElement = _networkModel.getElementImplementingProvider(providerName); } else if (lbElements.size() == 1) { lbElement = lbElements.get(0); } assert lbElement != null; assert lbElement instanceof LoadBalancingServiceProvider; return (LoadBalancingServiceProvider)lbElement; }
@Override @DB public NetworkOfferingVO persist(NetworkOfferingVO off, Map<Detail, String> details) { TransactionLegacy txn = TransactionLegacy.currentTxn(); txn.start(); //1) persist the offering NetworkOfferingVO vo = super.persist(off); //2) persist the details if (details != null && !details.isEmpty()) { for (NetworkOffering.Detail detail : details.keySet()) { _detailsDao.persist(new NetworkOfferingDetailsVO(off.getId(), detail, details.get(detail))); } } txn.commit(); return vo; }
final NetworkVO network = _networkDao.findByUuid(nicTo.getNetworkUuid()); if (network != null) { final Map<NetworkOffering.Detail, String> details = networkOfferingDetailsDao.getNtwkOffDetails(network.getNetworkOfferingId()); if (details != null) { details.putIfAbsent(NetworkOffering.Detail.PromiscuousMode, NetworkOrchestrationService.PromiscuousMode.value().toString());