Example #1
0
        public void Should_build_data_schema()
        {
            var languagesConfig = LanguagesConfig.English.Set(Language.DE);

            var jsonSchema = schema.BuildJsonSchema(languagesConfig.ToResolver(), (n, s) => new JsonSchema {
                Reference = s
            });

            Assert.NotNull(ContentSchemaBuilder.CreateContentSchema(schema, jsonSchema));
        }
        public SchemaOpenApiGenerator(
            OpenApiDocument document,
            string appName,
            string appPath,
            Schema schema,
            SchemaResolver schemaResolver,
            JsonSchema statusSchema,
            PartitionResolver partitionResolver)
        {
            this.document = document;

            this.appName = appName;
            this.appPath = appPath;

            this.statusSchema = statusSchema;

            schemaPath = schema.Name;
            schemaName = schema.DisplayName();
            schemaType = schema.TypeName();

            dataSchema = schemaResolver($"{schemaType}Dto", schema.BuildJsonSchema(partitionResolver, schemaResolver));

            contentSchema = schemaResolver($"{schemaType}ContentDto", ContentSchemaBuilder.CreateContentSchema(schema, dataSchema));
        }
        private static JsonSchema BuildJsonSchema(Schema schema, IAppEntity app, bool withHiddenFields)
        {
            var dataSchema = schema.BuildJsonSchema(app.PartitionResolver(), (n, s) => s, withHiddenFields);

            return(ContentSchemaBuilder.CreateContentSchema(schema, dataSchema));
        }