org.apache.openjpa.ee
Class WASManagedRuntime

java.lang.Object
  extended by org.apache.openjpa.ee.AbstractManagedRuntime
      extended by org.apache.openjpa.ee.WASManagedRuntime
All Implemented Interfaces:
ManagedRuntime, Configurable

public class WASManagedRuntime
extends AbstractManagedRuntime
implements ManagedRuntime, Configurable

ManagedRuntime implementation that allows synchronization with a WebSphere managed transaction.

WebSphere Application Server does not expose the TransactionManager to an application. Instead it provides a proprietary interface to register for synchronization and obtain transaction ids.

WASManagedRuntime provides the wrapper classes needed to interact with the WAS proprietary interface and the OpenJPA kernel.

Author:
Kevin Sutter

Nested Class Summary
(package private) static class WASManagedRuntime.WASSynchronization
          WASSynchronization wrapper.
(package private)  class WASManagedRuntime.WASTransaction
          Transaction wrapper for WebSphere.
 
Field Summary
(package private) static String CLASS
          Class that will be modified
(package private) static String INTERFACE
          Interface which will be added
 
Constructor Summary
WASManagedRuntime()
           
 
Method Summary
 void endConfiguration()
          EndConfiguration stub.
 Throwable getRollbackCause()
          Returns the Throwable that caused the current transaction to be marked for rollback, provided that any exists.
 TransactionManager getTransactionManager()
          Gets an extendedJTATransaction from JNDI and creates a transaction wrapper
static void main(String[] args)
           
 void setConfiguration(Configuration conf)
          Caches a copy of the configuration.
 void setRollbackOnly(Throwable cause)
          Sets the rollback only flag on the current transaction.
 void startConfiguration()
          StartConfiguration stub.
 
Methods inherited from class org.apache.openjpa.ee.AbstractManagedRuntime
doNonTransactionalWork, getTransactionKey
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.apache.openjpa.ee.ManagedRuntime
doNonTransactionalWork, getTransactionKey
 

Field Detail

CLASS

static final String CLASS
Class that will be modified

See Also:
Constant Field Values

INTERFACE

static final String INTERFACE
Interface which will be added

See Also:
Constant Field Values
Constructor Detail

WASManagedRuntime

public WASManagedRuntime()
Method Detail

getTransactionManager

public TransactionManager getTransactionManager()
                                         throws Exception
Gets an extendedJTATransaction from JNDI and creates a transaction wrapper

Specified by:
getTransactionManager in interface ManagedRuntime
Throws:
Exception

setConfiguration

public void setConfiguration(Configuration conf)
Caches a copy of the configuration. The configuration is used to obtain the logger and classloader.

Specified by:
setConfiguration in interface Configurable

endConfiguration

public void endConfiguration()
EndConfiguration stub.

Specified by:
endConfiguration in interface Configurable

startConfiguration

public void startConfiguration()
StartConfiguration stub.

Specified by:
startConfiguration in interface Configurable

main

public static void main(String[] args)
                 throws IOException
Throws:
IOException

setRollbackOnly

public void setRollbackOnly(Throwable cause)
                     throws Exception
Description copied from interface: ManagedRuntime
Sets the rollback only flag on the current transaction. If the TransactionManager is capable of tracking the cause of the rollback-only flag, it will also pass along cause information.

Specified by:
setRollbackOnly in interface ManagedRuntime
Parameters:
cause - the Throwable that caused the transaction to be marked for rollback, or null of none is known
Throws:
Exception

getRollbackCause

public Throwable getRollbackCause()
                           throws Exception
Description copied from interface: ManagedRuntime
Returns the Throwable that caused the current transaction to be marked for rollback, provided that any exists.

Specified by:
getRollbackCause in interface ManagedRuntime
Returns:
the Throwable cause, or null if none
Throws:
Exception


Copyright © 2006-2010 Apache Software Foundation. All Rights Reserved.