docs: public BaseMessage getMessage()
      {
          String strTrxID = this.getProperty(TrxMessageHeader.LOG_TRX_ID);
          if (m_strTrxID != null)
              if (m_strTrxID.equalsIgnoreCase(strTrxID))
                  return m_message;   // Cached message is what you are looking for.
          m_strTrxID = null;
          m_message = null;
          if (strTrxID != null)
          {   // Good, they are referencing a transaction (access the transaction properties).
              MessageLogModel recMessageLog = (MessageLogModel)this.getRecord(MessageLogModel.MESSAGE_LOG_FILE);
              if (recMessageLog == null)
                  recMessageLog = (MessageLogModel)Record.makeRecordFromClassName(MessageLogModel.THICK_CLASS, this);
              if (recMessageLog != null)
                  m_message = (BaseMessage)recMessageLog.createMessage(strTrxID);
          }
          return m_message;
      }