Broke messageReceived() method into two to allow for better instrumentation via java agents like AppDynamics