コード例 #1
0
 public TimeoutPersister(IConnectionManager connectionManager, string tablePrefix, SqlDialect sqlDialect, TimeSpan timeoutsCleanupExecutionInterval, Func <DateTime> utcNow)
 {
     this.connectionManager = connectionManager;
     this.sqlDialect        = sqlDialect;
     this.timeoutsCleanupExecutionInterval = timeoutsCleanupExecutionInterval;
     this.utcNow            = utcNow;
     timeoutCommands        = TimeoutCommandBuilder.Build(sqlDialect, tablePrefix);
     oldestSupportedTimeout = sqlDialect.OldestSupportedTimeout;
 }
コード例 #2
0
    public TimeoutPersister(Func <DbConnection> connectionBuilder, string tablePrefix, SqlVariant sqlVariant, string schema, TimeSpan timeoutsCleanupExecutionInterval)
    {
        this.connectionBuilder = connectionBuilder;
        this.timeoutsCleanupExecutionInterval = timeoutsCleanupExecutionInterval;
        timeoutCommands = TimeoutCommandBuilder.Build(sqlVariant, tablePrefix, schema);
        commandBuilder  = new CommandBuilder(sqlVariant);

        switch (sqlVariant)
        {
        case SqlVariant.MsSqlServer:
            oldestSupportedTimeout = SqlDateTime.MinValue.Value;
            break;

        case SqlVariant.Oracle:
        case SqlVariant.MySql:
            oldestSupportedTimeout = new DateTime(1000, 1, 1);
            break;

        default:
            throw new NotSupportedException("Not supported SQL dialect: " + sqlVariant);
        }
    }