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      private final HostConnectionAccessor hostConnectionAccessor;
16  
17      public DefaultTransactionalExecutorFactory(final HostConnectionAccessor hostConnectionAccessor) {
18          this.hostConnectionAccessor = hostConnectionAccessor;
19      }
20  
21      @Override
22      public TransactionalExecutor createExecutor() {
23          return new DefaultTransactionalExecutor(hostConnectionAccessor, true, false);
24      }
25  
26      @Override
27      public TransactionalExecutor createExecutor(boolean readOnly, boolean newTransaction) {
28          return new DefaultTransactionalExecutor(hostConnectionAccessor, readOnly, newTransaction);
29      }
30  }