/** * Creates JTX transaction manager. */ protected JtxTransactionManager createJtxTransactionManager(final ConnectionProvider connectionProvider) { return new DbJtxTransactionManager(connectionProvider); }
@AfterEach void tearDown() { dbtxm.close(); // cp.close(); dbtxm = null; }
/** * Creates db jtx manager and registers provided {@link DbJtxResourceManager}. */ public DbJtxTransactionManager(final DbJtxResourceManager resourceManager) { setMaxResourcesPerTransaction(1); setSingleResourceManager(true); super.registerResourceManager(resourceManager); }
public void assertTotals(int total, int totalActive) { assertEquals(total, dbtxm.totalThreadTransactions()); assertEquals(totalActive, dbtxm.totalActiveThreadTransactions()); }
JtxTransaction service1() { assertTotals(0, 0); DbJtxTransaction tx = dbtxm.requestTransaction(new JtxTransactionMode(JtxPropagationBehavior.PROPAGATION_REQUIRED, true)); assertTotals(1, 1); s1 = tx.requestResource(); return tx; }
@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); }
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); }
@BeforeEach protected void setUp() throws Exception { final DbPropsQueryMap queryMap = new DbPropsQueryMap(); if (SystemUtil.info().isJavaVersion(9)) { queryMap.props().load(this.getClass().getClassLoader().getResourceAsStream("queries.sql.props")); } LoggerFactory.setLoggerProvider(new TestLoggerProvider()); if (dbtxm != null) { return; } // create connection pool if not created if (cp == null) { cp = new CoreConnectionPool(); setupPool(cp); cp.init(); } dbtxm = new DbJtxTransactionManager(cp); dbOom = DbOom .create() .withConnectionProvider(cp) .withQueryMap(queryMap) .get() .connect(); // initial data final DbSession session = new DbSession(cp); initDb(session); session.closeSession(); }
/** * Creates db jtx manager and registers provided {@link DbJtxResourceManager}. */ public DbJtxTransactionManager(final DbJtxResourceManager resourceManager) { setMaxResourcesPerTransaction(1); setSingleResourceManager(true); super.registerResourceManager(resourceManager); }
@AfterEach protected void tearDown() throws Exception { dbtxm.close(); dbtxm = null; DbOom.get().shutdown(); }
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); }
@BeforeEach void setUp() { cp = new CoreConnectionPool(); cp.setDriver("org.hsqldb.jdbcDriver"); cp.setUrl("jdbc:hsqldb:mem:test"); cp.setUser("sa"); cp.setPassword(""); cp.init(); dbtxm = new DbJtxTransactionManager(cp); // initial data DbSession session = new DbSession(cp); executeUpdate(session, "drop table BOY if exists"); executeUpdate(session, "drop table GIRL if exists"); String sql = "create table GIRL (" + "ID integer not null," + "NAME varchar(20) not null," + "SPECIALITY varchar(20) null," + "primary key (ID)" + ')'; executeUpdate(session, sql); sql = "create table BOY (" + "ID integer not null," + "GIRL_ID integer null," + "NAME varchar(20) null," + "primary key (ID)," + "FOREIGN KEY (GIRL_ID) REFERENCES GIRL (ID)" + ')'; executeUpdate(session, sql); session.closeSession(); }
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); }
/** * Creates JTX transaction manager. */ protected JtxTransactionManager createJtxTransactionManager(final ConnectionProvider connectionProvider) { return new DbJtxTransactionManager(connectionProvider); }
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); }
super.setupPool(cp); JtxTransactionManager jtxManager = new DbJtxTransactionManager(cp); DbJtxSessionProvider sessionProvider = new DbJtxSessionProvider(jtxManager);
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); }