}
builder.classLoader(loader);
builder.shutdown().hookBehavior(ShutdownHookBehavior.DONT_REGISTER);
TransportConfiguration transport = this.dependencies.getTransportConfiguration();
TransportConfigurationBuilder transportBuilder = builder.transport();
if (transport != null) {
// See ISPN-1675
// transportBuilder.transport(new ChannelTransport(transport.getChannel()));
ChannelProvider.init(transportBuilder, transport.getChannel());
Long timeout = transport.getLockTimeout();
if (timeout != null) {
transportBuilder.distributedSyncTimeout(timeout.longValue());
}
// Topology is retrieved from the channel
Channel channel = transport.getChannel();
if(channel.getAddress() instanceof TopologyUUID) {
TopologyUUID topologyAddress = (TopologyUUID) channel.getAddress();
String site = topologyAddress.getSiteId();
if (site != null) {
transportBuilder.siteId(site);
}
String rack = topologyAddress.getRackId();
if (rack != null) {
transportBuilder.rackId(rack);
}
String machine = topologyAddress.getMachineId();
if (machine != null) {
transportBuilder.machineId(machine);
}
}
transportBuilder.clusterName(this.name);
Executor executor = transport.getExecutor();
if (executor != null) {
// See ISPN-1675
// globalBuilder.asyncTransportExecutor().factory(new ManagedExecutorFactory(executor));