Class Database
Configures a database connection
Implements
Namespace: Gossip.Connection
Assembly: Gossip.dll
Syntax
public class Database : object, IDatabaseConfigurator
Methods
| Improve this Doc View SourceBuild()
Builds the database connection
Declaration
public IDatabaseConnectionProvider Build()
Returns
| Type | Description |
|---|---|
| IDatabaseConnectionProvider | IDatabaseConfigurator |
Configure<T>()
Configures a database configuration
Declaration
public static IDatabaseConfigurator Configure<T>()
where T : ISqlConnectionFactory, new()
Returns
| Type | Description |
|---|---|
| IDatabaseConfigurator | IDatabaseConfigurator |
Type Parameters
| Name | Description |
|---|---|
| T |
Configure<T>(T)
Creates database configuration
Declaration
public static IDatabaseConfigurator Configure<T>(T instance)
where T : ISqlConnectionFactory
Parameters
| Type | Name | Description |
|---|---|---|
| T | instance | SQL Connection |
Returns
| Type | Description |
|---|---|
| IDatabaseConfigurator | IDatabaseConfigurator |
Type Parameters
| Name | Description |
|---|---|
| T |
WithCommandTimeout(Int32)
Time in ms that the connection will wait for a command to execute
Declaration
public IDatabaseConfigurator WithCommandTimeout(int timeoutInSeconds)
Parameters
| Type | Name | Description |
|---|---|---|
| Int32 | timeoutInSeconds | Timeout (in seconds) |
Returns
| Type | Description |
|---|---|
| IDatabaseConfigurator | IDatabaseConfigurator |
WithConnectionString(Func<IConnectionString>)
Adds a connection string to the database connection
Declaration
public IDatabaseConfigurator WithConnectionString(Func<IConnectionString> connectionString)
Parameters
| Type | Name | Description |
|---|---|---|
| Func<IConnectionString> | connectionString | Database connection string |
Returns
| Type | Description |
|---|---|
| IDatabaseConfigurator | IDatabaseConfigurator |
WithConnectionString(Func<Task<IConnectionString>>)
Builds a connection string to configure a database connection
Declaration
public IDatabaseConfigurator WithConnectionString(Func<Task<IConnectionString>> connectionString)
Parameters
| Type | Name | Description |
|---|---|---|
| Func<Task<IConnectionString>> | connectionString | Database Connection String |
Returns
| Type | Description |
|---|---|
| IDatabaseConfigurator | IDatabaseConfigurator |
WithExecutionStrategy(IExecutionStrategy)
Adds an execution strategy to the database connection
Declaration
public IDatabaseConfigurator WithExecutionStrategy(IExecutionStrategy executionStrategy)
Parameters
| Type | Name | Description |
|---|---|---|
| IExecutionStrategy | executionStrategy | Execution strategy |
Returns
| Type | Description |
|---|---|
| IDatabaseConfigurator | IDatabaseConfigurator |
WithFallbacks(IEnumerable<Func<Task<IConnectionString>>>)
Adds fallbacks to the database connection
Declaration
public IDatabaseConfigurator WithFallbacks(IEnumerable<Func<Task<IConnectionString>>> fallbacks)
Parameters
| Type | Name | Description |
|---|---|---|
| IEnumerable<Func<Task<IConnectionString>>> | fallbacks | Connection fallbacks |
Returns
| Type | Description |
|---|---|
| IDatabaseConfigurator | IDatabaseConfigurator |
WithMonitoring(TimeSpan, CancellationToken)
Get insight into the state of the library. See what databases are in line to be used.
Declaration
public IDatabaseConfigurator WithMonitoring(TimeSpan interval, CancellationToken cancellationToken)
Parameters
| Type | Name | Description |
|---|---|---|
| TimeSpan | interval | The frequency for the monitor to run |
| CancellationToken | cancellationToken | Cancellation token |
Returns
| Type | Description |
|---|---|
| IDatabaseConfigurator |
WithPlugin<T>(Func<T>)
Add a plugin by providing a factory that will be used to instantiate the plugin every call to the database.
Declaration
public IDatabaseConfigurator WithPlugin<T>(Func<T> pluginFactory)
where T : IDatabasePlugin
Parameters
| Type | Name | Description |
|---|---|---|
| Func<T> | pluginFactory | The plugin to add. |
Returns
| Type | Description |
|---|---|
| IDatabaseConfigurator | IDatabaseConfigurator |
Type Parameters
| Name | Description |
|---|---|
| T |