// Copyright © WireMock.Net using System.Collections.Generic; using System.Text.RegularExpressions; using WireMock.Handlers; using WireMock.Types; namespace WireMock.Admin.Settings; /// /// Settings /// [FluentBuilder.AutoGenerateBuilder] public class SettingsModel { /// /// Gets or sets the global delay in milliseconds. /// public int? GlobalProcessingDelay { get; set; } /// /// Gets or sets if partial mapping is allowed. /// public bool? AllowPartialMapping { get; set; } /// /// Gets or sets the RequestLog expiration in hours /// public int? RequestLogExpirationDuration { get; set; } /// /// Gets or sets the MaxRequestLog count. /// public int? MaxRequestLogCount { get; set; } /// /// Allow a Body for all HTTP Methods. (default set to false). /// public bool? AllowBodyForAllHttpMethods { get; set; } /// /// Allow only a HttpStatus Code in the response which is defined. (default set to false). /// - false : also null, 0, empty or invalid HttpStatus codes are allowed. /// - true : only codes defined in are allowed. /// public bool? AllowOnlyDefinedHttpStatusCodeInResponse { get; set; } /// /// Set to true to disable Json deserialization when processing requests. (default set to false). /// public bool? DisableJsonBodyParsing { get; set; } /// /// Disable support for GZip and Deflate request body decompression. (default set to false). /// public bool? DisableRequestBodyDecompressing { get; set; } /// /// Set to true to disable FormUrlEncoded deserializing when processing requests. (default set to false). /// public bool? DisableDeserializeFormUrlEncoded { get; set; } /// /// Handle all requests synchronously. (default set to false). /// public bool? HandleRequestsSynchronously { get; set; } /// /// Use the RegexExtended instead of the default . (default set to true). /// public bool? UseRegexExtended { get; set; } /// /// Save unmatched requests to a file using the . (default set to false). /// public bool? SaveUnmatchedRequests { get; set; } /// /// Gets or sets if the static mappings should be read at startup. /// public bool? ReadStaticMappings { get; set; } /// /// Watch the static mapping files + folder for changes when running. /// public bool? WatchStaticMappings { get; set; } /// /// A value indicating whether subdirectories within the static mappings path should be monitored. /// public bool? WatchStaticMappingsInSubdirectories { get; set; } /// /// Policies to use when using CORS. By default CORS is disabled. [Optional] /// public string? CorsPolicyOptions { get; set; } /// /// The proxy and record settings. /// public ProxyAndRecordSettingsModel? ProxyAndRecordSettings { get; set; } /// /// Defines on which scheme (http/https) to host. (This overrides the UseSSL value). /// public HostingScheme? HostingScheme { get; set; } /// /// Don't save the response-string in the LogEntry when WithBody(Func{IRequestMessage, string}) or WithBody(Func{IRequestMessage, Task{string}}) is used. (default set to false). /// public bool? DoNotSaveDynamicResponseInLogEntry { get; set; } /// /// See . /// /// Default value = "All". /// public QueryParameterMultipleValueSupport? QueryParameterMultipleValueSupport { get; set; } /// /// A list of Grpc ProtoDefinitions which can be used. /// public Dictionary? ProtoDefinitions { get; set; } /// /// Server client certificate mode /// public ClientCertificateMode ClientCertificateMode { get; set; } /// /// Whether to accept any client certificate /// public bool AcceptAnyClientCertificate { get; set; } /// /// Gets or sets the WebSocket settings. /// public WebSocketSettingsModel? WebSocketSettings { get; set; } }