public DataBase(int parsersCount, IDataBaseEngine engine, ITransactionScheduler transactionScheduler) { _engineCommander = new EngineCommander(engine); _transactionScheduler = transactionScheduler; _sqlParsers = new ConcurrentQueue <SqlSequenceParser>(); _parsersSemaphore = new Semaphore(parsersCount, parsersCount, "Parsers Semaphore"); for (var i = 0; i < parsersCount; i++) { _sqlParsers.Enqueue(new SqlSequenceParser()); } }
protected SimpleScheduledTransaction(ITransactionScheduler scheduler, IDataManagerAdoFactory factory, IsolationLevel isolationLevel) : base(factory, isolationLevel) { _scheduler = scheduler; }
/// <summary> /// Instantinate an <see cref="IDataTransaction"/>. /// This method will be called on each <see cref="IDataManager.BeginTransaction"/> call. /// </summary> public IDataTransaction DataTransaction(ITransactionScheduler scheduler, IsolationLevel isolationLevel) { return(new NotScheduledBDbTransaction(this)); }
public SqlClientSimpleScheduledTransaction(ITransactionScheduler scheduler, IDataManagerAdoFactory factory, IsolationLevel isolationLevel) : base(scheduler, factory, isolationLevel) { }
/// <summary> /// Instantinate an <see cref="IDataTransaction"/>. /// This method will be called on each <see cref="IDataManager.BeginTransaction"/> call. /// </summary> public override IDataTransaction DataTransaction(ITransactionScheduler scheduler, IsolationLevel isolationLevel = IsolationLevel.ReadCommitted) { return(new OracleSimpleScheduledTransaction(scheduler, this, isolationLevel)); }
/// <summary> /// Instantinate an <see cref="IDataTransaction"/>. /// This method will be called on each <see cref="IDataManager.BeginTransaction"/> call. /// </summary> public IDataTransaction DataTransaction(ITransactionScheduler scheduler, IsolationLevel isolationLevel) { return(_factory.DataTransaction(scheduler, isolationLevel)); }
public PostgreSqlDataTransaction(ITransactionScheduler scheduler, IDataManagerAdoFactory factory, IsolationLevel isolationLevel) : base(scheduler, factory, isolationLevel) { }
/* * /// <summary> * /// Instantiate an <see cref="IDataTransaction"/>. * /// This method will be called on each <see cref="IDataManager.BeginTransaction"/> call. * /// </summary> * public IDataTransaction DataTransaction(ITransactionScheduler scheduler, IsolationLevel isolationLevel = IsolationLevel.ReadCommitted) { * return new SimpleScheduledTransaction(scheduler, this, isolationLevel); * // return new NotScheduledDataTransaction(this, isolationLevel); * } */ /// <summary> /// Instantinate an <see cref="IDataTransaction"/>. /// This method will be called on each <see cref="IDataManager.BeginTransaction"/> call. /// </summary> public abstract IDataTransaction DataTransaction(ITransactionScheduler scheduler, IsolationLevel isolationLevel = IsolationLevel.ReadCommitted);
public override IDataTransaction DataTransaction(ITransactionScheduler scheduler, IsolationLevel isolationLevel = IsolationLevel.ReadCommitted) { return(new PostgreSqlDataTransaction(scheduler, this, isolationLevel)); }