Search in sources :

Example 1 with OrbPortabilityEnvironmentBean

use of com.arjuna.orbportability.common.OrbPortabilityEnvironmentBean in project narayana by jbosstm.

the class TransactionManagerService method start.

/**
 * @param theCorbaORB an orb that the TM should use for JTS operations. The caller is responsible for
 *                    shutting down and destroying this orb
 * @throws Exception
 */
public void start(org.omg.CORBA.ORB theCorbaORB) throws Exception {
    jbossatxLogger.i18NLogger.info_jts_TransactionManagerService_start();
    // Create an ORB portability wrapper around the CORBA ORB services orb
    ORB orb = ORB.getInstance(ORB_NAME);
    org.omg.PortableServer.POA rootPOA = org.omg.PortableServer.POAHelper.narrow(theCorbaORB.resolve_initial_references("RootPOA"));
    orb.setOrb(theCorbaORB);
    OA oa = OA.getRootOA(orb);
    oa.setPOA(rootPOA);
    try {
        // OTSManager won't play nice unless we explicity bootstrap the portability layer:
        ORBManager.setORB(orb);
        ORBManager.setPOA(oa);
        OrbPortabilityEnvironmentBean env = BeanPopulator.getDefaultInstance(OrbPortabilityEnvironmentBean.class);
        env.setShutdownWrappedOrb(false);
        org.omg.CosTransactions.TransactionFactory factory = com.arjuna.ats.jts.OTSManager.get_factory();
        final int resolver = Services.getResolver();
        com.arjuna.ats.jts.TransactionServer.registerTransactionManager(resolver, orb, factory);
    } catch (final Exception ex) {
        throw new Exception(jbossatxLogger.i18NLogger.get_jts_TransactionManagerService_failed(), ex);
    }
}
Also used : OA(com.arjuna.orbportability.OA) OrbPortabilityEnvironmentBean(com.arjuna.orbportability.common.OrbPortabilityEnvironmentBean) ORB(com.arjuna.orbportability.ORB)

Example 2 with OrbPortabilityEnvironmentBean

use of com.arjuna.orbportability.common.OrbPortabilityEnvironmentBean in project narayana by jbosstm.

the class ORBBase method shutdown.

public synchronized void shutdown(boolean waitForCompletion) throws SystemException {
    if (_init) {
        OrbPortabilityEnvironmentBean env = BeanPopulator.getDefaultInstance(OrbPortabilityEnvironmentBean.class);
        if (env.isShutdownWrappedOrb()) {
            _orb.shutdown(waitForCompletion);
            _init = false;
        }
    }
}
Also used : OrbPortabilityEnvironmentBean(com.arjuna.orbportability.common.OrbPortabilityEnvironmentBean)

Aggregations

OrbPortabilityEnvironmentBean (com.arjuna.orbportability.common.OrbPortabilityEnvironmentBean)2 OA (com.arjuna.orbportability.OA)1 ORB (com.arjuna.orbportability.ORB)1