mirror of
https://github.com/MewoLab/AquaDX.git
synced 2026-02-10 02:27:26 +08:00
[aimedb] Allow bind to specific address
This commit is contained in:
@@ -8,12 +8,15 @@ import io.netty.channel.nio.NioEventLoopGroup;
|
|||||||
import io.netty.channel.socket.nio.NioServerSocketChannel;
|
import io.netty.channel.socket.nio.NioServerSocketChannel;
|
||||||
import io.netty.handler.logging.LogLevel;
|
import io.netty.handler.logging.LogLevel;
|
||||||
import io.netty.handler.logging.LoggingHandler;
|
import io.netty.handler.logging.LoggingHandler;
|
||||||
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
import org.springframework.beans.factory.annotation.Value;
|
import org.springframework.beans.factory.annotation.Value;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
import java.net.InetAddress;
|
||||||
import java.net.InetSocketAddress;
|
import java.net.InetSocketAddress;
|
||||||
|
import java.net.UnknownHostException;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author samnyan (privateamusement@protonmail.com)
|
* @author samnyan (privateamusement@protonmail.com)
|
||||||
@@ -23,13 +26,16 @@ public class AimeDbServer {
|
|||||||
|
|
||||||
private static final Logger logger = LoggerFactory.getLogger(AimeDbServer.class);
|
private static final Logger logger = LoggerFactory.getLogger(AimeDbServer.class);
|
||||||
private final AimeDbServerInitializer aimeDbServerInitializer;
|
private final AimeDbServerInitializer aimeDbServerInitializer;
|
||||||
|
private final String address;
|
||||||
private final int port;
|
private final int port;
|
||||||
private final boolean enableAimeDb;
|
private final boolean enableAimeDb;
|
||||||
|
|
||||||
public AimeDbServer(AimeDbServerInitializer aimeDbServerInitializer,
|
public AimeDbServer(AimeDbServerInitializer aimeDbServerInitializer,
|
||||||
|
@Value("${aimedb.server.address}") String address,
|
||||||
@Value("${aimedb.server.port}") int port,
|
@Value("${aimedb.server.port}") int port,
|
||||||
@Value("${aimedb.server.enable}") boolean enableAimeDb) {
|
@Value("${aimedb.server.enable}") boolean enableAimeDb) {
|
||||||
this.aimeDbServerInitializer = aimeDbServerInitializer;
|
this.aimeDbServerInitializer = aimeDbServerInitializer;
|
||||||
|
this.address = address;
|
||||||
this.port = port;
|
this.port = port;
|
||||||
this.enableAimeDb = enableAimeDb;
|
this.enableAimeDb = enableAimeDb;
|
||||||
}
|
}
|
||||||
@@ -46,8 +52,19 @@ public class AimeDbServer {
|
|||||||
.childHandler(aimeDbServerInitializer)
|
.childHandler(aimeDbServerInitializer)
|
||||||
.option(ChannelOption.SO_BACKLOG, 128);
|
.option(ChannelOption.SO_BACKLOG, 128);
|
||||||
|
|
||||||
ChannelFuture f = bootstrap.bind(new InetSocketAddress(port)).sync();
|
InetSocketAddress socket;
|
||||||
logger.info("Aime DB start up on port : " + port);
|
if(StringUtils.isNotBlank(this.address)) {
|
||||||
|
try {
|
||||||
|
socket = new InetSocketAddress(InetAddress.getByName(this.address), this.port);
|
||||||
|
} catch (UnknownHostException e) {
|
||||||
|
logger.error("UnknownHostException, please check you have set a correct aimedb.server.address.");
|
||||||
|
socket = new InetSocketAddress(this.port);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
socket = new InetSocketAddress(this.port);
|
||||||
|
}
|
||||||
|
ChannelFuture f = bootstrap.bind(socket).sync();
|
||||||
|
logger.info("Aime DB start up on " + socket.toString());
|
||||||
f.channel().closeFuture();
|
f.channel().closeFuture();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
## AimeDb server setting
|
## AimeDb server setting
|
||||||
aimedb.server.enable=true
|
aimedb.server.enable=true
|
||||||
|
aimedb.server.address=0.0.0.0
|
||||||
aimedb.server.port=22345
|
aimedb.server.port=22345
|
||||||
## Server host return to client when boot up.
|
## Server host return to client when boot up.
|
||||||
## Please notice DIVA won't work with localhost or 127.0.0.1
|
## Please notice DIVA won't work with localhost or 127.0.0.1
|
||||||
|
|||||||
Reference in New Issue
Block a user