csharp/Microsoft.Azure.Databricks.Client/UnityCatalog/SystemSchemasApiClient.cs (33 lines of code) (raw):

using Microsoft.Azure.Databricks.Client.Models.UnityCatalog; using System.Collections.Generic; using System.Linq; using System.Net.Http; using System.Text.Json; using System.Text.Json.Nodes; using System.Threading; using System.Threading.Tasks; namespace Microsoft.Azure.Databricks.Client.UnityCatalog; public class SystemSchemasApiClient : ApiClient, ISystemSchemas { public SystemSchemasApiClient(HttpClient httpClient) : base(httpClient) { } public async Task<IEnumerable<SystemSchema>> List(string metastoreId, CancellationToken cancellationToken = default) { var requestUri = $"{BaseUnityCatalogUri}/metastores/{metastoreId}/systemschemas"; var systemSchemasList = await HttpGet<JsonObject>(this.HttpClient, requestUri, cancellationToken).ConfigureAwait(false); systemSchemasList.TryGetPropertyValue("schemas", out var schemas); return schemas?.Deserialize<IEnumerable<SystemSchema>>(Options) ?? Enumerable.Empty<SystemSchema>(); } public async Task Enable(string metastoreId, SystemSchemaName schemaName, CancellationToken cancellationToken = default) { var requestUri = $"{BaseUnityCatalogUri}/metastores/{metastoreId}/systemschemas/{schemaName}"; await HttpPut(this.HttpClient, requestUri, new { }, cancellationToken); } public async Task Disable(string metastoreId, SystemSchemaName schemaName, CancellationToken cancellationToken = default) { var requestUri = $"{BaseUnityCatalogUri}/metastores/{metastoreId}/systemschemas/{schemaName}"; await HttpDelete(this.HttpClient, requestUri, cancellationToken); } }