/// <summary>Generates the properties for the given type and schema.</summary> /// <typeparam name="TSchemaType">The type of the schema type.</typeparam> /// <param name="type">The types.</param> /// <param name="schema">The properties</param> /// <param name="schemaResolver">The schema resolver.</param> protected override void GenerateObject <TSchemaType>(Type type, TSchemaType schema, ISchemaResolver schemaResolver) { if (_isRootType) { _isRootType = false; base.GenerateObject(type, schema, schemaResolver); } else { if (!schemaResolver.HasSchema(type)) { var schemaGenerator = new RootTypeJsonSchemaGenerator(_service, Settings); schemaGenerator.Generate <JsonSchema4>(type, schemaResolver); } schema.SchemaReference = schemaResolver.GetSchema(type); } }
/// <summary>Generates the properties for the given type and schema.</summary> /// <typeparam name="TSchemaType">The type of the schema type.</typeparam> /// <param name="type">The types.</param> /// <param name="schema">The properties</param> /// <param name="rootSchema">The root schema.</param> /// <param name="schemaDefinitionAppender"></param> /// <param name="schemaResolver">The schema resolver.</param> protected override void GenerateObject <TSchemaType>(Type type, TSchemaType schema, JsonSchema4 rootSchema, ISchemaDefinitionAppender schemaDefinitionAppender, ISchemaResolver schemaResolver) { if (_isRootType) { _isRootType = false; base.GenerateObject(type, schema, rootSchema, _schemaDefinitionAppender, schemaResolver); } else { if (!schemaResolver.HasSchema(type, false)) { var schemaGenerator = new RootTypeJsonSchemaGenerator(_service, _schemaDefinitionAppender, Settings); schemaGenerator.Generate(type, rootSchema, null, _schemaDefinitionAppender, schemaResolver); } schema.SchemaReference = schemaResolver.GetSchema(type, false); } }