private void initializeFlowRules() { OpenstackSwitchingRulePopulator rulePopulator = new OpenstackSwitchingRulePopulator( appId, flowObjectiveService, deviceService, restHandler, driverService); deviceService .getDevices() .forEach( device -> { log.debug( "device {} num of ports {} ", device.id(), deviceService.getPorts(device.id()).size()); deviceService .getPorts(device.id()) .stream() .filter(port -> port.annotations().value("portName").startsWith("tap")) .forEach( vmPort -> { OpenstackPort osPort = rulePopulator.openstackPort(vmPort); if (osPort != null) { rulePopulator.populateSwitchingRules(device, vmPort); registerDhcpInfo(osPort); } else { log.warn("No openstackPort information for port {}", vmPort); } }); }); }
private void processPortAdded(Device device, Port port) { if (!port.annotations().value("portName").equals("vxlan")) { OpenstackSwitchingRulePopulator rulePopulator = new OpenstackSwitchingRulePopulator( appId, flowObjectiveService, deviceService, restHandler, driverService); rulePopulator.populateSwitchingRules(device, port); } }