1 package org.opendaylight.l2switch.packethandler.decoders;
3 import org.opendaylight.yang.gen.v1.urn.opendaylight.packet.basepacket.rev140528.packet.PacketPayloadType;
4 import org.opendaylight.yang.gen.v1.urn.opendaylight.packetdecoder.config.impl.rev140528.PacketDecoderImplRuntimeMXBean;
5 import org.opendaylight.yangtools.yang.binding.Notification;
8 * Created by amitmandke on 6/5/14.
10 public class PacketDecoderServiceImpl implements PacketDecoderService, PacketDecoderImplRuntimeMXBean {
11 private DecoderRegistry decoderRegistry;
12 private PacketNotificationRegistry packetNotificationRegistry;
14 public PacketDecoderServiceImpl(DecoderRegistry decoderRegistry, PacketNotificationRegistry packetNotificationRegistry) {
15 this.decoderRegistry = decoderRegistry;
16 this.packetNotificationRegistry = packetNotificationRegistry;
20 public <C extends Notification> void registerDecoder(PacketPayloadType packetPayloadType, PacketDecoder packetDecoder, Class<C> packetReceivedNotificationType) {
21 decoderRegistry.addDecoder(packetPayloadType, packetDecoder);
22 packetNotificationRegistry.trackPacketNotificationListener(packetPayloadType, packetReceivedNotificationType);