public SchemaReport(JsonSchema schema, IList<JsonSchemaException> messages, SchemaConditionType type, SchemaReport parent, string conditionalPropertyName) { Schema = schema; Messages = messages; ConditionType = type; ConditionalPropertyName = conditionalPropertyName; SubResults = new List<SchemaReport>(); if (parent != null && parent.Messages != null) Parent = parent; }
private void AddConditionalSchemas(IList<SchemaReport> currentSchemas, IList<JsonSchema> schemaSet, SchemaConditionType resultType, SchemaReport parentResultSet) { if (schemaSet != null) { SchemaReport resultSet = new SchemaReport(null, new List<JsonSchemaException>(), resultType, parentResultSet, string.Empty); parentResultSet.SubResults.Add(resultSet); foreach (JsonSchema schema in schemaSet) { SchemaReport childResultSet = new SchemaReport(schema, new List<JsonSchemaException>(), SchemaConditionType.Schema, resultSet, string.Empty); currentSchemas.Add(childResultSet); resultSet.SubResults.Add(childResultSet); AddConditionalSchemas(currentSchemas, schema, childResultSet); } } }