public void stop() { if (resourceRecovery != null) { ra.getRecoveryManager().unRegister(resourceRecovery); } if (recoveryConnectionFactory != null) { recoveryConnectionFactory.close(); recoveryConnectionFactory = null; } } }
private synchronized void registerRecovery() { if (recoveryConnectionFactory == null) { recoveryConnectionFactory = ra.createRecoveryActiveMQConnectionFactory(mcfProperties); Map<String, String> recoveryConfProps = new HashMap<>(); recoveryConfProps.put(XARecoveryConfig.JNDI_NAME_PROPERTY_KEY, ra.getJndiName()); resourceRecovery = ra.getRecoveryManager().register(recoveryConnectionFactory, null, null, recoveryConfProps); } }
private synchronized void registerRecovery() { if (recoveryConnectionFactory == null) { recoveryConnectionFactory = ra.createRecoveryActiveMQConnectionFactory(mcfProperties); Map<String, String> recoveryConfProps = new HashMap<>(); recoveryConfProps.put(XARecoveryConfig.JNDI_NAME_PROPERTY_KEY, ra.getJndiName()); resourceRecovery = ra.getRecoveryManager().register(recoveryConnectionFactory, null, null, recoveryConfProps); } }
public void stop() { if (resourceRecovery != null) { ra.getRecoveryManager().unRegister(resourceRecovery); } if (recoveryConnectionFactory != null) { recoveryConnectionFactory.close(); recoveryConnectionFactory = null; } } }
ra.getRecoveryManager().unRegister(resourceRecovery);
ra.getRecoveryManager().unRegister(resourceRecovery);
resourceRecovery = ra.getRecoveryManager().register(factory, spec.getUser(), spec.getPassword(), recoveryConfProps); if (spec.isRebalanceConnections()) { factory.getServerLocator().addClusterTopologyListener(new RebalancingListener());
resourceRecovery = ra.getRecoveryManager().register(factory, spec.getUser(), spec.getPassword(), recoveryConfProps); if (spec.isRebalanceConnections()) { factory.getServerLocator().addClusterTopologyListener(new RebalancingListener());
@Test public void testResourceAdapterSetupOverrideCFParams() throws Exception { ActiveMQResourceAdapter qResourceAdapter = new ActiveMQResourceAdapter(); qResourceAdapter.setConnectorClassName(INVM_CONNECTOR_FACTORY); qResourceAdapter.setConnectionParameters("server-id=0"); ActiveMQRATestBase.MyBootstrapContext ctx = new ActiveMQRATestBase.MyBootstrapContext(); qResourceAdapter.start(ctx); ActiveMQActivationSpec spec = new ActiveMQActivationSpec(); spec.setResourceAdapter(qResourceAdapter); spec.setUseJNDI(false); spec.setDestinationType("javax.jms.Queue"); spec.setDestination(MDBQUEUE); // now override the connector class spec.setConnectorClassName(NETTY_CONNECTOR_FACTORY); spec.setConnectionParameters("port=61616"); DummyMessageEndpoint endpoint = new DummyMessageEndpoint(new CountDownLatch(1)); DummyMessageEndpointFactory endpointFactory = new DummyMessageEndpointFactory(endpoint, false); qResourceAdapter.endpointActivation(endpointFactory, spec); //make sure 2 recovery resources, one is default, one is in activation. assertEquals(2, qResourceAdapter.getRecoveryManager().getResources().size()); qResourceAdapter.stop(); assertTrue(endpoint.released); }
@Test public void testRecoveryRegistrationOnFailure() throws Exception { ActiveMQResourceAdapter qResourceAdapter = new ActiveMQResourceAdapter(); qResourceAdapter.setConnectorClassName(INVM_CONNECTOR_FACTORY); qResourceAdapter.setConnectionParameters("server-id=0"); ActiveMQRATestBase.MyBootstrapContext ctx = new ActiveMQRATestBase.MyBootstrapContext(); qResourceAdapter.start(ctx); ActiveMQActivationSpec spec = new ActiveMQActivationSpec(); spec.setResourceAdapter(qResourceAdapter); spec.setUseJNDI(false); spec.setDestinationType("javax.jms.Queue"); spec.setDestination(MDBQUEUE); // now override the connector class spec.setConnectorClassName(NETTY_CONNECTOR_FACTORY); spec.setSetupAttempts(2); // using a wrong port number spec.setConnectionParameters("port=6776"); DummyMessageEndpoint endpoint = new DummyMessageEndpoint(new CountDownLatch(1)); DummyMessageEndpointFactory endpointFactory = new DummyMessageEndpointFactory(endpoint, false); qResourceAdapter.endpointActivation(endpointFactory, spec); assertEquals(1, qResourceAdapter.getRecoveryManager().getResources().size()); qResourceAdapter.stop(); assertFalse(endpoint.released); }
Set<XARecoveryConfig> resources = ra.getRecoveryManager().getResources();