org.hibernate.service.jta.platform.internal
Class AbstractJtaPlatform

java.lang.Object
  extended by org.hibernate.service.jta.platform.internal.AbstractJtaPlatform
All Implemented Interfaces:
Serializable, TransactionManagerAccess, JtaPlatform, Service, Configurable, ServiceRegistryAwareService
Direct Known Subclasses:
BitronixJtaPlatform, BorlandEnterpriseServerJtaPlatform, JBossAppServerJtaPlatform, JBossStandAloneJtaPlatform, JOnASJtaPlatform, JOTMJtaPlatform, JRun4JtaPlatform, OC4JJtaPlatform, OrionJtaPlatform, ResinJtaPlatform, SunOneJtaPlatform, TestingJtaPlatformImpl, TransactionManagerLookupBridge, WeblogicJtaPlatform, WebSphereExtendedJtaPlatform, WebSphereJtaPlatform

public abstract class AbstractJtaPlatform
extends Object
implements JtaPlatform, Configurable, ServiceRegistryAwareService, TransactionManagerAccess

See Also:
Serialized Form

Constructor Summary
AbstractJtaPlatform()
           
 
Method Summary
protected  boolean canCacheTransactionManager()
           
protected  boolean canCacheUserTransaction()
           
 boolean canRegisterSynchronization()
          Can we currently register a Synchronization?
 void configure(Map configValues)
          Configure the service.
 int getCurrentStatus()
          Obtain the current transaction status using whatever means is preferred for this platform
protected  JtaSynchronizationStrategy getSynchronizationStrategy()
           
 Object getTransactionIdentifier(Transaction transaction)
          Determine an identifier for the given transaction appropriate for use in caching/lookup usages.
 TransactionManager getTransactionManager()
          Obtain the transaction manager
 void injectServices(ServiceRegistryImplementor serviceRegistry)
          Callback to inject the registry.
protected  JndiService jndiService()
           
protected abstract  TransactionManager locateTransactionManager()
           
protected abstract  UserTransaction locateUserTransaction()
           
 void registerSynchronization(Synchronization synchronization)
          Register a JTA Synchronization in the means defined by the platform.
 TransactionManager retrieveTransactionManager()
          Locate the TransactionManager
 UserTransaction retrieveUserTransaction()
          Locate the UserTransaction
protected  ServiceRegistry serviceRegistry()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AbstractJtaPlatform

public AbstractJtaPlatform()
Method Detail

injectServices

public void injectServices(ServiceRegistryImplementor serviceRegistry)
Description copied from interface: ServiceRegistryAwareService
Callback to inject the registry.

Specified by:
injectServices in interface ServiceRegistryAwareService
Parameters:
serviceRegistry - The registry

serviceRegistry

protected ServiceRegistry serviceRegistry()

jndiService

protected JndiService jndiService()

locateTransactionManager

protected abstract TransactionManager locateTransactionManager()

locateUserTransaction

protected abstract UserTransaction locateUserTransaction()

configure

public void configure(Map configValues)
Description copied from interface: Configurable
Configure the service.

Specified by:
configure in interface Configurable
Parameters:
configValues - The configuration properties.

canCacheTransactionManager

protected boolean canCacheTransactionManager()

canCacheUserTransaction

protected boolean canCacheUserTransaction()

retrieveTransactionManager

public TransactionManager retrieveTransactionManager()
Description copied from interface: JtaPlatform
Locate the TransactionManager

Specified by:
retrieveTransactionManager in interface JtaPlatform
Returns:
The TransactionManager

getTransactionManager

public TransactionManager getTransactionManager()
Description copied from interface: TransactionManagerAccess
Obtain the transaction manager

Specified by:
getTransactionManager in interface TransactionManagerAccess
Returns:
The transaction manager.

retrieveUserTransaction

public UserTransaction retrieveUserTransaction()
Description copied from interface: JtaPlatform
Locate the UserTransaction

Specified by:
retrieveUserTransaction in interface JtaPlatform
Returns:
The UserTransaction

getTransactionIdentifier

public Object getTransactionIdentifier(Transaction transaction)
Description copied from interface: JtaPlatform
Determine an identifier for the given transaction appropriate for use in caching/lookup usages.

Generally speaking the transaction itself will be returned here. This method was added specifically for use in WebSphere and other unfriendly JEE containers (although WebSphere is still the only known such brain-dead, sales-driven impl).

Specified by:
getTransactionIdentifier in interface JtaPlatform
Parameters:
transaction - The transaction to be identified.
Returns:
An appropriate identifier

getSynchronizationStrategy

protected JtaSynchronizationStrategy getSynchronizationStrategy()

registerSynchronization

public void registerSynchronization(Synchronization synchronization)
Description copied from interface: JtaPlatform
Register a JTA Synchronization in the means defined by the platform.

Specified by:
registerSynchronization in interface JtaPlatform
Parameters:
synchronization - The synchronization to register

canRegisterSynchronization

public boolean canRegisterSynchronization()
Description copied from interface: JtaPlatform
Can we currently register a Synchronization?

Specified by:
canRegisterSynchronization in interface JtaPlatform
Returns:
True if registering a Synchronization is currently allowed; false otherwise.

getCurrentStatus

public int getCurrentStatus()
                     throws SystemException
Description copied from interface: JtaPlatform
Obtain the current transaction status using whatever means is preferred for this platform

Specified by:
getCurrentStatus in interface JtaPlatform
Returns:
The current status.
Throws:
SystemException - Indicates a problem access the underlying status


Copyright © 2001-2012 Red Hat, Inc. All Rights Reserved.