Class RedbService
MSSQL implementation of IRedbService.
Inherits all common logic from RedbServiceBase.
Only provides MSSQL-specific provider factories.
public class RedbService : RedbServiceBase, IRedbService, ISchemeSyncProvider, IObjectStorageProvider, ITreeProvider, IPermissionProvider, IQueryableProvider, IValidationProvider
Inheritance
Implements
Derived
Inherited Members
Properties
ContextNotRegisteredError
Error message when IRedbContext is not registered.
protected override string ContextNotRegisteredError { get; }
DatabaseTypeName
Database provider name (e.g., "PostgreSQL", "MSSql").
protected override string DatabaseTypeName { get; }
GetDatabaseSizeSql
SQL query to get database size in bytes.
protected override string GetDatabaseSizeSql { get; }
SqlDialect
SQL dialect for database-specific queries.
protected override ISqlDialect SqlDialect { get; }
Methods
CreateLazyPropsLoader(IRedbContext, ISchemeSyncProvider, IRedbObjectSerializer, RedbServiceConfiguration, string, IListProvider, ILogger?)
Create lazy props loader.
protected override ILazyPropsLoader CreateLazyPropsLoader(IRedbContext context, ISchemeSyncProvider schemeSync, IRedbObjectSerializer serializer, RedbServiceConfiguration config, string cacheDomain, IListProvider listProvider, ILogger? logger)
CreateListProvider(IRedbContext, RedbServiceConfiguration, ISchemeSyncProvider, ILogger?)
Create list provider.
protected override IListProvider CreateListProvider(IRedbContext context, RedbServiceConfiguration config, ISchemeSyncProvider schemeSync, ILogger? logger)
CreateObjectStorageProvider(IRedbContext, IRedbObjectSerializer, IPermissionProvider, IRedbSecurityContext, ISchemeSyncProvider, RedbServiceConfiguration, IListProvider, ILogger?)
Create object storage provider.
protected override IObjectStorageProvider CreateObjectStorageProvider(IRedbContext context, IRedbObjectSerializer serializer, IPermissionProvider permissionProvider, IRedbSecurityContext securityContext, ISchemeSyncProvider schemeSync, RedbServiceConfiguration config, IListProvider listProvider, ILogger? logger)
CreatePermissionProvider(IRedbContext, IRedbSecurityContext, ILogger?)
Create permission provider.
protected override IPermissionProvider CreatePermissionProvider(IRedbContext context, IRedbSecurityContext securityContext, ILogger? logger)
CreateQueryableProvider(IRedbContext, IRedbObjectSerializer, ISchemeSyncProvider, IRedbSecurityContext, ILazyPropsLoader, RedbServiceConfiguration, string, ILogger?)
Create queryable provider.
protected override IQueryableProvider CreateQueryableProvider(IRedbContext context, IRedbObjectSerializer serializer, ISchemeSyncProvider schemeSync, IRedbSecurityContext securityContext, ILazyPropsLoader lazyPropsLoader, RedbServiceConfiguration config, string cacheDomain, ILogger? logger)
CreateRoleProvider(IRedbContext, IRedbSecurityContext, ILogger?)
Create role provider.
protected override IRoleProvider CreateRoleProvider(IRedbContext context, IRedbSecurityContext securityContext, ILogger? logger)
CreateSchemeSyncProvider(IRedbContext, RedbServiceConfiguration, string, ILogger?)
Create scheme sync provider.
protected override ISchemeSyncProvider CreateSchemeSyncProvider(IRedbContext context, RedbServiceConfiguration config, string cacheDomain, ILogger? logger)
CreateTreeProvider(IRedbContext, IObjectStorageProvider, IPermissionProvider, IRedbObjectSerializer, IRedbSecurityContext, ISchemeSyncProvider, RedbServiceConfiguration, ILogger?)
Create tree provider.
protected override ITreeProvider CreateTreeProvider(IRedbContext context, IObjectStorageProvider objectStorage, IPermissionProvider permissionProvider, IRedbObjectSerializer serializer, IRedbSecurityContext securityContext, ISchemeSyncProvider schemeSync, RedbServiceConfiguration config, ILogger? logger)
CreateUserProvider(IRedbContext, IRedbSecurityContext, ILogger?)
Create user provider.
protected override IUserProvider CreateUserProvider(IRedbContext context, IRedbSecurityContext securityContext, ILogger? logger)
CreateValidationProvider(IRedbContext, ILogger?)
Create validation provider.
protected override IValidationProvider CreateValidationProvider(IRedbContext context, ILogger? logger)
ExecuteSchemaScriptAsync(string)
Executes the full schema initialization SQL script against the database.
protected override Task ExecuteSchemaScriptAsync(string sql)
GetObjectJsonSql()
Get SQL for loading object as JSON. Override in derived classes for DB-specific syntax.
protected override string GetObjectJsonSql()
ReadEmbeddedSql()
Reads the embedded combined SQL initialization script (redb_init.sql).
protected override string ReadEmbeddedSql()
TableExistsAsync(string)
Checks whether the specified table exists in the database.
protected override Task<bool> TableExistsAsync(string tableName)
Constructors
RedbService(IServiceProvider)
Creates a new MSSQL RedbService instance.