예제 #1
0
 private ConnectionManager(SerializationInfo info, StreamingContext context)
 {
     _ownConnection         = info.GetBoolean("ownConnection");
     Session                = (ISessionImplementor)info.GetValue("session", typeof(ISessionImplementor));
     _connectionReleaseMode =
         (ConnectionReleaseMode)info.GetValue("connectionReleaseMode", typeof(ConnectionReleaseMode));
     _interceptor      = (IInterceptor)info.GetValue("interceptor", typeof(IInterceptor));
     _connectionAccess = (IConnectionAccess)info.GetValue("connectionAccess", typeof(IConnectionAccess));
 }
예제 #2
0
        public ConnectionManager(
            ISessionImplementor session,
            DbConnection suppliedConnection,
            ConnectionReleaseMode connectionReleaseMode,
            IInterceptor interceptor,
            bool shouldAutoJoinTransaction,
            IConnectionAccess connectionAccess)
        {
            Session                = session;
            _connection            = suppliedConnection;
            _connectionReleaseMode = connectionReleaseMode;

            _interceptor = interceptor;
            _batcher     = session.Factory.Settings.BatcherFactory.CreateBatcher(this, interceptor);

            _ownConnection            = suppliedConnection == null;
            ShouldAutoJoinTransaction = shouldAutoJoinTransaction;
            _connectionAccess         = connectionAccess ?? throw new ArgumentNullException(nameof(connectionAccess));
        }