Example usage for org.springframework.transaction.support DefaultTransactionDefinition DefaultTransactionDefinition

List of usage examples for org.springframework.transaction.support DefaultTransactionDefinition DefaultTransactionDefinition

Introduction

In this page you can find the example usage for org.springframework.transaction.support DefaultTransactionDefinition DefaultTransactionDefinition.

Prototype

public DefaultTransactionDefinition(int propagationBehavior) 

Source Link

Document

Create a new DefaultTransactionDefinition with the given propagation behavior.

Usage

From source file:app.core.TransactionPositiveTest.java

@Test(expected = IllegalTransactionStateException.class)
public void test1() {
    transactionManager/*from   w ww  .  j  av  a  2s. co m*/
            .getTransaction(new DefaultTransactionDefinition(TransactionDefinition.PROPAGATION_MANDATORY));
}

From source file:app.core.TransactionPositiveTest.java

@Test
public void test11() {
    transactionManager
            .getTransaction(new DefaultTransactionDefinition(TransactionDefinition.PROPAGATION_NEVER));
}

From source file:localdomain.localhost.service.SampleDataCreatorInitializer.java

@Override
public void afterPropertiesSet() throws Exception {
    TransactionStatus status = transactionManager
            .getTransaction(new DefaultTransactionDefinition(TransactionDefinition.PROPAGATION_REQUIRED));
    try {/*  w w  w .  j a v a 2  s. c o m*/
        Query query = em.createQuery("select count(p) from Product p");
        long count = (Long) query.getSingleResult();
        if (count == 0) {

            logger.info("Database is empty, insert demo products");

            em.persist(new Product("Long Island Iced Tea",
                    "Type of alcoholic mixed drink made with, among other ingredients, vodka, gin, tequila, and rum"));
            em.persist(new Product("Sex on the beach",
                    "Made from vodka, peach schnapps, orange juice, and cranberry juice"));
            logger.info("Demo products inserted in the database");

        } else {
            logger.info("Products found in the database, don't insert new ones");
        }
        transactionManager.commit(status);
    } catch (RuntimeException e) {
        try {
            transactionManager.rollback(status);
        } catch (Exception rollbackException) {
            logger.warn("Silently ignore", rollbackException);
        }
        throw e;
    }
}

From source file:com.cloudbees.demo.beesshop.service.BeesShopInitializer.java

@Override
public void afterPropertiesSet() {

    TransactionStatus status = transactionManager
            .getTransaction(new DefaultTransactionDefinition(TransactionDefinition.PROPAGATION_REQUIRED));
    try {/*from   www .j a  va2 s .c o  m*/
        Query query = em.createQuery("select count(p) from Product p");
        long count = (Long) query.getSingleResult();
        if (count == 0) {

            logger.info("Database is empty, insert demo products");

            em.persist(new Product().withName("Buckwheat Honey - One pint").withDescription(
                    "Dark, full-bodied honey from New York state. Mildly sweet, with flavors of molasses, caramel, and smoke. Buckwheat honey is high in minerals and antioxidant compounds, and rumored to help ease coughing from upper respiratory infections.")
                    .withPriceInCents(1199).withProductUrl("http://www.huney.net/gourmet-honey/")
                    .withPhotoUrl("/img/buckwheat-honey.jpg")
                    .withPhotoCredit("http://huneynet.fatcow.com/store/media/BuckwheatHoney.jpg")
                    .withTags("honey"));

            em.persist(new Product().withName("Cotton Honey - One Pint").withDescription(
                    "Cotton honey from west Texas. This unique honey is naturally crystallized and spreadable like butter. It is very sweet with a mild creamy flavor and a clean, fresh smell. Our cotton honey is unstrained and contains pollen and small flecks of beeswax. ")
                    .withPriceInCents(1199).withProductUrl("http://www.huney.net/gourmet-honey/")
                    .withPhotoUrl("/img/cotton-honey.jpg")
                    .withPhotoCredit("http://huneynet.fatcow.com/store/media/West_Texas_Cotton.jpg")
                    .withTags("honey"));

            em.persist(new Product().withName("Honey Shot- 5g sachet Eucalyptus Honey (100%)").withDescription(
                    "Honey 'Shots' is a product developed on the basis of an athletes needs to maintain energy levels when training it then moved to mountain biking as cyclists wanted an alternative to synthesised sports energy bars and sweets. ...")
                    .withPriceInCents(100).withPhotoUrl("/img/Sports-Energy-Shot-web.png")
                    .withPhotoCredit(
                            "http://www.thehivehoneyshop.co.uk/product_images/thumbs/t_Sports-Energy-Shot-web.jpg")
                    .withProductUrl("http://www.thehivehoneyshop.co.uk/itemdetail.asp?itemid=770")
                    .withTags("honey", "beverage"));

        } else {
            logger.info("Products found in the database, don't insert new ones");
        }
        transactionManager.commit(status);
    } catch (RuntimeException e) {
        try {
            transactionManager.rollback(status);
        } catch (Exception rollbackException) {
            logger.warn("Silently ignore", rollbackException);
        }
        throw e;
    }
}

From source file:org.seedstack.spring.internal.SpringTransactionHandler.java

@Override
public void doInitialize(TransactionMetadata transactionMetadata) {
    try {//from   w ww .j  av  a 2  s  . c o  m
        transactionManager = injector.getInstance(
                Key.get(AbstractPlatformTransactionManager.class, Names.named(springTransactionManagerBeanId)));
        DefaultTransactionDefinition defaultTransactionDefinition = new DefaultTransactionDefinition(
                TransactionDefinition.PROPAGATION_REQUIRES_NEW);
        defaultTransactionDefinition.setReadOnly(transactionMetadata.isReadOnly());
        transactionLink.push(transactionManager.getTransaction(defaultTransactionDefinition));
    } catch (TransactionException e) {
        throw new IllegalStateException(e);
    }
}

From source file:ch.difty.sipamato.persistance.jooq.config.SpringTransactionProvider.java

@Override
public void begin(TransactionContext ctx) {
    log.info("Begin transaction");

    // This TransactionProvider behaves like jOOQ's DefaultTransactionProvider,
    // which supports nested transactions using Savepoints
    TransactionStatus tx = txMgr.getTransaction(new DefaultTransactionDefinition(PROPAGATION_NESTED));
    ctx.transaction(new SpringTransaction(tx));
}

From source file:org.dalesbred.integration.spring.SpringTransactionManager.java

@Override
public <T> T withCurrentTransaction(@NotNull TransactionCallback<T> callback, @NotNull Dialect dialect) {
    return execute(callback, dialect,
            new DefaultTransactionDefinition(TransactionDefinition.PROPAGATION_MANDATORY));
}

From source file:com.mothsoft.alexis.engine.predictive.OpenNLPMaxentModelExecutorTask.java

public void setTransactionManager(final PlatformTransactionManager transactionManager) {
    final TransactionDefinition transactionDefinition = new DefaultTransactionDefinition(
            DefaultTransactionDefinition.PROPAGATION_REQUIRES_NEW);
    this.transactionTemplate = new TransactionTemplate(transactionManager, transactionDefinition);
}

From source file:com.jaspersoft.jasperserver.api.metadata.user.service.impl.RoleManagerServiceImpl.java

public PaginatedOperationResult getUsersWithoutRole(final ExecutionContext context, final String roleName,
        final String userName, Set assignedUserNameSet, Set unassignedUserNameSet, int firstResult,
        int maxResults) {

    PaginatedOperationResult result;/*from  ww w .  j ava 2 s.  c  o m*/

    TransactionStatus transaction = null;

    try {

        // start transaction
        transaction = transactionManager.getTransaction(
                new DefaultTransactionDefinition(TransactionDefinition.PROPAGATION_REQUIRES_NEW));

        userService.assignUsers(context, roleName, assignedUserNameSet);
        userService.unassignUsers(context, roleName, unassignedUserNameSet);

        getHibernateTemplate().flush();

        result = PaginationHelper.paginatedGetOperationResult(firstResult, maxResults,
                new PaginationHelper.JasperService() {
                    public List getResultList(int firstResult, int maxResults) {
                        return userService.getUsersWithoutRole(context, roleName, userName, firstResult,
                                maxResults);
                    }

                    public int getResultCount() {
                        return userService.getUsersCountWithoutRole(context, roleName, userName);
                    }
                });

    } finally {
        if (transaction != null && !transaction.isCompleted()) {
            try {
                // rollback
                transactionManager.rollback(transaction);
            } catch (Exception e) {
                // suppress exception
            }
        }
    }

    return result;
}

From source file:cn.uncode.dal.internal.shards.transaction.MultiDataSourcesTransactionManager.java

@Override
public TransactionStatus getTransaction(TransactionDefinition definition) throws TransactionException {

    MultiDataSourcesTransactionStatus transactionStatus = new MultiDataSourcesTransactionStatus();

    log.debug("Operation '" + definition.getName() + "' starting transaction.");

    for (DataSource dataSource : dataSources) {
        DefaultTransactionDefinition defaultTransactionDefinition = new DefaultTransactionDefinition(
                definition);/* w w w  . j  a  va  2  s  .co  m*/
        defaultTransactionDefinition.setName(definition.getName());

        PlatformTransactionManager txManager = this.transactionManagers.get(dataSource);
        TransactionStatus status = txManager.getTransaction(defaultTransactionDefinition);

        TransactionSynchronizationManager.setCurrentTransactionName(defaultTransactionDefinition.getName());

        transactionStatus.put(dataSource, status);
    }

    return transactionStatus;

}