final BootOperationContext bootContext = BootOperationContext.class.cast(context);
context.getRuntimeContext().setRuntimeTask(new RuntimeTask() {
public void execute(RuntimeTaskContext context) throws OperationFailedException {
ServiceTarget serviceTarget = context.getServiceTarget();
TransactionIntegrationService tiService = new TransactionIntegrationService();
serviceTarget
.addService(ConnectorServices.TRANSACTION_INTEGRATION_SERVICE, tiService)
.addDependency(TxnServices.JBOSS_TXN_TRANSACTION_MANAGER, TransactionManager.class,
tiService.getTmInjector())
.addDependency(TxnServices.JBOSS_TXN_SYNCHRONIZATION_REGISTRY,
TransactionSynchronizationRegistry.class, tiService.getTsrInjector())
.addDependency(TxnServices.JBOSS_TXN_USER_TRANSACTION_REGISTRY,
org.jboss.tm.usertx.UserTransactionRegistry.class, tiService.getUtrInjector())
.addDependency(TxnServices.JBOSS_TXN_XA_TERMINATOR, JBossXATerminator.class,
tiService.getTerminatorInjector())
.addDependency(TxnServices.JBOSS_TXN_ARJUNA_RECOVERY_MANAGER, XAResourceRecoveryRegistry.class,
tiService.getRrInjector())
.addDependency(TxnServices.JBOSS_TXN_TRANSACTION_MANAGER, TransactionLocalDelegate.class,
tiService.getTldInjector()).setInitialMode(Mode.ACTIVE).install();
WorkManager wm = new WorkManagerImpl();
final WorkManagerService wmService = new WorkManagerService(wm);
serviceTarget
.addService(ConnectorServices.WORKMANAGER_SERVICE, wmService)