com.atomikos.icatch.config
Class UserTransactionServiceImp

java.lang.Object
  extended by com.atomikos.icatch.config.UserTransactionServiceImp
All Implemented Interfaces:
UserTransactionService, Serializable

public final class UserTransactionServiceImp
extends Object
implements Serializable, UserTransactionService

This is the main class for creating a UserTransactionService instance. This class is the client's main entry point into the transaction engine. The creation of a user transaction happens via a UserTransactionServiceFactory which is looked up by this object behind the scenes. Instances can be serialized to disk and re-read at a later time. Note: deserialization will only work in the SAME configuration as the one that did the streaming out. In particular, if no identical Atomikos transaction service is present in the target VM then the process of deserialization will be erroneous.

See Also:
Serialized Form

Constructor Summary
UserTransactionServiceImp()
          Default constructor.
UserTransactionServiceImp(Properties properties)
          Constructs a new instance and initializes it with the given properties.
 
Method Summary
 CompositeTransactionManager getCompositeTransactionManager()
           
 void init()
          Convenience init method for DI containers like Spring.
 void init(Properties properties)
          Initializes with given properties.
 void registerLogAdministrator(LogAdministrator admin)
           
 void registerResource(RecoverableResource res)
           
 void registerTransactionServicePlugin(TransactionServicePlugin listener)
           
 void removeLogAdministrator(LogAdministrator admin)
           
 void removeResource(RecoverableResource res)
           
 void removeTransactionServicePlugin(TransactionServicePlugin listener)
           
 void setInitialLogAdministrators(List<LogAdministrator> administrators)
          Dependency injection of all administrators to be added during init.
 void setInitialRecoverableResources(List<RecoverableResource> resources)
          Dependency injection of all resources to be added during init.
 void setInitialTransactionServicePlugins(List<TransactionServicePlugin> listeners)
          Dependency injection of extra plugins to be added during init.
 void shutdown(boolean force)
           
 void shutdown(long maxWaitTime)
           
 void shutdownForce()
          Convenience shutdown method for DI containers like Spring.
 void shutdownWait()
          Convenience shutdown method for DI containers like Spring.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

UserTransactionServiceImp

public UserTransactionServiceImp()
Default constructor.


UserTransactionServiceImp

public UserTransactionServiceImp(Properties properties)
Constructs a new instance and initializes it with the given properties. If this constructor is called, then file-based initialization is overridden. In particular, the given properties will take precedence over the file-based properties (if found).

Parameters:
properties - The properties.
Method Detail

shutdown

public void shutdown(boolean force)
              throws IllegalStateException
Specified by:
shutdown in interface UserTransactionService
Throws:
IllegalStateException
See Also:
UserTransactionService

getCompositeTransactionManager

public CompositeTransactionManager getCompositeTransactionManager()
Specified by:
getCompositeTransactionManager in interface UserTransactionService
See Also:
UserTransactionService

registerResource

public void registerResource(RecoverableResource res)
Specified by:
registerResource in interface UserTransactionService
See Also:
com.atomikos.icatch.UserTransactionService#registerResource(com.atomikos.datasource.RecoverableResource)

registerLogAdministrator

public void registerLogAdministrator(LogAdministrator admin)
Specified by:
registerLogAdministrator in interface UserTransactionService
See Also:
com.atomikos.icatch.UserTransactionService#registerLogAdministrator(com.atomikos.icatch.admin.LogAdministrator)

removeResource

public void removeResource(RecoverableResource res)
Specified by:
removeResource in interface UserTransactionService

removeLogAdministrator

public void removeLogAdministrator(LogAdministrator admin)
Specified by:
removeLogAdministrator in interface UserTransactionService

registerTransactionServicePlugin

public void registerTransactionServicePlugin(TransactionServicePlugin listener)
Specified by:
registerTransactionServicePlugin in interface UserTransactionService

removeTransactionServicePlugin

public void removeTransactionServicePlugin(TransactionServicePlugin listener)
Specified by:
removeTransactionServicePlugin in interface UserTransactionService

shutdownForce

public void shutdownForce()
Convenience shutdown method for DI containers like Spring.


shutdownWait

public void shutdownWait()
Convenience shutdown method for DI containers like Spring.


setInitialRecoverableResources

public void setInitialRecoverableResources(List<RecoverableResource> resources)
Dependency injection of all resources to be added during init.

Parameters:
resources -

setInitialLogAdministrators

public void setInitialLogAdministrators(List<LogAdministrator> administrators)
Dependency injection of all administrators to be added during init.

Parameters:
administrators -

setInitialTransactionServicePlugins

public void setInitialTransactionServicePlugins(List<TransactionServicePlugin> listeners)
Dependency injection of extra plugins to be added during init.

Parameters:
listeners -

init

public void init()
Convenience init method for DI containers like Spring.

Specified by:
init in interface UserTransactionService

init

public void init(Properties properties)
          throws SysException
Initializes with given properties.

Specified by:
init in interface UserTransactionService
Throws:
SysException

shutdown

public void shutdown(long maxWaitTime)
              throws IllegalStateException
Specified by:
shutdown in interface UserTransactionService
Throws:
IllegalStateException


Copyright © 2016. All Rights Reserved.