class DataPacketAdapter implements PacketProcessingListener {
private static final Logger LOG = LoggerFactory.getLogger(DataPacketAdapter.class);
+
+ // These are injected via Apache DM (see ComponentActivator)
private IPluginOutDataPacketService dataPacketPublisher;
@Override
public void onPacketReceived(final PacketReceived packet) {
try {
RawPacket inPacket = toRawPacket(packet);
- dataPacketPublisher.receiveDataPacket(inPacket);
+ if (dataPacketPublisher != null) {
+ dataPacketPublisher.receiveDataPacket(inPacket);
+ } else {
+ LOG.warn("IPluginOutDataPacketService is not available. Not forwarding packet to AD-SAL.");
+ }
} catch (ConstructionException e) {
LOG.warn("Failed to construct raw packet from {}, dropping it", packet, e);
}
ret.setIncomingNodeConnector(NodeMapping.toADNodeConnector(received.getIngress()));
return ret;
}
+
+ public IPluginOutDataPacketService getDataPacketPublisher() {
+ return dataPacketPublisher;
+ }
+
+ // These are injected via Apache DM (see ComponentActivator)
+ public void setDataPacketPublisher(final IPluginOutDataPacketService dataPacketPublisher) {
+ this.dataPacketPublisher = dataPacketPublisher;
+ }
}