public void StartListening() { byte[] frameData; while (_socket.Receive(out frameData)) { var message = _parsing.ResultFor(frameData); if (message != null) { if (_processingWorkflow != null) { _processingWorkflow.ApplyTo(message); } } } }