SqlServerTransport GetTransport(string connectionString, IsolationLevel isolationLevel) { var rebusTime = new DefaultRebusTime(); var rebusLoggerFactory = new ConsoleLoggerFactory(false); var connectionProvider = new DbConnectionProvider(connectionString, rebusLoggerFactory) { IsolationLevel = isolationLevel }; var taskFactory = new TplAsyncTaskFactory(rebusLoggerFactory); var transport = new SqlServerTransport( connectionProvider: connectionProvider, inputQueueName: _queueName, rebusLoggerFactory: rebusLoggerFactory, asyncTaskFactory: taskFactory, rebusTime: rebusTime, options: new SqlServerTransportOptions(connectionProvider) ); transport.Initialize(); return(transport); }
public async Task DeliversMessagesByVisibleTimeAndNotByInsertionTime() { var rebusTime = new DefaultRebusTime(); var loggerFactory = new ConsoleLoggerFactory(false); var connectionProvider = new DbConnectionProvider(MySqlTestHelper.ConnectionString, loggerFactory); var asyncTaskFactory = new TplAsyncTaskFactory(loggerFactory); var transport = new MySqlTransport( connectionProvider, QueueName, loggerFactory, asyncTaskFactory, rebusTime, new MySqlTransportOptions(connectionProvider)); transport.EnsureTableIsCreated(); transport.Initialize(); var now = DateTime.Now; await PutInQueue(transport, GetTransportMessage("first message")); await PutInQueue(transport, GetTransportMessage("second message", deferredUntilTime : now.AddMinutes(-1))); await PutInQueue(transport, GetTransportMessage("third message", deferredUntilTime : now.AddMinutes(-2))); var firstMessage = await ReceiveMessageBody(transport); var secondMessage = await ReceiveMessageBody(transport); var thirdMessage = await ReceiveMessageBody(transport); // expect messages to be received in reverse order because of their visible times Assert.That(firstMessage, Is.EqualTo("third message")); Assert.That(secondMessage, Is.EqualTo("second message")); Assert.That(thirdMessage, Is.EqualTo("first message")); }
static SqlServerTransport GetTransport(TransportType transportType) { var rebusTime = new DefaultRebusTime(); var loggerFactory = new ConsoleLoggerFactory(false); var connectionProvider = new DbConnectionProvider(SqlTestHelper.ConnectionString, loggerFactory); var asyncTaskFactory = new TplAsyncTaskFactory(loggerFactory); var transport = transportType == TransportType.LeaseBased ? new SqlServerLeaseTransport( connectionProvider, QueueName, loggerFactory, asyncTaskFactory, rebusTime, TimeSpan.FromMinutes(1), TimeSpan.FromSeconds(5), () => "who cares", new SqlServerLeaseTransportOptions(connectionProvider) ) : new SqlServerTransport( connectionProvider, QueueName, loggerFactory, asyncTaskFactory, rebusTime, new SqlServerTransportOptions(connectionProvider) ); transport.EnsureTableIsCreated(); transport.Initialize(); return(transport); }
public ITransport Create(string inputQueueAddress) { var consoleLoggerFactory = new ConsoleLoggerFactory(false); var asyncTaskFactory = new TplAsyncTaskFactory(consoleLoggerFactory); if (inputQueueAddress == null) { var transport = new AzureServiceBusTransport(ConnectionString, null, consoleLoggerFactory, asyncTaskFactory); transport.Initialize(); return(transport); } return(_queuesToDelete.GetOrAdd(inputQueueAddress, () => { var transport = new BasicAzureServiceBusTransport(ConnectionString, inputQueueAddress, consoleLoggerFactory, asyncTaskFactory); transport.PurgeInputQueue(); transport.Initialize(); return transport; })); }
protected override void SetUp() { var connectionString = AsbTestConfig.ConnectionString; var consoleLoggerFactory = new ConsoleLoggerFactory(false); var asyncTaskFactory = new TplAsyncTaskFactory(consoleLoggerFactory); using (var transport = new AzureServiceBusTransport(connectionString, QueueName, consoleLoggerFactory, asyncTaskFactory, new DefaultNameFormatter())) { transport.PurgeInputQueue(); } _activator = new BuiltinHandlerActivator(); _busStarter = Configure.With(_activator) .Transport(t => t.UseAzureServiceBus(connectionString, QueueName)) .Routing(r => r.TypeBased().Map <TimedMessage>(QueueName)) .Options(o => { o.LogPipeline(); }) .Create(); _bus = _busStarter.Bus; Using(_bus); }
static void PurgeQueue(string queueName) { var consoleLoggerFactory = new ConsoleLoggerFactory(false); var asyncTaskFactory = new TplAsyncTaskFactory(consoleLoggerFactory); var connectionString = StandardAzureServiceBusTransportFactory.ConnectionString; new AzureServiceBusTransport(connectionString, queueName, consoleLoggerFactory, asyncTaskFactory) .PurgeInputQueue(); }
static void PurgeQueue(string queueName) { var consoleLoggerFactory = new ConsoleLoggerFactory(false); var asyncTaskFactory = new TplAsyncTaskFactory(consoleLoggerFactory); var connectionString = AsbTestConfig.ConnectionString; using (var transport = new AzureServiceBusTransport(connectionString, queueName, consoleLoggerFactory, asyncTaskFactory, new DefaultNameFormatter())) { transport.PurgeInputQueue(); } }
public ITransport CreateOneWayClient() { var consoleLoggerFactory = new ConsoleLoggerFactory(false); var connectionProvider = new DbConnectionProvider(SqlTestHelper.ConnectionString, consoleLoggerFactory); var asyncTaskFactory = new TplAsyncTaskFactory(consoleLoggerFactory); var transport = new SqlServerTransport(connectionProvider, null, consoleLoggerFactory, asyncTaskFactory); _disposables.Add(transport); transport.Initialize(); return(transport); }
public ITransport Create(string inputQueueAddress) { var consoleLoggerFactory = new ConsoleLoggerFactory(false); var connectionHelper = new OracleConnectionHelper(OracleTestHelper.ConnectionString); var asyncTaskFactory = new TplAsyncTaskFactory(consoleLoggerFactory); var transport = new OracleTransport(connectionHelper, _tableName, inputQueueAddress, consoleLoggerFactory, asyncTaskFactory, _fakeRebusTime); _disposables.Add(transport); transport.EnsureTableIsCreated(); transport.Initialize(); return(transport); }
protected override void SetUp() { var consoleLoggerFactory = new ConsoleLoggerFactory(false); var asyncTaskFactory = new TplAsyncTaskFactory(consoleLoggerFactory); var connectionHelper = new OracleFactory(OracleTestHelper.ConnectionString); _transport = new OracleTransport(connectionHelper, _tableName, QueueName, consoleLoggerFactory, asyncTaskFactory, new FakeRebusTime()); _transport.EnsureTableIsCreated(); Using(_transport); _transport.Initialize(); _cancellationToken = new CancellationTokenSource().Token; }
public ITransport CreateOneWayClient() { var rebusTime = new DefaultRebusTime(); var consoleLoggerFactory = new ConsoleLoggerFactory(false); var connectionProvider = new DbConnectionProvider(MySqlTestHelper.ConnectionString, consoleLoggerFactory); var asyncTaskFactory = new TplAsyncTaskFactory(consoleLoggerFactory); var transport = new MySqlTransport(connectionProvider, null, consoleLoggerFactory, asyncTaskFactory, rebusTime, new MySqlTransportOptions(connectionProvider)); _disposables.Add(transport); transport.Initialize(); return(transport); }
ITransport GetTransport() { var consoleLoggerFactory = new ConsoleLoggerFactory(false); var asyncTaskFactory = new TplAsyncTaskFactory(consoleLoggerFactory); var connectionString = StandardAzureServiceBusTransportFactory.ConnectionString; var transport = new AzureServiceBusTransport(connectionString, _queueName, consoleLoggerFactory, asyncTaskFactory); Using(transport); transport.Initialize(); transport.PurgeInputQueue(); return(transport); }
protected override void SetUp() { PostgreSqlTestHelper.DropTable(_tableName); var consoleLoggerFactory = new ConsoleLoggerFactory(false); var asyncTaskFactory = new TplAsyncTaskFactory(consoleLoggerFactory); var connectionHelper = new PostgresConnectionHelper(PostgreSqlTestHelper.ConnectionString); _transport = new PostgreSqlTransport(connectionHelper, _tableName, QueueName, consoleLoggerFactory, asyncTaskFactory, new DefaultRebusTime()); _transport.EnsureTableIsCreated(); Using(_transport); _transport.Initialize(); _cancellationToken = new CancellationTokenSource().Token; }
ITransport GetTransport() { var consoleLoggerFactory = new ConsoleLoggerFactory(false); var asyncTaskFactory = new TplAsyncTaskFactory(consoleLoggerFactory); var connectionString = AsbTestConfig.ConnectionString; //var transport = new AzureServiceBusTransport(connectionString, _queueName, consoleLoggerFactory, asyncTaskFactory); var transport = new AzureServiceBusTransport(connectionString, _queueName, consoleLoggerFactory, asyncTaskFactory, new AzureServiceBusNameHelper()); Using(transport); transport.Initialize(); transport.PurgeInputQueue(); return(transport); }
protected override void SetUp() { SqlTestHelper.DropTable(_tableName); var consoleLoggerFactory = new ConsoleLoggerFactory(false); var connectionProvider = new DbConnectionProvider(SqlTestHelper.ConnectionString, consoleLoggerFactory); var asyncTaskFactory = new TplAsyncTaskFactory(consoleLoggerFactory); _transport = new SqlServerTransport(connectionProvider, _tableName, QueueName, consoleLoggerFactory, asyncTaskFactory); _transport.EnsureTableIsCreated(); Using(_transport); _transport.Initialize(); }
public async Task NoProblem() { var consoleLoggerFactory = new ConsoleLoggerFactory(colored: false); var factory = new TplAsyncTaskFactory(consoleLoggerFactory); var logger = consoleLoggerFactory.GetLogger <VerifyAssumptionAboutDisposingAsyncTaskMultipleTimes>(); var task = factory.Create("test-task", intervalSeconds: 1, action: async() => logger.Info("Called back")); task.Start(); await Task.Delay(TimeSpan.FromSeconds(4)); task.Dispose(); task.Dispose(); task.Dispose(); task.Dispose(); }
public ITransport CreateOneWayClient() { var tableName = ("rebus_messages_" + TestConfig.Suffix).TrimEnd('_'); _tablesToDrop.Add(tableName); var consoleLoggerFactory = new ConsoleLoggerFactory(false); var connectionHelper = new MySqlConnectionHelper(MySqlTestHelper.ConnectionString); var asyncTaskFactory = new TplAsyncTaskFactory(consoleLoggerFactory); var transport = new MySqlTransport(connectionHelper, tableName, null, consoleLoggerFactory, asyncTaskFactory); _disposables.Add(transport); transport.EnsureTableIsCreated(); transport.Initialize(); return(transport); }
protected override void SetUp() { MySqlTestHelper.DropAllTables(); var rebusTime = new DefaultRebusTime(); var consoleLoggerFactory = new ConsoleLoggerFactory(false); var connectionProvider = new DbConnectionProvider(MySqlTestHelper.ConnectionString, consoleLoggerFactory); var asyncTaskFactory = new TplAsyncTaskFactory(consoleLoggerFactory); _transport = new MySqlTransport(connectionProvider, QueueName, consoleLoggerFactory, asyncTaskFactory, rebusTime, new MySqlTransportOptions(connectionProvider)); _transport.EnsureTableIsCreated(); Using(_transport); _transport.Initialize(); _cancellationToken = new CancellationTokenSource().Token; }
public ITransport Create(string inputQueueAddress) { var tableName = ("rebus_messages_" + TestConfig.Suffix).TrimEnd('_'); _tablesToDrop.Add(tableName); var consoleLoggerFactory = new ConsoleLoggerFactory(false); var connectionHelper = new PostgresConnectionHelper(PostgreSqlTestHelper.ConnectionString); var asyncTaskFactory = new TplAsyncTaskFactory(consoleLoggerFactory); var transport = new PostgreSqlTransport(connectionHelper, tableName, inputQueueAddress, consoleLoggerFactory, asyncTaskFactory, new DefaultRebusTime()); _disposables.Add(transport); transport.EnsureTableIsCreated(); transport.Initialize(); return(transport); }
public ITransport Create(string inputQueueAddress) { var tableName = ("RebusMessages_" + TestConfig.Suffix).TrimEnd('_'); _tablesToDrop.Add(tableName); var consoleLoggerFactory = new ConsoleLoggerFactory(false); var connectionProvider = new DbConnectionProvider(SqlTestHelper.ConnectionString, consoleLoggerFactory); var asyncTaskFactory = new TplAsyncTaskFactory(consoleLoggerFactory); var transport = new SqlServerTransport(connectionProvider, tableName, inputQueueAddress, consoleLoggerFactory, asyncTaskFactory); _disposables.Add(transport); transport.EnsureTableIsCreated(); transport.Initialize(); return(transport); }
protected override void SetUp() { var consoleLoggerFactory = new ConsoleLoggerFactory(false); var asyncTaskFactory = new TplAsyncTaskFactory(consoleLoggerFactory); new AzureServiceBusTransport(StandardAzureServiceBusTransportFactory.ConnectionString, QueueName, consoleLoggerFactory, asyncTaskFactory).PurgeInputQueue(); _activator = new BuiltinHandlerActivator(); _bus = Configure.With(_activator) .Transport(t => t.UseAzureServiceBus(StandardAzureServiceBusTransportFactory.ConnectionString, QueueName)) .Options(o => { o.LogPipeline(); }) .Start(); Using(_bus); }
static PostgreSqlTransport GetTransport() { var loggerFactory = new ConsoleLoggerFactory(false); var connectionProvider = new PostgresConnectionHelper(PostgreSqlTestHelper.ConnectionString); var asyncTaskFactory = new TplAsyncTaskFactory(loggerFactory); var transport = new PostgreSqlTransport( connectionProvider, TableName, QueueName, loggerFactory, asyncTaskFactory ); transport.EnsureTableIsCreated(); transport.Initialize(); return(transport); }
static OracleTransport GetTransport() { var loggerFactory = new ConsoleLoggerFactory(false); var connectionProvider = new OracleFactory(OracleTestHelper.ConnectionString); var asyncTaskFactory = new TplAsyncTaskFactory(loggerFactory); var transport = new OracleTransport( connectionProvider, TableName, QueueName, loggerFactory, asyncTaskFactory, new FakeRebusTime() ); transport.EnsureTableIsCreated(); transport.Initialize(); return(transport); }
public async Task TestLockFunctions() { var rebusTime = new DefaultRebusTime(); var consoleLoggerFactory = new ConsoleLoggerFactory(false); var connectionProvider = new DbConnectionProvider(MySqlTestHelper.ConnectionString, consoleLoggerFactory); var asyncTaskFactory = new TplAsyncTaskFactory(consoleLoggerFactory); // Create a MySQL locker var locker = new MySqlExclusiveAccessLock(connectionProvider, _lockTableName, consoleLoggerFactory, asyncTaskFactory, rebusTime, new MySqlExclusiveAccessLockOptions(connectionProvider)); locker.EnsureTableIsCreated(); // Try the check function which will return false initially const string lockName = "my_lock"; var result = await locker.IsLockAcquiredAsync(lockName, CancellationToken.None); Assert.That(result, Is.False); // Get the lock once result = await locker.AcquireLockAsync(lockName, CancellationToken.None); Assert.That(result, Is.True); // Try to get it again, and it should fail result = await locker.AcquireLockAsync(lockName, CancellationToken.None); Assert.That(result, Is.False); // Try the check function result = await locker.IsLockAcquiredAsync(lockName, CancellationToken.None); Assert.That(result, Is.True); // Now release the lock await locker.ReleaseLockAsync(lockName); // Try the check function and it should be false now result = await locker.IsLockAcquiredAsync(lockName, CancellationToken.None); Assert.That(result, Is.False); }
public ITransport CreateOneWayClient() { var tableName = ("RebusMessages_" + TestConfig.Suffix).TrimEnd('_'); SqlTestHelper.DropTable(tableName); _tablesToDrop.Add(tableName); var rebusTime = new DefaultRebusTime(); var consoleLoggerFactory = new ConsoleLoggerFactory(false); var connectionProvider = new DbConnectionProvider(SqlTestHelper.ConnectionString, consoleLoggerFactory); var asyncTaskFactory = new TplAsyncTaskFactory(consoleLoggerFactory); var transport = new SqlServerLeaseTransport(connectionProvider, null, consoleLoggerFactory, asyncTaskFactory, rebusTime, TimeSpan.FromMinutes(1), TimeSpan.FromSeconds(2), () => Environment.MachineName, new SqlServerLeaseTransportOptions(connectionProvider)); _disposables.Add(transport); transport.Initialize(); return(transport); }
protected override void SetUp() { var connectionString = StandardAzureServiceBusTransportFactory.ConnectionString; var consoleLoggerFactory = new ConsoleLoggerFactory(false); var asyncTaskFactory = new TplAsyncTaskFactory(consoleLoggerFactory); var busLifetimeEvents = new BusLifetimeEvents(); new AzureServiceBusTransport(connectionString, QueueName, consoleLoggerFactory, asyncTaskFactory).PurgeInputQueue(); _activator = new BuiltinHandlerActivator(); _bus = Configure.With(_activator) .Transport(t => t.UseAzureServiceBus(connectionString, QueueName)) .Routing(r => r.TypeBased().Map <TimedMessage>(QueueName)) .Options(o => { o.LogPipeline(); }) .Start(); Using(_bus); }
ITransport GetTransport() { var consoleLoggerFactory = new ConsoleLoggerFactory(false); var asyncTaskFactory = new TplAsyncTaskFactory(consoleLoggerFactory); var connectionString = StandardAzureServiceBusTransportFactory.ConnectionString; var busLifetimeEvents = new BusLifetimeEvents(); if (_mode == AzureServiceBusMode.Basic) { var basicTransport = new BasicAzureServiceBusTransport(connectionString, _queueName, consoleLoggerFactory, asyncTaskFactory); Using(basicTransport); basicTransport.Initialize(); basicTransport.PurgeInputQueue(); return(basicTransport); } var transport = new AzureServiceBusTransport(connectionString, _queueName, consoleLoggerFactory, asyncTaskFactory); Using(transport); transport.Initialize(); transport.PurgeInputQueue(); return(transport); }
public ITransport Create(string inputQueueAddress) { var consoleLoggerFactory = new ConsoleLoggerFactory(false); var asyncTaskFactory = new TplAsyncTaskFactory(consoleLoggerFactory); if (inputQueueAddress == null) { var transport = new KafkaTransport(consoleLoggerFactory, asyncTaskFactory, null, "127.0.0.1:9092", "1", inputQueueAddress); transport.Initialize(); return(transport); } return(_queuesToDelete.GetOrAdd(inputQueueAddress, () => { var transport = new KafkaTransport(consoleLoggerFactory, asyncTaskFactory, null, "127.0.0.1:9092", "1", inputQueueAddress); transport.Initialize(); return transport; })); }
public ITransport Create(string inputQueueAddress) { var tableName = ("RebusMessages_" + TestConfig.Suffix).TrimEnd('_'); SqlTestHelper.DropTable(tableName); _tablesToDrop.Add(tableName); var consoleLoggerFactory = new ConsoleLoggerFactory(false); var connectionProvider = new DbConnectionProvider(SqlTestHelper.ConnectionString, consoleLoggerFactory); var asyncTaskFactory = new TplAsyncTaskFactory(consoleLoggerFactory); var transport = new SqlServerLeaseTransport(connectionProvider, inputQueueAddress, consoleLoggerFactory, asyncTaskFactory, TimeSpan.FromMinutes(1), TimeSpan.FromSeconds(2), () => Environment.MachineName); // var transport = new SqlServerTransport(connectionProvider, tableName, inputQueueAddress, consoleLoggerFactory, asyncTaskFactory); _disposables.Add(transport); transport.EnsureTableIsCreated(); transport.Initialize(); return(transport); }
public AmazonInternalSettings(ConsoleLoggerFactory consoleLoggerFactory = null, TplAsyncTaskFactory tplAsyncTaskFactory = null, IAmazonCredentialsFactory amazonCredentialsFactory = null) : this() { m_RebusLoggerFactory = consoleLoggerFactory; m_AsyncTaskFactory = tplAsyncTaskFactory; m_AmazonCredentialsFactory = amazonCredentialsFactory; }