Tabnine Logo
jodd.db.jtx
Code IndexAdd Tabnine to your IDE (free)

How to use jodd.db.jtx

Best Java code snippets using jodd.db.jtx (Showing top 20 results out of 315)

origin: oblac/jodd

/**
 * Creates JTX transaction manager.
 */
protected JtxTransactionManager createJtxTransactionManager(final ConnectionProvider connectionProvider) {
  return new DbJtxTransactionManager(connectionProvider);
}
origin: oblac/jodd

/**
 * Builds new transaction instance.
 */
@Override
protected JtxTransaction createNewTransaction(final JtxTransactionMode tm, final Object scope, final boolean active) {
  return new DbJtxTransaction(this, tm, scope, active);
}
origin: oblac/jodd

/**
 * Creates db jtx manager and registers new {@link DbJtxResourceManager}.
 */
public DbJtxTransactionManager(final ConnectionProvider connectionProvider) {
  this(new DbJtxResourceManager(connectionProvider));
}
origin: oblac/jodd

void service0() {
  assertTotals(0, 0);
  DbJtxTransaction tx = dbtxm.requestTransaction(new JtxTransactionMode(JtxPropagationBehavior.PROPAGATION_REQUIRED, true));
  assertTotals(1, 1);
  s0 = tx.requestResource();
  service0_1(tx);
  tx.commit();
  assertTotals(0, 0);
}
origin: oblac/jodd

JtxTransaction service1() {
  assertTotals(0, 0);
  DbJtxTransaction tx = dbtxm.requestTransaction(new JtxTransactionMode(JtxPropagationBehavior.PROPAGATION_REQUIRED, true));
  assertTotals(1, 1);
  s1 = tx.requestResource();
  return tx;
}
origin: oblac/jodd

@Test
void testRequiredToNever() {
  LeanJtxWorker worker = new LeanJtxWorker(dbtxm);
  DbJtxSessionProvider sessionProvider = new DbJtxSessionProvider(worker.getTransactionManager());
  // session #1: required
  JtxTransaction jtx = worker.maybeRequestTransaction(required(), CTX_1);
  assertNotNull(jtx);
  DbSession session1 = sessionProvider.getDbSession();
  executeUpdate(session1, "insert into GIRL values(1, 'Sophia', null)");
  assertTrue(jtx.isActive());
  assertFalse(jtx.isCommitted());
  assertFalse(jtx.isNoTransaction());
  // session #2: inner, never
  try {
    worker.maybeRequestTransaction(never(), CTX_2);
    fail("error");
  } catch (JtxException ignore) {
  }
}
origin: oblac/jodd

/**
 * Creates db jtx manager and registers provided {@link DbJtxResourceManager}.
 */
public DbJtxTransactionManager(final DbJtxResourceManager resourceManager) {
  setMaxResourcesPerTransaction(1);
  setSingleResourceManager(true);
  super.registerResourceManager(resourceManager);
}
origin: oblac/jodd

public DbSession requestResource() {
  return requestResource(DbSession.class);
}
origin: oblac/jodd

/**
 * {@inheritDoc}
 */
public DbSession beginTransaction(final JtxTransactionMode jtxMode, final boolean active) {
  DbSession session = new DbSession(connectionProvider);
  if (active) {
    log.debug("begin jtx");
    session.beginTransaction(JtxDbUtil.convertToDbMode(jtxMode));
  }
  return session;
}
origin: oblac/jodd

  @AfterEach
  void tearDown() {
    dbtxm.close();
//        cp.close();
    dbtxm = null;
  }

origin: oblac/jodd

public void assertTotals(int total, int totalActive) {
  assertEquals(total, dbtxm.totalThreadTransactions());
  assertEquals(totalActive, dbtxm.totalActiveThreadTransactions());
}
origin: oblac/jodd

@Test
void testAction() {
  assertNotNull(dbtxm);
  assertTotals(0, 0);
  assertEquals(0, dbtxm.totalThreadTransactions());
  service0();
  JtxTransaction tx1 = service1();
  service2(tx1);
  service3(tx1);
  tx1.commit();
  assertTotals(0, 0);
}
origin: oblac/jodd

void service3_1(JtxTransaction tx3) {
  assertTotals(1, 1);
  DbJtxTransaction tx = dbtxm.requestTransaction(new JtxTransactionMode(JtxPropagationBehavior.PROPAGATION_NOT_SUPPORTED, true));
  assertNotSame(tx3, tx);
  assertTotals(2, 1);
  assertNotSame(s1, tx.requestResource());
  assertNotSame(s1, tx.requestResource());
  tx.commit();
  assertTotals(1, 1);
}
origin: oblac/jodd

void service0_1(JtxTransaction uptx) {
  assertTotals(1, 1);
  DbJtxTransaction tx = dbtxm.requestTransaction(new JtxTransactionMode(JtxPropagationBehavior.PROPAGATION_SUPPORTS, true));
  assertTotals(1, 1);
  assertEquals(uptx, tx);
  DbSession s1 = tx.requestResource();
  assertEquals(s0, s1);
}
origin: oblac/jodd

@Test
void testSupportsToMandatory() {
  LeanJtxWorker worker = new LeanJtxWorker(dbtxm);
  DbJtxSessionProvider sessionProvider = new DbJtxSessionProvider(worker.getTransactionManager());
  // session #1: supports
  JtxTransaction jtx = worker.maybeRequestTransaction(supports(), CTX_1);
  assertNotNull(jtx);
  assertFalse(jtx.isActive());
  DbSession session1 = sessionProvider.getDbSession();
  executeUpdate(session1, "insert into GIRL values(1, 'Sophia', null)");
  assertFalse(jtx.isActive());
  assertFalse(jtx.isCommitted());
  assertTrue(jtx.isNoTransaction());
  // session #2: inner, mandatory
  try {
    worker.maybeRequestTransaction(mandatory(), CTX_2);
    fail("error");
  } catch (JtxException ignore) {
  }
}
origin: oblac/jodd

/**
 * Returns session from JTX transaction manager and started transaction.
 */
@Override
public DbSession getDbSession() {
  log.debug("Requesting db TX manager session");
  final DbJtxTransaction jtx = (DbJtxTransaction) jtxTxManager.getTransaction();
  if (jtx == null) {
    throw new DbSqlException(
        "No transaction is in progress and DbSession can't be provided. " +
        "It seems that transaction manager is not used to begin a transaction.");
  }
  return jtx.requestResource();
}
origin: oblac/jodd

@ParameterizedTest
@MethodSource(value = "testData_testConvertToDbMode")
void testConvertToDbMode(final DbTransactionMode expected, final JtxTransactionMode input) {
  final DbTransactionMode actual = JtxDbUtil.convertToDbMode(input);
  // asserts
  assertNotNull(actual);
  assertTrue(expected.equals(actual));
}
origin: oblac/jodd

@AfterEach
protected void tearDown() throws Exception {
  dbtxm.close();
  dbtxm = null;
  DbOom.get().shutdown();
}
origin: oblac/jodd

void service2(JtxTransaction tx1) {
  assertTotals(1, 1);
  DbJtxTransaction tx = dbtxm.requestTransaction(new JtxTransactionMode(JtxPropagationBehavior.PROPAGATION_REQUIRES_NEW, true));
  assertTotals(2, 2);
  assertNotSame(tx1, tx);
  assertNotSame(s1, tx.requestResource());
  tx.commit();
  assertTotals(1, 1);
}
origin: oblac/jodd

void service3(JtxTransaction tx1) {
  assertTotals(1, 1);
  DbJtxTransaction tx = dbtxm.requestTransaction(new JtxTransactionMode(JtxPropagationBehavior.PROPAGATION_REQUIRED, true));
  assertEquals(tx1, tx);
  assertTotals(1, 1);
  assertEquals(s1, tx.requestResource());
  service3_1(tx);
  assertEquals(s1, tx.requestResource());
  assertTotals(1, 1);
}
jodd.db.jtx

Most used classes

  • DbJtxTransactionManager
    jodd.jtx.JtxTransactionManager that uses only one JTX db resource type. Usually, applications have o
  • DbJtxResourceManager
    Database jodd.jtx.JtxResourceManager manages life-cycle of jodd.db.DbSession resources. Also acts as
  • DbJtxSessionProvider
    Returns session from the db JtxTransactionManager, like DbJtxTransactionManager.
  • DbJtxTransaction
    JtxTransaction extension that simplifies beginning of the transaction since related DbJtxTransaction
  • JtxDbUtil
    Helpers for jtx db.
Tabnine Logo
  • Products

    Search for Java codeSearch for JavaScript code
  • IDE Plugins

    IntelliJ IDEAWebStormVisual StudioAndroid StudioEclipseVisual Studio CodePyCharmSublime TextPhpStormVimGoLandRubyMineEmacsJupyter NotebookJupyter LabRiderDataGripAppCode
  • Company

    About UsContact UsCareers
  • Resources

    FAQBlogTabnine AcademyTerms of usePrivacy policyJava Code IndexJavascript Code Index
Get Tabnine for your IDE now