private ArrayList<String> getRestUriListFromSclServiceForwarderList( List<SclServiceFunctionForwarder> sclServiceForwarderList, String aclName, java.lang.Class<? extends AclBase> aclType) { // rest uri list should be created from Classifier SFFs. Classifier will be taken from ACL ArrayList<String> sffRestUriList = new ArrayList<>(); if (sclServiceForwarderList != null && aclName != null && aclType != null ) { for (SclServiceFunctionForwarder sclServiceForwarder : sclServiceForwarderList) { SffName sffName = new SffName(sclServiceForwarder.getName()); ServiceFunctionForwarder serviceForwarder = SfcProviderServiceForwarderAPI.readServiceFunctionForwarder(sffName); if (serviceForwarder != null && serviceForwarder.getRestUri() != null && !serviceForwarder.getRestUri().getValue().isEmpty()) { String restUri = serviceForwarder.getRestUri().getValue() + ACL_REST_URI + aclName; sffRestUriList.add(restUri); LOG.info("ACL will be send to REST URI {}", restUri); } } } return sffRestUriList.isEmpty() ? null : sffRestUriList; } }
/** * Returns an Service Function Forwarder object which can be stored * in DataStore. The returned object is built on basis of OVS Bridge. * The ovsdbBridgeAugmentation argument must be not null otherwise * NullPointerException will be raised. * * @param nodeName * @param nnode Netconf node Object * @return ServiceFunctionForwarder Object */ public static ServiceFunctionForwarder buildServiceForwarderFromNetconf(String nodeName, NetconfNode nnode) { Preconditions.checkNotNull(nnode); SffName sffName = new SffName(nodeName); SffDataPlaneLocatorBuilder sffDataPlaneLocatorBuilder = new SffDataPlaneLocatorBuilder(); // TODO: should be replaced once OVS interface name will be available List<SffDataPlaneLocator> sffDataPlaneLocatorList = new ArrayList<>(); sffDataPlaneLocatorList.add(sffDataPlaneLocatorBuilder.build()); ServiceFunctionForwarderBuilder serviceFunctionForwarderBuilder = new ServiceFunctionForwarderBuilder(); serviceFunctionForwarderBuilder.setName(sffName); IpAddress ipAddress = new IpAddress(nnode.getHost().getIpAddress().getValue()); serviceFunctionForwarderBuilder.setIpMgmtAddress(ipAddress); return serviceFunctionForwarderBuilder.build(); }
if (SfcProviderServiceForwarderAPI.deleteServiceFunctionForwarder(new SffName(nodeName))) { LOG.info("SFF {} deleted successfully", nodeName); } else { if (SfcProviderServiceForwarderAPI.deleteServiceFunctionForwarder(new SffName(nodeName))) { LOG.info("SFF {} deleted successfully", nodeName); } else {