using System; using System.Collections.Concurrent; using System.Collections.Generic; using System.Collections.ObjectModel; using WireMock.Logging; using WireMock.Matchers; using WireMock.Util; #if !NETSTANDARD using Owin; #else using Microsoft.AspNetCore.Builder; #endif namespace WireMock.Owin { internal class WireMockMiddlewareOptions { public TimeSpan? RequestProcessingDelay { get; set; } public IMatcher AuthorizationMatcher { get; set; } public bool AllowPartialMapping { get; set; } public IList Mappings { get; set; } = new List(); public ObservableCollection LogEntries { get; } = new ConcurentObservableCollection(); public int? RequestLogExpirationDuration { get; set; } public int? MaxRequestLogCount { get; set; } public IDictionary Scenarios { get; } = new ConcurrentDictionary(); #if !NETSTANDARD public Action PreWireMockMiddlewareInit { get; set; } public Action PostWireMockMiddlewareInit { get; set; } #else public Action PreWireMockMiddlewareInit { get; set; } public Action PostWireMockMiddlewareInit { get; set; } #endif } }