Announcement Announcement Module
No announcement yet.
MessageChannel Name - method getName has been removed in M5 Page Title Module
Move Remove Collapse
Conversation Detail Module
  • Filter
  • Time
  • Show
Clear All
new posts

  • MessageChannel Name - method getName has been removed in M5


    I've been using version M3, and decided to upgrade to M5, I've noticed when I complied that the getName method on the MessageChannel class has been removed?

    I had been using this to audit the name of the channels in my Audit Solution, and now I don't have anything similar, what would you recommend I use, if there is alternative to get the channel name?


    Amjad Khan

  • #2
    We decided to remove the getName() method from the MessageChannel interface, since it had nothing to do with actual behavior of the channel. That interface now *only* defines the send() and send(timeout) methods.

    The AbstractMessageChannel, which is the base class of all of the channels that we provide, does now implement this interface:
    public interface NamedComponent {
        String getComponentName();
        String getComponentType();
    That is intended to be used primarily for internal purposes (such as recording the Message History events). Can you explain how you are doing the auditing? I assume you are using a ChannelInterceptor? There might be some better options with the history support we've added recently.



    • #3
      Thanks Mark for the update.

      I'm using a channel interceptor. The requirement we have is to audit messages to a persisted database when we are processing a typical message, so this would typically include, the start when we first receive the message, any pre processing, post transformation and any post transformation processing.

      I was relying on the name to determine at what point the message was in when it was audited. In addition the audit functions as heartbeat, so we can see messages flowing through the system.

      However I could create an Audit Interceptor per channel, which would solve the problem, or use the base Interface Class.