private static DiscoveryGroup createDiscoveryGroup(String nodeID, DiscoveryGroupConfiguration config) throws Exception { DiscoveryGroup group = new DiscoveryGroup(nodeID, config.getName(), config.getRefreshTimeout(), config.getBroadcastEndpointFactory(), null); return group; }
@Override protected URI internalNewURI(ServerLocator bean) throws Exception { DiscoveryGroupConfiguration dgc = bean.getDiscoveryGroupConfiguration(); BroadcastEndpointFactory endpoint = dgc.getBroadcastEndpointFactory(); String auth; if (endpoint instanceof JGroupsFileBroadcastEndpointFactory) { auth = ((JGroupsFileBroadcastEndpointFactory) endpoint).getChannelName(); } else if (endpoint instanceof JGroupsPropertiesBroadcastEndpointFactory) { auth = ((JGroupsPropertiesBroadcastEndpointFactory) endpoint).getChannelName(); } else { throw new NotSerializableException(endpoint + "not serializable"); } String query = BeanSupport.getData(null, bean, dgc, endpoint); dgc.setBroadcastEndpointFactory(endpoint); return new URI(SchemaConstants.JGROUPS, null, auth, -1, null, query, null); }
@Override protected URI internalNewURI(ActiveMQConnectionFactory bean) throws Exception { DiscoveryGroupConfiguration dgc = bean.getDiscoveryGroupConfiguration(); BroadcastEndpointFactory endpoint = dgc.getBroadcastEndpointFactory(); String auth; if (endpoint instanceof JGroupsFileBroadcastEndpointFactory) { auth = ((JGroupsFileBroadcastEndpointFactory) endpoint).getChannelName(); } else if (endpoint instanceof JGroupsPropertiesBroadcastEndpointFactory) { auth = ((JGroupsPropertiesBroadcastEndpointFactory) endpoint).getChannelName(); } else { throw new NotSerializableException(endpoint + "not serializable"); } String query = BeanSupport.getData(null, bean, dgc, endpoint); dgc.setBroadcastEndpointFactory(endpoint); return new URI(SchemaConstants.JGROUPS, null, auth, -1, null, query, null); } }
@Override protected URI internalNewURI(ServerLocator bean) throws Exception { DiscoveryGroupConfiguration dgc = bean.getDiscoveryGroupConfiguration(); UDPBroadcastEndpointFactory endpoint = (UDPBroadcastEndpointFactory) dgc.getBroadcastEndpointFactory(); dgc.setBroadcastEndpointFactory(endpoint); String query = BeanSupport.getData(IGNORED, bean, dgc, endpoint); return new URI(SchemaConstants.UDP, null, endpoint.getGroupAddress(), endpoint.getGroupPort(), null, query, null); }
@Override protected URI internalNewURI(ActiveMQConnectionFactory bean) throws Exception { DiscoveryGroupConfiguration dgc = bean.getDiscoveryGroupConfiguration(); UDPBroadcastEndpointFactory endpoint = (UDPBroadcastEndpointFactory) dgc.getBroadcastEndpointFactory(); String query = BeanSupport.getData(UDPServerLocatorSchema.IGNORED, bean, dgc, endpoint); dgc.setBroadcastEndpointFactory(endpoint); return new URI(SchemaConstants.UDP, null, endpoint.getGroupAddress(), endpoint.getGroupPort(), null, query, null); } }
public URI toURI() throws IOException { ConnectionFactoryParser parser = new ConnectionFactoryParser(); String scheme; if (serverLocator.getDiscoveryGroupConfiguration() != null) { if (serverLocator.getDiscoveryGroupConfiguration().getBroadcastEndpointFactory() instanceof UDPBroadcastEndpointFactory) { scheme = "udp"; } else { scheme = "jgroups"; } } else { if (serverLocator.allInVM()) { scheme = "vm"; } else { scheme = "tcp"; } } URI uri; try { uri = parser.createSchema(scheme, this); } catch (Exception e) { if (e instanceof IOException) { throw (IOException) e; } throw new IOException(e); } return uri; }
private static DiscoveryGroup createDiscoveryGroup(String nodeID, DiscoveryGroupConfiguration config) throws Exception { DiscoveryGroup group = new DiscoveryGroup(nodeID, config.getName(), config.getRefreshTimeout(), config.getBroadcastEndpointFactory(), null); return group; }
private static DiscoveryGroup createDiscoveryGroup(String nodeID, DiscoveryGroupConfiguration config) throws Exception { DiscoveryGroup group = new DiscoveryGroup(nodeID, config.getName(), config.getRefreshTimeout(), config.getBroadcastEndpointFactory(), null); return group; }
private static DiscoveryGroup createDiscoveryGroup(String nodeID, DiscoveryGroupConfiguration config) throws Exception { DiscoveryGroup group = new DiscoveryGroup(nodeID, config.getName(), config.getRefreshTimeout(), config.getBroadcastEndpointFactory(), null); return group; }
private static DiscoveryGroup createDiscoveryGroup(String nodeID, DiscoveryGroupConfiguration config) throws Exception { DiscoveryGroup group = new DiscoveryGroup(nodeID, config.getName(), config.getRefreshTimeout(), config.getBroadcastEndpointFactory(), null); return group; }
private static DiscoveryGroup createDiscoveryGroup(String nodeID, DiscoveryGroupConfiguration config) throws Exception { DiscoveryGroup group = new DiscoveryGroup(nodeID, config.getName(), config.getRefreshTimeout(), config.getBroadcastEndpointFactory(), null); return group; }
@Override protected URI internalNewURI(ServerLocator bean) throws Exception { DiscoveryGroupConfiguration dgc = bean.getDiscoveryGroupConfiguration(); UDPBroadcastEndpointFactory endpoint = (UDPBroadcastEndpointFactory) dgc.getBroadcastEndpointFactory(); dgc.setBroadcastEndpointFactory(endpoint); String query = BeanSupport.getData(IGNORED, bean, dgc, endpoint); return new URI(SchemaConstants.UDP, null, endpoint.getGroupAddress(), endpoint.getGroupPort(), null, query, null); }
@Override protected URI internalNewURI(ActiveMQConnectionFactory bean) throws Exception { DiscoveryGroupConfiguration dgc = bean.getDiscoveryGroupConfiguration(); UDPBroadcastEndpointFactory endpoint = (UDPBroadcastEndpointFactory) dgc.getBroadcastEndpointFactory(); String query = BeanSupport.getData(UDPServerLocatorSchema.IGNORED, bean, dgc, endpoint); dgc.setBroadcastEndpointFactory(endpoint); return new URI(SchemaConstants.UDP, null, endpoint.getGroupAddress(), endpoint.getGroupPort(), null, query, null); } }
@Override protected URI internalNewURI(ServerLocator bean) throws Exception { DiscoveryGroupConfiguration dgc = bean.getDiscoveryGroupConfiguration(); UDPBroadcastEndpointFactory endpoint = (UDPBroadcastEndpointFactory) dgc.getBroadcastEndpointFactory(); dgc.setBroadcastEndpointFactory(endpoint); String query = BeanSupport.getData(IGNORED, bean, dgc, endpoint); return new URI(SchemaConstants.UDP, null, endpoint.getGroupAddress(), endpoint.getGroupPort(), null, query, null); }
@Override protected URI internalNewURI(ServerLocator bean) throws Exception { DiscoveryGroupConfiguration dgc = bean.getDiscoveryGroupConfiguration(); UDPBroadcastEndpointFactory endpoint = (UDPBroadcastEndpointFactory) dgc.getBroadcastEndpointFactory(); dgc.setBroadcastEndpointFactory(endpoint); String query = BeanSupport.getData(IGNORED, bean, dgc, endpoint); return new URI(SchemaConstants.UDP, null, endpoint.getGroupAddress(), endpoint.getGroupPort(), null, query, null); }
@Override protected URI internalNewURI(ServerLocator bean) throws Exception { DiscoveryGroupConfiguration dgc = bean.getDiscoveryGroupConfiguration(); UDPBroadcastEndpointFactory endpoint = (UDPBroadcastEndpointFactory) dgc.getBroadcastEndpointFactory(); dgc.setBroadcastEndpointFactory(endpoint); String query = BeanSupport.getData(IGNORED, bean, dgc, endpoint); return new URI(SchemaConstants.UDP, null, endpoint.getGroupAddress(), endpoint.getGroupPort(), null, query, null); }
@Override protected URI internalNewURI(ActiveMQConnectionFactory bean) throws Exception { DiscoveryGroupConfiguration dgc = bean.getDiscoveryGroupConfiguration(); UDPBroadcastEndpointFactory endpoint = (UDPBroadcastEndpointFactory) dgc.getBroadcastEndpointFactory(); String query = BeanSupport.getData(UDPServerLocatorSchema.IGNORED, bean, dgc, endpoint); dgc.setBroadcastEndpointFactory(endpoint); return new URI(SchemaConstants.UDP, null, endpoint.getGroupAddress(), endpoint.getGroupPort(), null, query, null); } }
@Override protected URI internalNewURI(ActiveMQConnectionFactory bean) throws Exception { DiscoveryGroupConfiguration dgc = bean.getDiscoveryGroupConfiguration(); UDPBroadcastEndpointFactory endpoint = (UDPBroadcastEndpointFactory) dgc.getBroadcastEndpointFactory(); String query = BeanSupport.getData(UDPServerLocatorSchema.IGNORED, bean, dgc, endpoint); dgc.setBroadcastEndpointFactory(endpoint); return new URI(SchemaConstants.UDP, null, endpoint.getGroupAddress(), endpoint.getGroupPort(), null, query, null); } }
@Test public void testRemoteCFWithJGroups() throws Exception { Hashtable<String, String> props = new Hashtable<>(); props.put(Context.INITIAL_CONTEXT_FACTORY, "org.apache.activemq.artemis.jndi.ActiveMQInitialContextFactory"); props.put("connectionFactory.myConnectionFactory", "jgroups://mychannelid?file=test-jgroups-file_ping.xml"); Context ctx = new InitialContext(props); ActiveMQConnectionFactory connectionFactory = (ActiveMQConnectionFactory) ctx.lookup("myConnectionFactory"); connectionFactory.getDiscoveryGroupConfiguration().getBroadcastEndpointFactory().createBroadcastEndpoint().close(false); }
@Override @After public void tearDown() throws Exception { // small hack, the channel here is cached, so checking that it's not closed by any endpoint BroadcastEndpoint broadcastEndpoint = jmsServer.getActiveMQServer().getConfiguration().getDiscoveryGroupConfigurations().get("dg1").getBroadcastEndpointFactory().createBroadcastEndpoint(); broadcastEndpoint.close(true); if (channel != null) { assertFalse(channel.isClosed()); channel.close(); } super.tearDown(); }