@Test public void testAttributes() throws Exception { checkResource(ObjectNameBuilder.DEFAULT.getBridgeObjectName(bridgeConfig.getName())); BridgeControl bridgeControl = createBridgeControl(bridgeConfig.getName(), mbeanServer); Assert.assertEquals(bridgeConfig.getName(), bridgeControl.getName()); Assert.assertEquals(bridgeConfig.getDiscoveryGroupName(), bridgeControl.getDiscoveryGroupName()); Assert.assertEquals(bridgeConfig.getQueueName(), bridgeControl.getQueueName()); Assert.assertEquals(bridgeConfig.getForwardingAddress(), bridgeControl.getForwardingAddress()); Assert.assertEquals(bridgeConfig.getFilterString(), bridgeControl.getFilterString()); Assert.assertEquals(bridgeConfig.getRetryInterval(), bridgeControl.getRetryInterval()); Assert.assertEquals(bridgeConfig.getRetryIntervalMultiplier(), bridgeControl.getRetryIntervalMultiplier(), 0.000001); Assert.assertEquals(bridgeConfig.getReconnectAttempts(), bridgeControl.getReconnectAttempts()); Assert.assertEquals(bridgeConfig.isUseDuplicateDetection(), bridgeControl.isUseDuplicateDetection()); Map<String, Object> bridgeMetrics = bridgeControl.getMetrics(); Assert.assertEquals(0L, bridgeControl.getMessagesPendingAcknowledgement()); Assert.assertEquals(0L, bridgeControl.getMessagesAcknowledged()); Assert.assertEquals(0L, bridgeMetrics.get(BridgeMetrics.MESSAGES_PENDING_ACKNOWLEDGEMENT_KEY)); Assert.assertEquals(0L, bridgeMetrics.get(BridgeMetrics.MESSAGES_ACKNOWLEDGED_KEY)); String[] connectorPairData = bridgeControl.getStaticConnectors(); Assert.assertEquals(bridgeConfig.getStaticConnectors().get(0), connectorPairData[0]); Assert.assertTrue(bridgeControl.isStarted()); }
@Test public void testNotifications() throws Exception { SimpleNotificationService.Listener notifListener = new SimpleNotificationService.Listener(); BridgeControl bridgeControl = createBridgeControl(bridgeConfig.getName(), mbeanServer); server_0.getManagementService().addNotificationListener(notifListener); Assert.assertEquals(0, notifListener.getNotifications().size()); bridgeControl.stop(); Assert.assertEquals(1, notifListener.getNotifications().size()); Notification notif = notifListener.getNotifications().get(0); Assert.assertEquals(CoreNotificationType.BRIDGE_STOPPED, notif.getType()); Assert.assertEquals(bridgeControl.getName(), notif.getProperties().getSimpleStringProperty(new SimpleString("name")).toString()); bridgeControl.start(); Assert.assertEquals(2, notifListener.getNotifications().size()); notif = notifListener.getNotifications().get(1); Assert.assertEquals(CoreNotificationType.BRIDGE_STARTED, notif.getType()); Assert.assertEquals(bridgeControl.getName(), notif.getProperties().getSimpleStringProperty(new SimpleString("name")).toString()); }
@Override public String[] getBridgeNames() { checkStarted(); clearIO(); try { Object[] bridges = server.getManagementService().getResources(BridgeControl.class); String[] names = new String[bridges.length]; for (int i = 0; i < bridges.length; i++) { BridgeControl bridge = (BridgeControl) bridges[i]; names[i] = bridge.getName(); } return names; } finally { blockOnIO(); } }