package nxm.sys.inc;

import nxm.sys.lib.Message;

/** Interface Definitions for Message Handlers. Note that every NeXtMidas command implements this
    interface (see {@link nxm.sys.lib.Command#processMessage(Message)}).

    @see Message

    @author Jeff Schoen
    @version $Id: MessageHandler.java,v 1.8 2014/10/21 18:37:25 ntn Exp $
 */
public interface MessageHandler {
  /** Processes a message.
      @param msg The message.
      @return {@link Commandable#NORMAL} after processing the message or {@link Commandable#NOOP}
              if the message is not processed.
   */
  int processMessage (Message msg);
}
