/// <summary> /// Updates the specified schema. /// </summary> /// <param name="schemaName">Name of the schema.</param> /// <param name="schemaRawJson">The schema raw json.</param> /// <exception cref="InvalidOperationException"></exception> public void Update(string schemaName, string schemaRawJson) { if (Schemas.All(s => s.SchemaName != schemaName)) { throw new InvalidOperationException( $"Unable to update schema. No schema with the name '{schemaName}' exists"); } var schema = new DataPageSchema(schemaName, schemaRawJson); Schemas[Schemas.FindIndex(s => s.SchemaName == schemaName)] = schema; DatabaseHelper.WriteSchema(schema); }
/// <summary> /// Adds the specified schema. /// </summary> /// <param name="schemaName">Name of the schema.</param> /// <param name="schemaRawJson">The schema raw json.</param> /// <exception cref="InvalidOperationException"></exception> public void Add(string schemaName, string schemaRawJson) { if (Schemas.Any(s => s.SchemaName == schemaName)) { throw new InvalidOperationException( $"Unable to add schema. A schema with the name '{schemaName}' already exists"); } var schema = new DataPageSchema(schemaName, schemaRawJson); Schemas.Add(schema); DatabaseHelper.WriteSchema(schema); }
/// <inheritdoc /> public void WriteSchema(DataPageSchema schema) { WriteFile(Path.Combine(SchemaSubFolderPath, $"{schema.SchemaName}.json"), JsonUtils.Prettify(schema.SchemaRaw)); }
/// <inheritdoc /> public void WriteSchemaVersion(DataPageSchema dataPage) { throw new NotImplementedException(); }