1 package org.opendaylight.controller.sal.compatibility.adsal;
3 import org.opendaylight.controller.sal.compatibility.NodeMapping;
4 import org.opendaylight.controller.sal.packet.IPluginInDataPacketService;
5 import org.opendaylight.controller.sal.packet.RawPacket;
6 import org.opendaylight.controller.sal.packet.RawPacket;
7 import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeConnectorRef;
8 import org.opendaylight.yang.gen.v1.urn.opendaylight.packet.service.rev130709.PacketProcessingService;
9 import org.opendaylight.yang.gen.v1.urn.opendaylight.packet.service.rev130709.TransmitPacketInput;
10 import org.opendaylight.yang.gen.v1.urn.opendaylight.packet.service.rev130709.TransmitPacketInputBuilder;
12 public class DataPacketServiceAdapter implements IPluginInDataPacketService {
14 PacketProcessingService delegate;
17 public void transmitDataPacket(RawPacket outPkt) {
18 TransmitPacketInput packet = toTransmitPacketInput(outPkt);
19 delegate.transmitPacket(packet);
22 private TransmitPacketInput toTransmitPacketInput(RawPacket rawPacket) {
23 TransmitPacketInputBuilder builderTPIB = new TransmitPacketInputBuilder();
25 NodeConnectorRef egress = NodeMapping.toNodeConnectorRef(rawPacket.getOutgoingNodeConnector());
26 NodeConnectorRef ingress = NodeMapping.toNodeConnectorRef(rawPacket.getIncomingNodeConnector());
27 byte[] payload = rawPacket.getPacketData();
29 builderTPIB.setEgress(egress);
30 builderTPIB.setIngress(ingress);
31 builderTPIB.setPayload(payload);
33 return builderTPIB.build();