Beispiel #1
0
        public FilterFormatter(FilteredLog log)
        {
            if (log == null)
                throw new ArgumentNullException ("log");

            this.log = log;
        }
Beispiel #2
0
        ILogProvider create_derived_log()
        {
            ILogProvider sublog;

            switch (view_mode) {
            case ViewMode.Compact:
                compact_log = new CompactLog (full_log);
                sublog = compact_log;
                break;

            case ViewMode.Full:
                compact_log = null;
                sublog = full_log;
                break;

            default:
                Debug.Assert (false, "not reached");
                sublog = null;
                break;
            }

            switch (filter_mode) {
            case FilterMode.Unfiltered:
                filtered_log = null;
                return sublog;

            case FilterMode.Filtered:
                /* FIXME: what if compiling the regex fails? */
                Regex regex = make_regex (filter_entry.Text);

                if (regex != null)
                    filtered_log = new FilteredLog (sublog, new RegexFilter (new RegexCache (regex)));
                else
                    filtered_log = null;

                return filtered_log;
            }

            Debug.Assert (false, "not reached");
            return null;
        }