Source:
<code>private ListenableFuture<Transport> bind0() { InetAddress listenAddress; if (config.getListenAddress() != null && config.getListenInterface() != null) { throw new IllegalArgumentException("Not allowed to set both listenAddress and listenInterface, choose one"); } else if (config.getListenAddress() != null) { try { listenAddress = InetAddress.getByName(config.getListenAddress()); } catch (UnknownHostException e) { throw new IllegalArgumentException("Unknown listenAddress: " + config.getListenAddress()); } if (listenAddress.isAnyLocalAddress()) { throw new IllegalArgumentException( "listenAddress: " + config.getListenAddress() + " cannot be a wildcard address"); } } else if (config.getListenInterface() != null) { listenAddress = getNetworkInterfaceAddress(config.getListenInterface(), config.isPreferIPv6()); } else { listenAddress = Address.getLocalIpAddress(); } incomingMessagesSubject.subscribeOn(Schedulers.from(bootstrapFactory.getWorkerGroup())); int bindPort = config.isPortAutoIncrement() ? AvailablePortFinder.getNextAvailable(config.getPort(), config.getPortCount()) : config.getPort(); <START> address = Address.createLocal(bindPort); <END> ServerBootstrap server = bootstrapFactory.serverBootstrap().childHandler(incomingChannelInitializer); ChannelFuture bindFuture = server.bind(listenAddress, address.port()); final SettableFuture<Transport> result = SettableFuture.create(); final InetAddress finalListenAddress = listenAddress; bindFuture.addListener(new ChannelFutureListener() { @Override public void operationComplete(ChannelFuture channelFuture) throws Exception { if (channelFuture.isSuccess()) { serverChannel = (ServerChannel) channelFuture.channel(); LOGGER.info("Bound to: {}", finalListenAddress); result.set(Transport.this); } else { LOGGER.error("Failed to bind to: {}, cause: {}", finalListenAddress, channelFuture.cause()); result.setException(channelFuture.cause()); } } }); return result; }</code><technical_language>address listen address</technical_language>

Target:
private ListenableFuture<Transport> bind0() { incomingMessagesSubject.subscribeOn(Schedulers.from(bootstrapFactory.getWorkerGroup())); final InetAddress listenAddress = Addressing.getLocalIpAddress(config.getListenAddress(), config.getListenInterface(), config.isPreferIPv6()); int bindPort = config.isPortAutoIncrement() ? Addressing.getNextAvailablePort(listenAddress, config.getPort(), config.getPortCount()) : config.getPort(); address = Address.create(listenAddress.getHostAddress(), bindPort); ServerBootstrap server = bootstrapFactory.serverBootstrap().childHandler(incomingChannelInitializer); ChannelFuture bindFuture = server.bind(listenAddress, address.port()); final SettableFuture<Transport> result = SettableFuture.create(); bindFuture.addListener(new ChannelFutureListener() { @Override public void operationComplete(ChannelFuture channelFuture) throws Exception { if (channelFuture.isSuccess()) { serverChannel = (ServerChannel) channelFuture.channel(); LOGGER.info("Bound to: {}", listenAddress); result.set(Transport.this); } else { LOGGER.error("Failed to bind to: {}, cause: {}", listenAddress, channelFuture.cause()); result.setException(channelFuture.cause()); } } }); return result; }