public void testDistinctTopicAndQueue() throws Exception {

    NetworkBridgeConfiguration configuration = getDefaultBridgeConfiguration();

    configuration.setExcludedDestinations(
        Arrays.asList(ActiveMQDestination.createDestination(">", ActiveMQDestination.TOPIC_TYPE)));
    configuration.setDynamicallyIncludedDestinations(
        Arrays.asList(ActiveMQDestination.createDestination(">", ActiveMQDestination.QUEUE_TYPE)));

    configureAndStartBridge(configuration);

    assertReceiveMessageOn("TEST", ActiveMQDestination.QUEUE_TYPE);
    assertReceiveNoMessageOn("TEST", ActiveMQDestination.TOPIC_TYPE);
  }
  public void testWildcardOnDynamicallyIncludedDestination() throws Exception {

    NetworkBridgeConfiguration configuration = getDefaultBridgeConfiguration();

    configuration.setDynamicallyIncludedDestinations(
        Arrays.asList(
            ActiveMQDestination.createDestination("OTHER.>", ActiveMQDestination.QUEUE_TYPE),
            ActiveMQDestination.createDestination("TEST.X2", ActiveMQDestination.QUEUE_TYPE)));

    configureAndStartBridge(configuration);

    assertReceiveMessageOn("OTHER.X1", ActiveMQDestination.QUEUE_TYPE);
    assertReceiveMessageOn("TEST.X2", ActiveMQDestination.QUEUE_TYPE);
  }
 private void configureAndStartBridge(NetworkBridgeConfiguration configuration) throws Exception {
   bridge = new DemandForwardingBridge(configuration, createTransport(), createRemoteTransport());
   bridge.setBrokerService(broker);
   bridge.setDynamicallyIncludedDestinations(
       configuration
           .getDynamicallyIncludedDestinations()
           .toArray(
               new ActiveMQDestination
                   [configuration.getDynamicallyIncludedDestinations().size()]));
   bridge.setExcludedDestinations(
       configuration
           .getExcludedDestinations()
           .toArray(new ActiveMQDestination[configuration.getExcludedDestinations().size()]));
   bridge.setStaticallyIncludedDestinations(
       configuration
           .getStaticallyIncludedDestinations()
           .toArray(
               new ActiveMQDestination[configuration.getStaticallyIncludedDestinations().size()]));
   bridge.start();
 }
 public NetworkBridgeConfiguration getDefaultBridgeConfiguration() {
   NetworkBridgeConfiguration config = new NetworkBridgeConfiguration();
   config.setBrokerName("local");
   config.setDispatchAsync(false);
   return config;
 }