Exemplo n.º 1
0
        public SchemaRegistry(
            JsonSerializerSettings jsonSerializerSettings,
            IDictionary<Type, Func<Schema>> customSchemaMappings,
            IEnumerable<ISchemaFilter> schemaFilters,
            IEnumerable<IModelFilter> modelFilters,
            Func<Type, string> schemaIdSelector,
            bool ignoreObsoleteProperties,
            bool describeAllEnumsAsStrings,
            bool describeStringEnumsInCamelCase,
            AutoRestEnumSupportType? autoRestEnumSupport)
        {
            _jsonSerializerSettings = jsonSerializerSettings;
            _customSchemaMappings = customSchemaMappings;
            _schemaFilters = schemaFilters;
            _modelFilters = modelFilters;
            _schemaIdSelector = schemaIdSelector;
            _ignoreObsoleteProperties = ignoreObsoleteProperties;
            _describeAllEnumsAsStrings = describeAllEnumsAsStrings;
            _describeStringEnumsInCamelCase = describeStringEnumsInCamelCase;
            _autoRestEnumSupport = autoRestEnumSupport;

            _contractResolver = jsonSerializerSettings.ContractResolver ?? new DefaultContractResolver();
            _referencedTypes = new Dictionary<Type, SchemaInfo>();
            Definitions = new Dictionary<string, Schema>();
        }
 public SwaggerGeneratorOptions(
     Func<ApiDescription, string, bool> versionSupportResolver = null,
     IEnumerable<string> schemes = null,
     IDictionary<string, SecurityScheme> securityDefinitions = null,
     bool ignoreObsoleteActions = false,
     Func<ApiDescription, string> groupingKeySelector = null,
     IComparer<string> groupingKeyComparer = null,
     IDictionary<Type, Func<Schema>> customSchemaMappings = null,
     IEnumerable<ISchemaFilter> schemaFilters = null,
     IEnumerable<IModelFilter> modelFilters = null,
     bool ignoreObsoleteProperties = false,
     Func<Type, string> schemaIdSelector = null, 
     bool describeAllEnumsAsStrings = false,
     bool describeStringEnumsInCamelCase = false,
     IEnumerable<IOperationFilter> operationFilters = null,
     IEnumerable<IDocumentFilter> documentFilters = null,
     Func<IEnumerable<ApiDescription>, ApiDescription> conflictingActionsResolver = null,
     AutoRestEnumSupportType? autoRestEnumSupport = null
     )
 {
     VersionSupportResolver = versionSupportResolver;
     Schemes = schemes;
     SecurityDefinitions = securityDefinitions;
     IgnoreObsoleteActions = ignoreObsoleteActions;
     GroupingKeySelector = groupingKeySelector ?? DefaultGroupingKeySelector;
     GroupingKeyComparer = groupingKeyComparer ?? Comparer<string>.Default;
     CustomSchemaMappings = customSchemaMappings ?? new Dictionary<Type, Func<Schema>>();
     SchemaFilters = schemaFilters ?? new List<ISchemaFilter>();
     ModelFilters = modelFilters ?? new List<IModelFilter>();
     IgnoreObsoleteProperties = ignoreObsoleteProperties;
     SchemaIdSelector = schemaIdSelector ?? DefaultSchemaIdSelector;
     DescribeAllEnumsAsStrings = describeAllEnumsAsStrings;
     DescribeStringEnumsInCamelCase = describeStringEnumsInCamelCase;
     AutoRestEnumSupport = autoRestEnumSupport;
     OperationFilters = operationFilters ?? new List<IOperationFilter>();
     DocumentFilters = documentFilters ?? new List<IDocumentFilter>();
     ConflictingActionsResolver = conflictingActionsResolver ?? DefaultConflictingActionsResolver;
 }