return;
}
Queue queue = (Queue)binding.getBindable();
Bridge bridge = null;
if (config.getDiscoveryGroupName() != null)
{
DiscoveryGroupConfiguration discoveryGroupConfiguration = configuration.getDiscoveryGroupConfigurations()
.get(config.getDiscoveryGroupName());
if (discoveryGroupConfiguration == null)
{
ClusterManagerImpl.log.warn("No discovery group configured with name '" + config.getDiscoveryGroupName() +
"'. The bridge will not be deployed.");
return;
}
bridge = new BridgeImpl(nodeUUID,
new SimpleString(config.getName()),
queue,
discoveryGroupConfiguration.getGroupAddress(),
discoveryGroupConfiguration.getGroupPort(),
null,
executorFactory.getExecutor(),
SimpleString.toSimpleString(config.getFilterString()),
new SimpleString(config.getForwardingAddress()),
scheduledExecutor,
transformer,
config.getRetryInterval(),
config.getRetryIntervalMultiplier(),
config.getReconnectAttempts(),
config.isFailoverOnServerShutdown(),
config.isUseDuplicateDetection(),
config.getConfirmationWindowSize(),
managementService.getManagementAddress(),
managementService.getManagementNotificationAddress(),
config.getUser(),
config.getPassword(),
null,
!backup,
server.getStorageManager());
}
else
{
TransportConfiguration connector = configuration.getConnectorConfigurations().get(connectorNamePair.a);
if (connector == null)
{
ClusterManagerImpl.log.warn("No connector defined with name '" + connectorNamePair.a +
"'. The bridge will not be deployed.");
return;
}
TransportConfiguration backupConnector = null;
if (connectorNamePair.b != null)
{
backupConnector = configuration.getConnectorConfigurations().get(connectorNamePair.b);
if (backupConnector == null)
{
ClusterManagerImpl.log.warn("No connector defined with name '" + connectorNamePair.b +
"'. The bridge will not be deployed.");
return;
}
}
Pair<TransportConfiguration, TransportConfiguration> pair = new Pair<TransportConfiguration, TransportConfiguration>(connector,
backupConnector);
bridge = new BridgeImpl(nodeUUID,
new SimpleString(config.getName()),
queue,
null,
-1,
pair,
executorFactory.getExecutor(),
SimpleString.toSimpleString(config.getFilterString()),
SimpleString.toSimpleString(config.getForwardingAddress()),
scheduledExecutor,
transformer,
config.getRetryInterval(),
config.getRetryIntervalMultiplier(),
config.getReconnectAttempts(),
config.isFailoverOnServerShutdown(),
config.isUseDuplicateDetection(),
config.getConfirmationWindowSize(),
managementService.getManagementAddress(),
managementService.getManagementNotificationAddress(),
server.getConfiguration().getClusterUser(),
server.getConfiguration().getClusterPassword(),
null,
!backup,
server.getStorageManager());
}
bridges.put(config.getName(), bridge);
managementService.registerBridge(bridge, config);
bridge.start();
}