public override bool Equals(object obj) { bool retVal = false; if (obj is MsgConfigurationKey) { MsgConfigurationKey key = (MsgConfigurationKey)obj; retVal = _msgTag.Equals(key._msgTag) && _scrId.Equals(key._scrId) && _dstId.Equals(key._dstId); } return(retVal); }
/// <summary> /// Obtains the configuration for a message to be sent from /// specifics source and destination /// </summary> /// <param name="msgTag">The name of the message to be sent</param> /// <param name="srcUnitId">The identifier of the sender</param> /// <param name="dstUnitId">The identifier of the destination</param> /// <returns>A DataSet containing the configuration of the /// desired message. The DataSet has the following structure: /// DMSG_PROCESSTIME NUMERIC, /// DMSG_USERTIME NUMERIC, /// MSG_DMSG_ID NUMERIC, /// MSG_HISMANDATORY NUMERIC, /// MSG_PRIORITY NUMERIC, /// MSG_MMSG_ID NUMERIC, /// MSG_MANDATORY NUMERIC, /// MSG_ORDER NUMERIC, /// MSG_IPADAPTER NVARCHAR(20), /// MSG_PORTADAPTER NUMERIC, /// MSG_TOTALRETRIES NUMERIC, /// MSG_PARCIALRETRIES NUMERIC, /// MSG_TOTALINTERVAL NUMERIC, /// MSG_PARCIALINTERVAL NUMERIC, /// MSG_TOTALTIME NUMERIC, /// MSG_UNI_ID NUMERIC, /// MSG_UNI_PORT NUMERIC, /// MSG_XSL NVARCHAR(255) /// </returns> /// <remarks>The results are ordered by: /// MSG_MANDATORY ASC, MSG_PRIORITY DESC, MSG_ORDER DESC</remarks> public DataSet GetConfiguration( string msgTag, decimal srcUnitId, decimal dstUnitId) { DataSet retVal = null; MsgConfigurationKey key = new MsgConfigurationKey(msgTag, srcUnitId, dstUnitId); if (_msgCfgCache.ContainsKey(key)) { retVal = (DataSet)_msgCfgCache[key]; } else { retVal = LoadConfiguration(msgTag, srcUnitId, dstUnitId); _msgCfgCache.Add(key, retVal); } return(retVal); }