Exemple #1
0
 /// <summary>
 /// Initializes a new instance of the <see cref="SchemaRegistry"/> class.
 /// </summary>
 /// <param name="originalRegistry"><see cref="ISchemaRegistry"/> for holding schemas.</param>
 /// <param name="providers"><see cref="IInstancesOf{T}"/> of <see cref="ICanProvideSwaggerSchemas"/>.</param>
 /// <param name="idManager"><see cref="SchemaIdManager"/> for managing schemaa identifiers.</param>
 public SchemaRegistry(
     ISchemaRegistry originalRegistry,
     IInstancesOf <ICanProvideSwaggerSchemas> providers,
     SchemaIdManager idManager)
 {
     _originalRegistry = originalRegistry;
     _providers        = providers;
     _idManager        = idManager;
 }
Exemple #2
0
 public AsyncApiSchemaRegistry(
     JsonSerializerSettings jsonSerializerSettings,
     SchemaRegistryOptions options = null)
 {
     this._jsonSerializerSettings = jsonSerializerSettings;
     this._jsonContractResolver   = this._jsonSerializerSettings.ContractResolver ??
                                    (IContractResolver) new DefaultContractResolver();
     this._options         = options ?? new SchemaRegistryOptions();
     this._schemaIdManager = new SchemaIdManager(this._options.SchemaIdSelector);
     this.Definitions      = (IDictionary <string, Schema>) new Dictionary <string, Schema>();
 }
Exemple #3
0
 /// <inheritdoc/>
 public Schema ProvideFor(Type type, ISchemaRegistry registry, SchemaIdManager idManager)
 {
     return(registry.GetOrRegister(type.GetConceptValueType()));
 }