public override string ToString()
        {
            StringBuilder filterDescription = new StringBuilder();

            switch (FilterType)
            {
            case FilterType.APPROVED_SOFTWARE_LIST:
                filterDescription.Append("software is ");
                if (IsNegated)
                {
                    filterDescription.Append("not in ");
                }
                else
                {
                    filterDescription.Append("in ");
                }
                filterDescription.Append("the list '");
                filterDescription.Append(ApprovedSoftwareListName);
                filterDescription.Append("'");
                break;

            case FilterType.LOGICAL_AND:
                if (IsNegated)
                {
                    filterDescription.Append("neither ");
                    filterDescription.Append(Filter1.ToString());
                    filterDescription.Append(" nor ");
                    filterDescription.Append(Filter2.ToString());
                }
                else
                {
                    filterDescription.Append("both ");
                    filterDescription.Append(Filter1.ToString());
                    filterDescription.Append(" and ");
                    filterDescription.Append(Filter2.ToString());
                }
                break;

            case FilterType.LOGICAL_OR:
                if (IsNegated)
                {
                    filterDescription.Append("not ");
                    filterDescription.Append(Filter1.ToString());
                    filterDescription.Append(" and not ");
                    filterDescription.Append(Filter2.ToString());
                }
                else
                {
                    filterDescription.Append("either ");
                    filterDescription.Append(Filter1.ToString());
                    filterDescription.Append(" or ");
                    filterDescription.Append(Filter2.ToString());
                }
                break;
            }
            return(filterDescription.ToString());
        }