View Javadoc

1   package com.atlassian.sal.core.rdbms;
2   
3   import com.atlassian.sal.api.rdbms.TransactionalExecutor;
4   import com.atlassian.sal.api.rdbms.TransactionalExecutorFactory;
5   import com.atlassian.sal.spi.HostConnectionAccessor;
6   
7   /**
8    * Default implementation.
9    * <p/>
10   * Host should instantiate and export this.
11   *
12   * @since 3.0
13   */
14  public class DefaultTransactionalExecutorFactory implements TransactionalExecutorFactory
15  {
16      private final HostConnectionAccessor hostConnectionAccessor;
17  
18      public DefaultTransactionalExecutorFactory(final HostConnectionAccessor hostConnectionAccessor)
19      {
20          this.hostConnectionAccessor = hostConnectionAccessor;
21      }
22  
23      @Override
24      public TransactionalExecutor createExecutor()
25      {
26          return new DefaultTransactionalExecutor(hostConnectionAccessor, true, false);
27      }
28  
29      @Override
30      public TransactionalExecutor createExecutor(boolean readOnly, boolean newTransaction)
31      {
32          return new DefaultTransactionalExecutor(hostConnectionAccessor, readOnly, newTransaction);
33      }
34  }