private void XbeeService_MessageReceived(object sender, IXBeeFrame e) { Type frameType = e.GetType(); IXBeeFrameProcessor processor = XBeeFrameProcessorFactory.GetProcessorByFrameType(frameType); if (processor != null) { processor.ProcessFrame(this, e); } else { Log.Debug("Dropping frame with type " + frameType.Name + " as no suitable processor is found."); } }