Map<Service, Set<Provider>> getServiceProvidersMap(long networkId) { Map<Service, Set<Provider>> map = new HashMap<Service, Set<Provider>>(); List<NetworkServiceMapVO> nsms = _ntwkSrvcDao.getServicesInNetwork(networkId); for (NetworkServiceMapVO nsm : nsms) { Set<Provider> providers = map.get(Service.getService(nsm.getService())); if (providers == null) { providers = new HashSet<Provider>(); } providers.add(Provider.getProvider(nsm.getProvider())); map.put(Service.getService(nsm.getService()), providers); } return map; }
private Map<Service, Set<Provider>> getServiceProvidersMap(final long networkId) { final Map<Service, Set<Provider>> map = new HashMap<Service, Set<Provider>>(); final List<NetworkServiceMapVO> nsms = _ntwkSrvcDao.getServicesInNetwork(networkId); for (final NetworkServiceMapVO nsm : nsms) { Set<Provider> providers = map.get(Service.getService(nsm.getService())); if (providers == null) { providers = new HashSet<Provider>(); } providers.add(Provider.getProvider(nsm.getProvider())); map.put(Service.getService(nsm.getService()), providers); } return map; }
Map<Provider, Set<Service>> getProviderServicesMap(long networkId) { Map<Provider, Set<Service>> map = new HashMap<Provider, Set<Service>>(); List<NetworkServiceMapVO> nsms = _ntwkSrvcDao.getServicesInNetwork(networkId); for (NetworkServiceMapVO nsm : nsms) { Set<Service> services = map.get(Provider.getProvider(nsm.getProvider())); if (services == null) { services = new HashSet<Service>(); } services.add(Service.getService(nsm.getService())); map.put(Provider.getProvider(nsm.getProvider()), services); } return map; }
@Override public List<String> getServicesNotSupportedInNewOffering(Network network,long newNetworkOfferingId){ NetworkOffering offering =_networkOfferingDao.findById(newNetworkOfferingId); List<String> services=_ntwkOfferingSrvcDao.listServicesForNetworkOffering(offering.getId()); List<NetworkServiceMapVO> serviceMap= _ntwkSrvcDao.getServicesInNetwork(network.getId()); List<String> servicesNotInNewOffering=new ArrayList<>(); for(NetworkServiceMapVO serviceVO :serviceMap){ boolean inlist=false; for(String service: services){ if(serviceVO.getService().equalsIgnoreCase(service)){ inlist=true; break; } } if(!inlist){ //ignore Gateway service as this has no effect on the //behaviour of network. if(!serviceVO.getService().equalsIgnoreCase(Service.Gateway.getName())) servicesNotInNewOffering.add(serviceVO.getService()); } } return servicesNotInNewOffering; }
protected List<String> getServicesForProviderInNetwork(long networkId, Provider provider) { List<String> services = new ArrayList<String>(); SearchCriteria<NetworkServiceMapVO> sc = AllFieldsSearch.create(); sc.setParameters("networkId", networkId); sc.setParameters("provider", provider.getName()); List<NetworkServiceMapVO> map = listBy(sc); for (NetworkServiceMapVO instance : map) { services.add(instance.getService()); } return services; }
@Override public Map<Service, Map<Capability, String>> getNetworkCapabilities(long networkId) { Map<Service, Map<Capability, String>> networkCapabilities = new HashMap<Service, Map<Capability, String>>(); // list all services of this networkOffering List<NetworkServiceMapVO> servicesMap = _ntwkSrvcDao.getServicesInNetwork(networkId); for (NetworkServiceMapVO instance : servicesMap) { Service service = Service.getService(instance.getService()); NetworkElement element = getElementImplementingProvider(instance.getProvider()); if (element != null) { Map<Service, Map<Capability, String>> elementCapabilities = element.getCapabilities(); if (elementCapabilities != null) { networkCapabilities.put(service, elementCapabilities.get(service)); } } } return networkCapabilities; }
protected NetworkServiceMapDaoImpl() { super(); AllFieldsSearch = createSearchBuilder(); AllFieldsSearch.and("networkId", AllFieldsSearch.entity().getNetworkId(), 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("networkId", MultipleServicesSearch.entity().getNetworkId(), SearchCriteria.Op.EQ); MultipleServicesSearch.and("service", MultipleServicesSearch.entity().getService(), SearchCriteria.Op.IN); MultipleServicesSearch.and("provider", MultipleServicesSearch.entity().getProvider(), SearchCriteria.Op.EQ); MultipleServicesSearch.done(); DistinctProvidersSearch = createSearchBuilder(String.class); DistinctProvidersSearch.and("networkId", DistinctProvidersSearch.entity().getNetworkId(), SearchCriteria.Op.EQ); DistinctProvidersSearch.and("provider", DistinctProvidersSearch.entity().getProvider(), SearchCriteria.Op.EQ); DistinctProvidersSearch.and("service", DistinctProvidersSearch.entity().getService(), SearchCriteria.Op.EQ); DistinctProvidersSearch.selectFields(DistinctProvidersSearch.entity().getProvider()); DistinctProvidersSearch.done(); }
ZoneSecurityGroupSearch.and("dataCenterId", ZoneSecurityGroupSearch.entity().getDataCenterId(), Op.EQ); final SearchBuilder<NetworkServiceMapVO> offJoin = _ntwkSvcMap.createSearchBuilder(); offJoin.and("service", offJoin.entity().getService(), Op.EQ); ZoneSecurityGroupSearch.join("services", offJoin, ZoneSecurityGroupSearch.entity().getId(), offJoin.entity().getNetworkId(), JoinBuilder.JoinType.INNER); ZoneSecurityGroupSearch.done(); join3.and("service", join3.entity().getService(), Op.EQ); SecurityGroupSearch.join("services", join3, SecurityGroupSearch.entity().getId(), join3.entity().getNetworkId(), JoinBuilder.JoinType.INNER); SecurityGroupSearch.done(); SourceNATSearch.and("guestType", SourceNATSearch.entity().getGuestType(), Op.EQ); final SearchBuilder<NetworkServiceMapVO> join6 = _ntwkSvcMap.createSearchBuilder(); join6.and("service", join6.entity().getService(), Op.EQ); SourceNATSearch.join("services", join6, SourceNATSearch.entity().getId(), join6.entity().getNetworkId(), JoinBuilder.JoinType.INNER); SourceNATSearch.done();