IRuntimeRepositoryProvider
Namespace: Meshmakers.Octo.Runtime.Contracts
Provides access to runtime repositories for specific tenants. This interface allows services to obtain a repository instance for a given tenant ID.
public interface IRuntimeRepositoryProvider
Methods
GetRepositoryAsync(String, CancellationToken)
Gets a runtime repository for the specified tenant.
Task<IRuntimeRepository> GetRepositoryAsync(string tenantId, CancellationToken cancellationToken)
Parameters
tenantId String
The tenant identifier
cancellationToken CancellationToken
Cancellation token
Returns
Task<IRuntimeRepository>
The runtime repository for the tenant, or null if not available
IsRepositoryAvailable(String)
Checks if a repository is available for the specified tenant.
bool IsRepositoryAvailable(string tenantId)
Parameters
tenantId String
The tenant identifier
Returns
Boolean
True if a repository is available for the tenant
GetSchemaVersionsAsync(String, CancellationToken)
Gets the CK model versions currently installed in the tenant's schema. This method should be called BEFORE importing new CK models to capture the current versions for migration purposes.
Task<IReadOnlyDictionary<string, string>> GetSchemaVersionsAsync(string tenantId, CancellationToken cancellationToken)
Parameters
tenantId String
The tenant identifier
cancellationToken CancellationToken
Cancellation token
Returns
Task<IReadOnlyDictionary<String, String>>
Dictionary mapping model names to their installed version strings