import org.opendaylight.mdsal.binding.api.NotificationService;
import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.service.rev130819.SalFlowService;
import org.opendaylight.yang.gen.v1.urn.opendaylight.l2switch.l2switch.config.rev140528.L2switchConfig;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.packet.arp.rev140528.ArpPacketReceived;
import org.opendaylight.yangtools.concepts.Registration;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
// Setup reactive flow writer
LOG.info("L2Switch will react to network traffic and install flows");
ReactiveFlowWriter reactiveFlowWriter = new ReactiveFlowWriter(inventoryReader, flowWriterService);
- reactFlowWriterReg = notificationService.registerNotificationListener(reactiveFlowWriter);
+ reactFlowWriterReg = notificationService.registerListener(ArpPacketReceived.class, reactiveFlowWriter);
}
LOG.info("L2SwitchMain initialized.");
}
package org.opendaylight.l2switch.flow;
import org.opendaylight.l2switch.inventory.InventoryReader;
+import org.opendaylight.mdsal.binding.api.NotificationService.Listener;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.MacAddress;
import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeConnectorRef;
import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.packet.arp.rev140528.ArpPacketListener;
import org.opendaylight.yang.gen.v1.urn.opendaylight.packet.arp.rev140528.ArpPacketReceived;
import org.opendaylight.yang.gen.v1.urn.opendaylight.packet.arp.rev140528.arp.packet.received.packet.chain.packet.ArpPacket;
import org.opendaylight.yang.gen.v1.urn.opendaylight.packet.basepacket.rev140528.packet.chain.grp.PacketChain;
/**
* This class listens to certain type of packets and writes a mac to mac flows.
*/
-public class ReactiveFlowWriter implements ArpPacketListener {
+public class ReactiveFlowWriter implements Listener<ArpPacketReceived> {
private final InventoryReader inventoryReader;
private final FlowWriterService flowWriterService;
}
@Override
- public void onArpPacketReceived(ArpPacketReceived packetReceived) {
+ public void onNotification(ArpPacketReceived packetReceived) {
if (packetReceived == null || packetReceived.getPacketChain() == null) {
return;
}