List of usage examples for org.springframework.transaction.support TransactionTemplate setPropagationBehavior
public final void setPropagationBehavior(int propagationBehavior)
From source file:org.pentaho.pac.server.common.DAOFactory.java
public static IUserRoleDao getUserRoleDAO() { SessionFactory sessionFactory = HibernateSessionFactory.getSessionFactory(DEFAULT_CONFIG_NAME); HibernateUserRoleDao userRoleDao = new HibernateUserRoleDao(); userRoleDao.setSessionFactory(sessionFactory); UserRoleDaoTransactionDecorator txnDao = new UserRoleDaoTransactionDecorator(); txnDao.setUserRoleDao(userRoleDao);//from ww w . j a v a2s .c o m TransactionTemplate txnTemplate = new TransactionTemplate(); txnTemplate.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRES_NEW); txnTemplate.setTransactionManager(new HibernateTransactionManager(sessionFactory)); txnDao.setTransactionTemplate(txnTemplate); SampleUsersAndRolesInitHandler initHandler = new SampleUsersAndRolesInitHandler(); initHandler.setSessionFactory(sessionFactory); initHandler.setUserRoleDao(txnDao); userRoleDao.setInitHandler(initHandler); try { userRoleDao.init(); } catch (Exception e) { logger.warn(Messages.getString("DAOFactory.WARN_0001_UNABLE_TO_INITIALIZE_USER_ROLE_DAO"), e); //$NON-NLS-1$ } return txnDao; }
From source file:org.openvpms.component.business.service.archetype.rule.ActSimpleRules.java
/** * Creates and saves a new act in a new transaction. * On return the supplied act will have a new unsaved relationship to the * new act./*from w w w .j a v a 2 s .c o m*/ * * @param act the act * @param service the archetype service * @param manager the transaction manager * @see ArchetypeRuleServiceTestCase#testTransactionIsolation */ public static void insertNewActInIsolation(Act act, final IArchetypeService service, PlatformTransactionManager manager) { final Act related = (Act) service.create("act.simple"); TransactionTemplate template = new TransactionTemplate(manager); template.setPropagationBehavior(TransactionTemplate.PROPAGATION_REQUIRES_NEW); // save the new act in a new transaction, suspending any current // transaction template.execute(new TransactionCallback() { public Object doInTransaction(TransactionStatus status) { service.save(related); return null; } }); ActRelationship relationship = (ActRelationship) service.create("actRelationship.simple"); relationship.setName("a simple relationship"); relationship.setSource(related.getObjectReference()); relationship.setTarget(act.getObjectReference()); related.addActRelationship(relationship); act.addActRelationship(relationship); }
From source file:com.example.switchyard.idempotent.jpa.IdempotentJpaConsumer.java
private static TransactionTemplate transactionTemplate() { TransactionTemplate transactionTemplate = new TransactionTemplate(); transactionTemplate.setTransactionManager(new JtaTransactionManager(getTransactionManager())); transactionTemplate.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRED); return transactionTemplate; }
From source file:org.activiti.spring.SpringTransactionInterceptor.java
@SuppressWarnings("unchecked") public <T> T execute(final Command<T> command) { TransactionTemplate transactionTemplate = new TransactionTemplate(transactionManager); transactionTemplate.setPropagationBehavior(transactionPropagation); T result = (T) transactionTemplate.execute(new TransactionCallback() { public Object doInTransaction(TransactionStatus status) { return next.execute(command); }//from ww w . j ava 2 s. c om }); return result; }
From source file:dk.nsi.sdm4.ydelse.config.YdelseimporterApplicationConfig.java
@Bean public TransactionTemplate templateForNewTransactions(PlatformTransactionManager transactionManager) { TransactionTemplate transactionTemplate = new TransactionTemplate(transactionManager); transactionTemplate.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRES_NEW); return transactionTemplate; }
From source file:fr.mycellar.interfaces.facades.stack.StackServiceFacadeImpl.java
@Override public synchronized void onThrowable(final Throwable throwable) { // The transaction must be inside the lock. So we must use a transaction // template and not the Transactional annotation. TransactionTemplate transactionTemplate = new TransactionTemplate(transactionManager); transactionTemplate.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRES_NEW); transactionTemplate.setReadOnly(false); transactionTemplate.execute(new TransactionCallback<Object>() { @Override//from w w w . ja va 2s. c om public Object doInTransaction(TransactionStatus status) { stackService.onThrowable(throwable); return null; } }); }
From source file:net.cpollet.jixture.tests.integration.hibernate3.BaseTestDatabaseTestSupport.java
private void executeInNewTransaction(TransactionCallback transactionCallback) { TransactionTemplate transactionTemplate = new TransactionTemplate(transactionManager); transactionTemplate.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRES_NEW); transactionTemplate.setIsolationLevel(TransactionDefinition.ISOLATION_READ_COMMITTED); transactionTemplate.execute(transactionCallback); }
From source file:org.opennms.ng.dao.support.UpsertTemplate.java
/** * After creating the UpsertTemplate call this method to attempt the upsert. *//* w ww .j av a2 s . c o m*/ public T execute() { TransactionTemplate template = new TransactionTemplate(m_transactionManager); template.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRED); return template.execute(new TransactionCallback<T>() { @Override public T doInTransaction(TransactionStatus status) { return doUpsert(); } }); }
From source file:org.wallride.service.TagService.java
@Transactional(propagation = Propagation.NOT_SUPPORTED) @CacheEvict(value = { WallRideCacheConfiguration.ARTICLE_CACHE, WallRideCacheConfiguration.PAGE_CACHE }, allEntries = true) public List<Tag> bulkDeleteTag(TagBulkDeleteRequest bulkDeleteRequest, final BindingResult result) { List<Tag> tags = new ArrayList<>(); for (long id : bulkDeleteRequest.getIds()) { final TagDeleteRequest deleteRequest = new TagDeleteRequest.Builder().id(id) .language(bulkDeleteRequest.getLanguage()).build(); final BeanPropertyBindingResult r = new BeanPropertyBindingResult(deleteRequest, "request"); r.setMessageCodesResolver(messageCodesResolver); TransactionTemplate transactionTemplate = new TransactionTemplate(transactionManager); transactionTemplate.setPropagationBehavior(TransactionTemplate.PROPAGATION_REQUIRES_NEW); Tag tag = null;/*from www . j ava 2s . c o m*/ try { tag = transactionTemplate.execute(new TransactionCallback<Tag>() { public Tag doInTransaction(TransactionStatus status) { return deleteTag(deleteRequest, result); } }); tags.add(tag); } catch (Exception e) { logger.debug("Errors: {}", r); result.addAllErrors(r); } } return tags; }
From source file:org.zlogic.vogon.web.security.UserService.java
/** * Returns true if the username is already in use * * @param username the username to check * @return true if the username is already in use *//*from w w w .j av a2 s . c o m*/ private boolean isUsernameExists(final String username) { TransactionTemplate transactionTemplate = new TransactionTemplate(transactionManager); transactionTemplate.setReadOnly(true); transactionTemplate.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRES_NEW); return transactionTemplate.execute(new TransactionCallback<Boolean>() { @Override public Boolean doInTransaction(TransactionStatus ts) { return userRepository.findByUsernameIgnoreCase(username) != null; } }); }