/// <summary>
        /// Gets if message body text is needed for matching.
        /// </summary>
        /// <returns></returns>
        public bool IsBodyTextNeeded()
        {
            if (m_SearchKeyName == "BODY")
            {
                return(true);
            }
            else if (m_SearchKeyName == "NOT")
            {
                return(SearchGroup.IsBodyTextNeededForKey(m_SearchKeyValue));
            }
            else if (m_SearchKeyName == "OR")
            {
                object serachKey1 = ((object[])m_SearchKeyValue)[0];
                object serachKey2 = ((object[])m_SearchKeyValue)[1];

                if (SearchGroup.IsBodyTextNeededForKey(serachKey1) || SearchGroup.IsBodyTextNeededForKey(serachKey2))
                {
                    return(true);
                }
            }
            else if (m_SearchKeyName == "TEXT")
            {
                return(true);
            }

            return(false);
        }
        /// <summary>
        /// Gets if message body text is needed for matching.
        /// </summary>
        /// <returns></returns>
        public bool IsBodyTextNeeded()
        {
            foreach (object searchKey in m_pSearchKeys)
            {
                if (SearchGroup.IsBodyTextNeededForKey(searchKey))
                {
                    return(true);
                }
            }

            return(false);
        }