/// <summary> /// Creates a new AuditPipelineModule using the fluent configuration API. /// </summary> /// <param name="builder">Module configuration as a fluent API</param> public static AuditPipelineModule Create(Action <IPipelineBuilder> builder) { var config = new PipelineBuilder(); builder.Invoke(config); var filters = config._filters as PipelineBuilderFilters ?? new PipelineBuilderFilters(); var module = new AuditPipelineModule() { AuditDataProvider = config._dataProvider, AuditDisabled = config._auditDisabled, CreationPolicy = config._creationPolicy, AuditEventType = config._eventType, IncludeHeaders = config._includeHeaders, IncludeQueryString = config._includeQueryString, ConnectEventsFilter = filters._connectEventsFilter, ReconnectEventsFilter = filters._reconnectEventsFilter, DisconnectEventsFilter = filters._disconnectEventsFilter, ErrorEventsFilter = filters._errorEventsFilter, IncomingEventsFilter = filters._incomingEventsFilter, OutgoingEventsFilter = filters._outgoingEventsFilter }; return(module); }
/// <summary> /// Adds an Audit Module to the hub pipeline. This must be called the before any methods on the Microsoft.AspNet.SignalR.Hubs.IHubPipelineInvoker are invoked. /// </summary> /// <param name="pipeline">The hub pipeline</param> /// <param name="config">The audit module configuration</param> /// <returns></returns> public static IHubPipeline AddAuditModule(this IHubPipeline pipeline, Action <IPipelineBuilder> config) { GlobalHost.HubPipeline.AddModule(AuditPipelineModule.Create(config)); return(pipeline); }