Hi Niall,
In case you implement the throwing message event with a JavaDelegate, you are handed a DelegateExecution object. DelegateExecution has a method #getBpmnModelElementInstance that returns the current activity in the BPMN model as represented by the camunda bpmn model api. For a throwing event, you can cast the return FlowElement to IntermediateThrowEvent and from that it should be possible to access the event definition and the message name. Please let me know if you need a code snippet for that.
Cheers,
Thorben