Package org.springframework.transaction.support

Examples of org.springframework.transaction.support.TransactionCallback


        this.entityType = entitytype;
        this.correlationKeyExpression = correlationKeyExpression;
    }

    public void process(final Exchange exchange) {
        Object entity = transactionTemplate.execute(new TransactionCallback() {
            public Object doInTransaction(TransactionStatus status) {
                try {
                    Object key = getCorrelationKey(exchange);

                    T entity = loadEntity(exchange, key);
View Full Code Here


    final TransactionTemplate tt = new TransactionTemplate(ptm);
    tt.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRES_NEW);

    assertTrue("Hasn't thread session", !TransactionSynchronizationManager.hasResource(sf));
    try {
      tt.execute(new TransactionCallback() {
        public Object doInTransaction(TransactionStatus status) {
          org.hibernate.Session outerSession = SessionFactoryUtils.getSession(sf, false);
          assertSame(session1, outerSession);
          SessionHolder holder = (SessionHolder) TransactionSynchronizationManager.getResource(sf);
          assertTrue("Has thread session", holder != null);
          try {
            tt.execute(new TransactionCallback() {
              public Object doInTransaction(TransactionStatus status) {
                org.hibernate.Session innerSession = SessionFactoryUtils.getSession(sf, false);
                assertSame(session2, innerSession);
                HibernateTemplate ht = new HibernateTemplate(sf);
                ht.setFlushMode(HibernateTemplate.FLUSH_EAGER);
View Full Code Here

    JtaTransactionManager tm = new JtaTransactionManager(ut);
    TransactionTemplate tt = new TransactionTemplate(tm);
    tt.setPropagationBehavior(TransactionDefinition.PROPAGATION_SUPPORTS);
    assertTrue("Hasn't thread session", !TransactionSynchronizationManager.hasResource(sf));

    tt.execute(new TransactionCallback() {
      public Object doInTransaction(TransactionStatus status) {
        assertTrue("Hasn't thread session", !TransactionSynchronizationManager.hasResource(sf));
        assertTrue("Is not new transaction", !status.isNewTransaction());
        assertFalse(TransactionSynchronizationManager.isCurrentTransactionReadOnly());
        assertFalse(TransactionSynchronizationManager.isActualTransactionActive());
View Full Code Here

    tt.setPropagationBehavior(TransactionDefinition.PROPAGATION_SUPPORTS);
    final TransactionTemplate tt2 = new TransactionTemplate(tm);
    tt2.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRED);

    assertTrue("Hasn't thread session", !TransactionSynchronizationManager.hasResource(sf));
    tt.execute(new TransactionCallback() {
      public Object doInTransaction(TransactionStatus status) {
        assertTrue("Hasn't thread session", !TransactionSynchronizationManager.hasResource(sf));
        assertTrue("Is not new transaction", !status.isNewTransaction());
        assertFalse(TransactionSynchronizationManager.isCurrentTransactionReadOnly());
        assertFalse(TransactionSynchronizationManager.isActualTransactionActive());
        HibernateTemplate ht = new HibernateTemplate(sf);
        ht.setFlushMode(HibernateTemplate.FLUSH_EAGER);
        ht.execute(new HibernateCallback() {
          public Object doInHibernate(org.hibernate.Session session) {
            return null;
          }
        });
        assertTrue("Has thread session", TransactionSynchronizationManager.hasResource(sf));
        tt2.execute(new TransactionCallback() {
          public Object doInTransaction(TransactionStatus status) {
            HibernateTemplate ht = new HibernateTemplate(sf);
            ht.setFlushMode(HibernateTemplate.FLUSH_EAGER);
            return ht.executeFind(new HibernateCallback() {
              public Object doInHibernate(org.hibernate.Session session) {
View Full Code Here

    l.add("test");

    assertTrue(!TransactionSynchronizationManager.hasResource(factory));
    assertTrue(!TransactionSynchronizationManager.isSynchronizationActive());

    Object result = tt.execute(new TransactionCallback() {
      public Object doInTransaction(TransactionStatus status) {
        assertTrue(TransactionSynchronizationManager.hasResource(factory));
        return template.execute(new JpaCallback() {
          public Object doInJpa(EntityManager em) {
            em.flush();
View Full Code Here

    assertTrue(!TransactionSynchronizationManager.hasResource(factory));
    assertTrue(!TransactionSynchronizationManager.isSynchronizationActive());

    try {
      Object result = tt.execute(new TransactionCallback() {
        public Object doInTransaction(TransactionStatus status) {
          assertTrue(TransactionSynchronizationManager.hasResource(factory));
          return template.execute(new JpaCallback() {
            public Object doInJpa(EntityManager em) {
              em.flush();
View Full Code Here

    assertTrue(!TransactionSynchronizationManager.hasResource(factory));
    assertTrue(!TransactionSynchronizationManager.isSynchronizationActive());

    try {
      tt.execute(new TransactionCallback() {
        public Object doInTransaction(TransactionStatus status) {
          assertTrue(TransactionSynchronizationManager.hasResource(factory));
          return template.execute(new JpaCallback() {
            public Object doInJpa(EntityManager em) {
              throw new RuntimeException("some exception");
View Full Code Here

    assertTrue(!TransactionSynchronizationManager.hasResource(factory));
    assertTrue(!TransactionSynchronizationManager.isSynchronizationActive());

    try {
      tt.execute(new TransactionCallback() {
        public Object doInTransaction(TransactionStatus status) {
          assertTrue(TransactionSynchronizationManager.hasResource(factory));
          return template.execute(new JpaCallback() {
            public Object doInJpa(EntityManager em) {
              throw new RuntimeException("some exception");
View Full Code Here

    l.add("test");

    assertTrue(!TransactionSynchronizationManager.hasResource(factory));
    assertTrue(!TransactionSynchronizationManager.isSynchronizationActive());

    tt.execute(new TransactionCallback() {
      public Object doInTransaction(TransactionStatus status) {
        assertTrue(TransactionSynchronizationManager.hasResource(factory));

        Object res = template.execute(new JpaCallback() {
          public Object doInJpa(EntityManager em) {
View Full Code Here

    l.add("test");

    assertTrue(!TransactionSynchronizationManager.hasResource(factory));
    assertTrue(!TransactionSynchronizationManager.isSynchronizationActive());

    tt.execute(new TransactionCallback() {
      public Object doInTransaction(TransactionStatus status) {
        txControl.reset();
        txControl.expectAndReturn(tx.getRollbackOnly(), false);
        tx.commit();
        txControl.replay();

        assertTrue(TransactionSynchronizationManager.hasResource(factory));

        return tt.execute(new TransactionCallback() {
          public Object doInTransaction(TransactionStatus status) {

            return template.execute(new JpaCallback() {
              public Object doInJpa(EntityManager em) {
                em.flush();
View Full Code Here

TOP

Related Classes of org.springframework.transaction.support.TransactionCallback

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.