@Override public int getGroupPort() throws Exception { clearIO(); try { if (configuration.getEndpointFactory() instanceof UDPBroadcastEndpointFactory) { return ((UDPBroadcastEndpointFactory) configuration.getEndpointFactory()).getGroupPort(); } throw new Exception("Invalid request because this is not a UDP Broadcast configuration."); } finally { blockOnIO(); } }
@Override public String getGroupAddress() throws Exception { clearIO(); try { if (configuration.getEndpointFactory() instanceof UDPBroadcastEndpointFactory) { return ((UDPBroadcastEndpointFactory) configuration.getEndpointFactory()).getGroupAddress(); } throw new Exception("Invalid request because this is not a UDP Broadcast configuration."); } finally { blockOnIO(); } }
@Override public int getLocalBindPort() throws Exception { clearIO(); try { if (configuration.getEndpointFactory() instanceof UDPBroadcastEndpointFactory) { return ((UDPBroadcastEndpointFactory) configuration.getEndpointFactory()).getLocalBindPort(); } throw new Exception("Invalid request because this is not a UDP Broadcast configuration."); } finally { blockOnIO(); } }
private BroadcastGroup createBroadcastGroup(BroadcastGroupConfiguration config) throws Exception { BroadcastGroup group = broadcastGroups.get(config.getName()); if (group == null) { group = new BroadcastGroupImpl(nodeManager, config.getName(), config.getBroadcastPeriod(), scheduledExecutor, config.getEndpointFactory()); for (String connectorInfo : config.getConnectorInfos()) { TransportConfiguration connector = configuration.getConnectorConfigurations().get(connectorInfo); if (connector == null) { logWarnNoConnector(connectorInfo, config.getName()); return null; } group.addConnector(connector); } } if (group.size() == 0) { logWarnNoConnector(config.getConnectorInfos().toString(), group.getName()); return null; } broadcastGroups.put(config.getName(), group); return group; }
@Test public void testAttributes() throws Exception { UDPBroadcastEndpointFactory udpCfg = (UDPBroadcastEndpointFactory) broadcastGroupConfig.getEndpointFactory(); Assert.assertEquals(broadcastGroupConfig.getName(), broadcastGroupControl.getName()); Assert.assertEquals(udpCfg.getGroupAddress(), broadcastGroupControl.getGroupAddress()); Assert.assertEquals(udpCfg.getGroupPort(), broadcastGroupControl.getGroupPort()); Assert.assertEquals(udpCfg.getLocalBindPort(), broadcastGroupControl.getLocalBindPort()); Assert.assertEquals(broadcastGroupConfig.getBroadcastPeriod(), broadcastGroupControl.getBroadcastPeriod()); Object[] connectorPairs = broadcastGroupControl.getConnectorPairs(); Assert.assertEquals(1, connectorPairs.length); String connectorPairData = (String) connectorPairs[0]; Assert.assertEquals(broadcastGroupConfig.getConnectorInfos().get(0), connectorPairData); String jsonString = broadcastGroupControl.getConnectorPairsAsJSON(); Assert.assertNotNull(jsonString); JsonArray array = JsonUtil.readJsonArray(jsonString); Assert.assertEquals(1, array.size()); Assert.assertEquals(broadcastGroupConfig.getConnectorInfos().get(0), array.getString(0)); Assert.assertTrue(broadcastGroupControl.isStarted()); }
UDPBroadcastEndpointFactory udpBc = (UDPBroadcastEndpointFactory) bc.getEndpointFactory(); if (bc.getName().equals("bg1")) { Assert.assertEquals("bg1", bc.getName());