Commit 5150aee5 authored by Savorboard's avatar Savorboard

Replace `CapTransactionBase` with `ICapTransaction` where transactions are used. #471

parent 1c43afb0
......@@ -14,7 +14,7 @@ namespace DotNetCore.CAP
{
services.AddSingleton<CapStorageMarkerService>();
services.AddTransient<CapTransactionBase, InMemoryCapTransaction>();
services.AddTransient<ICapTransaction, InMemoryCapTransaction>();
services.AddSingleton<IDataStorage, InMemoryStorage.InMemoryStorage>();
services.AddSingleton<IStorageInitializer, InMemoryStorageInitializer>();
}
......
......@@ -27,7 +27,7 @@ namespace DotNetCore.CAP.MongoDB
services.AddSingleton<IDataStorage, MongoDBDataStorage>();
services.AddSingleton<IStorageInitializer, MongoDBStorageInitializer>();
services.AddTransient<CapTransactionBase, MongoDBCapTransaction>();
services.AddTransient<ICapTransaction, MongoDBCapTransaction>();
services.Configure(_configure);
......
......@@ -81,7 +81,7 @@ namespace DotNetCore.CAP
ICapPublisher publisher, bool autoCommit = false)
{
var clientSessionHandle = client.StartSession();
publisher.Transaction.Value = publisher.ServiceProvider.GetService<CapTransactionBase>();
publisher.Transaction.Value = publisher.ServiceProvider.GetService<ICapTransaction>();
var capTrans = publisher.Transaction.Value.Begin(clientSessionHandle, autoCommit);
return new CapMongoDbClientSessionHandle(capTrans);
}
......
......@@ -26,7 +26,7 @@ namespace DotNetCore.CAP
services.AddSingleton<IDataStorage, MySqlDataStorage>();
services.TryAddSingleton<IStorageInitializer, MySqlStorageInitializer>();
services.AddTransient<CapTransactionBase, MySqlCapTransaction>();
services.AddTransient<ICapTransaction, MySqlCapTransaction>();
//Add MySqlOptions
services.Configure(_configure);
......
......@@ -120,7 +120,7 @@ namespace DotNetCore.CAP
ICapPublisher publisher, bool autoCommit = false)
{
var trans = database.BeginTransaction();
publisher.Transaction.Value = publisher.ServiceProvider.GetService<CapTransactionBase>();
publisher.Transaction.Value = publisher.ServiceProvider.GetService<ICapTransaction>();
var capTrans = publisher.Transaction.Value.Begin(trans, autoCommit);
return new CapEFDbTransaction(capTrans);
}
......@@ -141,7 +141,7 @@ namespace DotNetCore.CAP
}
var dbTransaction = dbConnection.BeginTransaction();
publisher.Transaction.Value = publisher.ServiceProvider.GetService<CapTransactionBase>();
publisher.Transaction.Value = publisher.ServiceProvider.GetService<ICapTransaction>();
return publisher.Transaction.Value.Begin(dbTransaction, autoCommit);
}
}
......
......@@ -27,7 +27,7 @@ namespace DotNetCore.CAP
services.AddSingleton<IDataStorage, PostgreSqlDataStorage>();
services.AddSingleton<IStorageInitializer, PostgreSqlStorageInitializer>();
services.AddTransient<CapTransactionBase, PostgreSqlCapTransaction>();
services.AddTransient<ICapTransaction, PostgreSqlCapTransaction>();
}
}
}
\ No newline at end of file
......@@ -123,7 +123,7 @@ namespace DotNetCore.CAP
if (dbConnection.State == ConnectionState.Closed) dbConnection.Open();
var dbTransaction = dbConnection.BeginTransaction();
publisher.Transaction.Value = publisher.ServiceProvider.GetService<CapTransactionBase>();
publisher.Transaction.Value = publisher.ServiceProvider.GetService<ICapTransaction>();
return publisher.Transaction.Value.Begin(dbTransaction, autoCommit);
}
......@@ -138,7 +138,7 @@ namespace DotNetCore.CAP
ICapPublisher publisher, bool autoCommit = false)
{
var trans = database.BeginTransaction();
publisher.Transaction.Value = publisher.ServiceProvider.GetService<CapTransactionBase>();
publisher.Transaction.Value = publisher.ServiceProvider.GetService<ICapTransaction>();
var capTrans = publisher.Transaction.Value.Begin(trans, autoCommit);
return new CapEFDbTransaction(capTrans);
}
......
......@@ -29,7 +29,7 @@ namespace DotNetCore.CAP
services.AddSingleton<DiagnosticProcessorObserver>();
services.AddSingleton<IDataStorage, SqlServerDataStorage>();
services.AddSingleton<IStorageInitializer, SqlServerStorageInitializer>();
services.AddTransient<CapTransactionBase, SqlServerCapTransaction>();
services.AddTransient<ICapTransaction, SqlServerCapTransaction>();
services.TryAddEnumerable(ServiceDescriptor.Singleton<IProcessingServer, DiagnosticRegister>());
services.Configure(_configure);
......
......@@ -165,7 +165,7 @@ namespace DotNetCore.CAP
if (dbConnection.State == ConnectionState.Closed) dbConnection.Open();
var dbTransaction = dbConnection.BeginTransaction();
publisher.Transaction.Value = publisher.ServiceProvider.GetService<CapTransactionBase>();
publisher.Transaction.Value = publisher.ServiceProvider.GetService<ICapTransaction>();
var capTransaction = publisher.Transaction.Value.Begin(dbTransaction, autoCommit);
return (IDbTransaction) capTransaction.DbTransaction;
}
......@@ -181,7 +181,7 @@ namespace DotNetCore.CAP
ICapPublisher publisher, bool autoCommit = false)
{
var trans = database.BeginTransaction();
publisher.Transaction.Value = publisher.ServiceProvider.GetService<CapTransactionBase>();
publisher.Transaction.Value = publisher.ServiceProvider.GetService<ICapTransaction>();
var capTrans = publisher.Transaction.Value.Begin(trans, autoCommit);
return new CapEFDbTransaction(capTrans);
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment