C# Class CK.Core.ActivityMonitorBridge

A IActivityMonitorClient that relays what happens in a monitor to another monitor. In Net55, automatically supports logs crossing Application Domains. See ActivityMonitorBridgeTarget.
Inheritance: IActivityMonitorBoundClient, IActivityMonitorBridgeCallback
Show file Open project: Invenietis/ck-core

Public Properties

Property Type Description
TagBridgePrematureClose CKTrait

Private Properties

Property Type Description
GetActualTargetFilter LogFilter
IActivityMonitorBoundClient void
IActivityMonitorBridgeCallback void
IActivityMonitorBridgeCallback void
IActivityMonitorBridgeCallback void
IActivityMonitorClient void
IActivityMonitorClient void
IActivityMonitorClient void
IActivityMonitorClient void
IActivityMonitorClient void
IActivityMonitorClient void

Public Methods

Method Description
ActivityMonitorBridge ( ActivityMonitorBridgeTarget bridge, bool pullTargetTopicAndAutoTagsFromTarget, bool pushTopicAndAutoTagsToTarget, bool applyTargetFilterToUnfilteredLogs = false ) : System

Initialize a new ActivityMonitorBridge bound to an existing ActivityMonitorBridgeTarget This Client should be registered in the IActivityMonitor.Output of a local monitor.

Private Methods

Method Description
GetActualTargetFilter ( ) : LogFilter

This is necessarily called in the context of the activity: we can call the bridge that can call the Monitor's ActualFilter that will be resynchronized if needed.

IActivityMonitorBoundClient ( Impl source, bool forceBuggyRemove ) : void

forceBuggyRemove is not used here since this client is not lockable.

IActivityMonitorBridgeCallback ( ) : void
IActivityMonitorBridgeCallback ( CKTrait newTags ) : void
IActivityMonitorBridgeCallback ( string newTopic, string fileName, int lineNumber ) : void
IActivityMonitorClient ( ActivityMonitorLogData data ) : void
IActivityMonitorClient ( CKTrait newTags ) : void
IActivityMonitorClient ( IActivityLogGroup group ) : void
IActivityMonitorClient ( IActivityLogGroup group, IReadOnlyList conclusions ) : void
IActivityMonitorClient ( IActivityLogGroup group, List &conclusions ) : void
IActivityMonitorClient ( string newTopic, string fileName, int lineNumber ) : void

Method Details

ActivityMonitorBridge() public method

Initialize a new ActivityMonitorBridge bound to an existing ActivityMonitorBridgeTarget This Client should be registered in the IActivityMonitor.Output of a local monitor.
public ActivityMonitorBridge ( ActivityMonitorBridgeTarget bridge, bool pullTargetTopicAndAutoTagsFromTarget, bool pushTopicAndAutoTagsToTarget, bool applyTargetFilterToUnfilteredLogs = false ) : System
bridge ActivityMonitorBridgeTarget The target bridge.
pullTargetTopicAndAutoTagsFromTarget bool /// When true, the and are automaticaly updated whenever they change on the target monitor. ///
pushTopicAndAutoTagsToTarget bool /// When true, any change to or are applied to the target monitor. ///
applyTargetFilterToUnfilteredLogs bool /// True to avoid sending logs with level below the target (when is true /// and it is an unfiltered line or group log). /// This is an optimization that can be used to send less data to the target monitor but breaks the UnfilteredLog/UnfilteredOpenGroup contract. ///
return System

Property Details

TagBridgePrematureClose public static property

Tags group conclusions emitted because of premature (unbalanced) removing of a bridge from a source monitor.
public static CKTrait TagBridgePrematureClose
return CKTrait