public TracingDiagnosticMethod(ITracingDiagnosticListener diagnosticListener, MethodInfo method, string diagnosticName) { _diagnosticListener = diagnosticListener; _method = method; _diagnosticName = diagnosticName; _parameterResolvers = GetParameterResolvers(method).ToArray(); }
public TracingDiagnosticMethodCollection(ITracingDiagnosticListener diagnosticListener) { _methods = new List <TracingDiagnosticMethod>(); foreach (var method in diagnosticListener.GetType().GetMethods()) { var diagnosticName = method.GetCustomAttribute <DiagnosticName>(); if (diagnosticName == null) { continue; } _methods.Add(new TracingDiagnosticMethod(diagnosticListener, method, diagnosticName.Name)); } }
public TracingDiagnosticObserver(ITracingDiagnosticListener tracingdiagnosticListener) { _methodCollection = new TracingDiagnosticMethodCollection(tracingdiagnosticListener); }
protected virtual void Subscribe(DiagnosticListener listener, ITracingDiagnosticListener diagnosticListener) { listener.Subscribe(new TracingDiagnosticObserver(diagnosticListener)); }