Example usage for org.hibernate.jpa.boot.internal ParsedPersistenceXmlDescriptor getTransactionType

List of usage examples for org.hibernate.jpa.boot.internal ParsedPersistenceXmlDescriptor getTransactionType

Introduction

In this page you can find the example usage for org.hibernate.jpa.boot.internal ParsedPersistenceXmlDescriptor getTransactionType.

Prototype

@Override
    public PersistenceUnitTransactionType getTransactionType() 

Source Link

Usage

From source file:org.lightmare.jpa.hibernate.internal.PersistenceXmlParserImpl.java

License:Open Source License

private void decodeTransactionType(ParsedPersistenceXmlDescriptor persistenceUnit) {
    // if transaction type is set already
    // use that value
    // else/*w  ww  .  j  a v a 2 s.  com*/
    // if JTA DS
    // use JTA
    // else if NOT JTA DS
    // use RESOURCE_LOCAL
    // else
    // use defaultTransactionType
    if (persistenceUnit.getTransactionType() != null) {
        return;
    }

    if (persistenceUnit.getJtaDataSource() != null) {
        persistenceUnit.setTransactionType(PersistenceUnitTransactionType.JTA);
    } else if (persistenceUnit.getNonJtaDataSource() != null) {
        persistenceUnit.setTransactionType(PersistenceUnitTransactionType.RESOURCE_LOCAL);
    } else {
        persistenceUnit.setTransactionType(defaultTransactionType);
    }
}