/**
  * Broadcast that the GridMaster is online.
  *
  * @param gmNodeID GridNode ID of the GridMaster.
  */
 static void broadcastGmOnline(String gmNodeID) {
   broadcastConnectionState(
       ConnectionNotification.STATE_ONLINE,
       ConnectionNotification.TYPE_GM,
       gmNodeID,
       ConnectionContext.getInstance().getMyCommInfoString());
 }
  /**
   * Send a message.
   *
   * @param eventID the Event ID of the message
   * @param transID The Trans ID for the message instance.
   * @param dataPayload The data payload of the message
   * @param filePayload The file payload of the message.
   * @param sendChannel The channel to send via.
   */
  void send(
      String eventID,
      String transID,
      String[] dataPayload,
      File[] filePayload,
      ChannelInfo sendChannel)
      throws Throwable {
    if (getProperties().getIsTest()) {
      Logger.log("[DelegateHelper.send] Testing only. No real sending initiated");
    } else {
      String fileID = null;
      if (filePayload != null) fileID = "connection_E" + eventID + "_T" + transID;

      // 031001NSL
      ChannelSendHeader header = new ChannelSendHeader(eventID, transID, null, fileID);
      header.setGridnodeHeaderInfo(
          ConnectionContext.getInstance().getMyNodeID(), sendChannel.getReferenceId(), null);

      // send via sendChannel
      ServiceLookupHelper.getChannelManager()
          .send(sendChannel, dataPayload, filePayload, header.getHeaderArray());
      /*031001NSL
      new String[] {eventID, transID, null, fileID,
      ConnectionContext.getInstance().getMyNodeID(), //sender
      sendChannel.getReferenceId()});  //recipient
      */
    }
  }