CK-Text CK-Text
    Show / Hide Table of Contents

    Struct LogFilter

    Immutable capture of a double LogLevelFilter. One for Line and one for Group. This value type exposes predefined configured couples: Debug, Trace (full trace), Verbose, Monitor, Terse, Release and Off (no log at all).

    Inherited Members
    Object.Equals(Object, Object)
    Object.ReferenceEquals(Object, Object)
    Object.GetType()
    Namespace: CK.Core
    Assembly: CK.ActivityMonitor.dll
    Syntax
    [Serializable]
    public struct LogFilter

    Constructors

    | Improve this Doc View Source

    LogFilter(LogLevelFilter, LogLevelFilter)

    Initializes a new LogFilter with a level for Groups and Line logs.

    Declaration
    public LogFilter(LogLevelFilter group, LogLevelFilter line)
    Parameters
    Type Name Description
    LogLevelFilter group

    Filter for groups.

    LogLevelFilter line

    Filter for lines.

    Fields

    | Improve this Doc View Source

    Debug

    Debug filter enables full Trace for both Line and Group.

    Declaration
    public static readonly LogFilter Debug
    Field Value
    Type Description
    LogFilter
    | Improve this Doc View Source

    Group

    The filter that applies to groups.

    Declaration
    public readonly LogLevelFilter Group
    Field Value
    Type Description
    LogLevelFilter
    | Improve this Doc View Source

    Invalid

    Invalid must be used as a special value. It is Invalid for both Line and Group.

    Declaration
    public static readonly LogFilter Invalid
    Field Value
    Type Description
    LogFilter
    | Improve this Doc View Source

    Line

    The filter that applies to log lines (Debug, Trace, Info, Warn, Error and Fatal).

    Declaration
    public readonly LogLevelFilter Line
    Field Value
    Type Description
    LogLevelFilter
    | Improve this Doc View Source

    Monitor

    While monitoring, only errors and warnings are captured (Warn), whereas all Groups appear (Trace) to get the detailed structure of the activity.

    Declaration
    public static readonly LogFilter Monitor
    Field Value
    Type Description
    LogFilter
    | Improve this Doc View Source

    Off

    Off filter does not capture anything.

    Declaration
    public static readonly LogFilter Off
    Field Value
    Type Description
    LogFilter
    | Improve this Doc View Source

    Release

    Release filter captures only Errors for both Line and Group.

    Declaration
    public static readonly LogFilter Release
    Field Value
    Type Description
    LogFilter
    | Improve this Doc View Source

    Terse

    Terse filter captures only errors for Line and limits Groups to Info level.

    Declaration
    public static readonly LogFilter Terse
    Field Value
    Type Description
    LogFilter
    | Improve this Doc View Source

    Trace

    Trace filter enables full Trace for both Line and Group.

    Declaration
    public static readonly LogFilter Trace
    Field Value
    Type Description
    LogFilter
    | Improve this Doc View Source

    Undefined

    Undefined filter is None for both Line and Group. This is the same as using the default constructor for this structure (it is exposed here for clarity).

    Declaration
    public static readonly LogFilter Undefined
    Field Value
    Type Description
    LogFilter
    | Improve this Doc View Source

    Verbose

    Verbose Trace all Groups but limits Line to Info level.

    Declaration
    public static readonly LogFilter Verbose
    Field Value
    Type Description
    LogFilter

    Methods

    | Improve this Doc View Source

    Combine(LogFilter)

    Combines this filter with another one. Line and Group level filters are combined with Combine(LogLevelFilter, LogLevelFilter).

    Declaration
    public LogFilter Combine(LogFilter other)
    Parameters
    Type Name Description
    LogFilter other

    The other filter to combine with this one.

    Returns
    Type Description
    LogFilter

    The resulting filter.

    | Improve this Doc View Source

    Combine(LogLevelFilter, LogLevelFilter)

    Combines two enums LogLevelFilter into one. The resulting filter is the more verbose one (the smallest level). Invalid is considered as None (it has no impact). This operation is commutative and associative: different order of combination always give the same result.

    Declaration
    public static LogLevelFilter Combine(LogLevelFilter x, LogLevelFilter y)
    Parameters
    Type Name Description
    LogLevelFilter x

    First filter level.

    LogLevelFilter y

    Second filter level.

    Returns
    Type Description
    LogLevelFilter

    The resulting level.

    | Improve this Doc View Source

    CombineNoneOnly(LogFilter)

    Combines this filter with another one only if Line or Group is None.

    Declaration
    public LogFilter CombineNoneOnly(LogFilter other)
    Parameters
    Type Name Description
    LogFilter other

    The other filter to combine with this one.

    Returns
    Type Description
    LogFilter

    The resulting filter.

    | Improve this Doc View Source

    Equals(Object)

    Overridden to compare Line and Group.

    Declaration
    public override bool Equals(object obj)
    Parameters
    Type Name Description
    Object obj

    Other object.

    Returns
    Type Description
    Boolean

    True if Line and Group are equal.

    Overrides
    ValueType.Equals(Object)
    | Improve this Doc View Source

    GetHashCode()

    Overridden to compute hash based on Line and Group values.

    Declaration
    public override int GetHashCode()
    Returns
    Type Description
    Int32

    The hash code.

    Overrides
    ValueType.GetHashCode()
    | Improve this Doc View Source

    HasImpactOn(LogFilter)

    Tests if Combine(LogFilter) this and x will result in a different filter than x.

    Declaration
    public bool HasImpactOn(LogFilter x)
    Parameters
    Type Name Description
    LogFilter x

    The other filter.

    Returns
    Type Description
    Boolean

    True if combining this filter and x will change x.

    | Improve this Doc View Source

    Parse(String)

    Parses the filter: it can be a predefined filter as ("Undefined", "Debug", "Trace", "Verbose", etc.) or as {GroupLogLevelFilter,LineLogLevelFilter} pairs like "{None,None}", "{Error,Debug}".

    Declaration
    public static LogFilter Parse(string filter)
    Parameters
    Type Name Description
    String filter

    Predefined filter as (Undefined, Debug, Verbose, etc.) or as {LineLogLevelFilter,GroupLogLevelFilter} like {None,None}, {Error,Trace}.

    Returns
    Type Description
    LogFilter

    The filter.

    | Improve this Doc View Source

    SetGroup(LogLevelFilter)

    Returns a LogFilter with a given LogLevelFilter for the Group.

    Declaration
    public LogFilter SetGroup(LogLevelFilter group)
    Parameters
    Type Name Description
    LogLevelFilter group

    Filter for the group.

    Returns
    Type Description
    LogFilter

    The filter with the group level.

    | Improve this Doc View Source

    SetLine(LogLevelFilter)

    Returns a LogFilter with a given LogLevelFilter for the Line.

    Declaration
    public LogFilter SetLine(LogLevelFilter line)
    Parameters
    Type Name Description
    LogLevelFilter line

    Filter for the line.

    Returns
    Type Description
    LogFilter

    The filter with the line level.

    | Improve this Doc View Source

    ToString()

    Overridden to show the group and the line level.

    Declaration
    public override string ToString()
    Returns
    Type Description
    String

    A {group,line} string.

    Overrides
    ValueType.ToString()
    | Improve this Doc View Source

    TryParse(String, out LogFilter)

    Tries to parse a LogFilter: it can be a predefined filter as ("Undefined", "Debug", "Verbose", etc.)
    or as {GroupLogLevelFilter,LineLogLevelFilter} pairs like "{None,None}", "{Error,Trace}".

    Declaration
    public static bool TryParse(string s, out LogFilter f)
    Parameters
    Type Name Description
    String s

    Filter to parse.

    LogFilter f

    Resulting filter.

    Returns
    Type Description
    Boolean

    True on success, false on error.

    Operators

    | Improve this Doc View Source

    Equality(LogFilter, LogFilter)

    Equality operator.

    Declaration
    public static bool operator ==(LogFilter x, LogFilter y)
    Parameters
    Type Name Description
    LogFilter x

    First filter.

    LogFilter y

    Second filter.

    Returns
    Type Description
    Boolean

    True if Line and Group are the same for the two filters.

    | Improve this Doc View Source

    Inequality(LogFilter, LogFilter)

    Inequality operator.

    Declaration
    public static bool operator !=(LogFilter x, LogFilter y)
    Parameters
    Type Name Description
    LogFilter x

    First filter.

    LogFilter y

    Second filter.

    Returns
    Type Description
    Boolean

    True if Line and Group are the same for the two filters.

    • Improve this Doc
    • View Source
    Back to top Copyright © 2015-2017 Invenietis
    Generated by DocFX