Moving port and web location configuration to commandline parameters.

This commit is contained in:
marcins78
2013-01-09 18:21:15 +00:00
parent 57c3c4fc89
commit 1ad65f32ac
4 changed files with 15 additions and 9 deletions

View File

@@ -1,6 +1,5 @@
package com.gempukku.lotro.async;
import com.gempukku.lotro.common.ApplicationConfiguration;
import org.jboss.netty.bootstrap.ServerBootstrap;
import org.jboss.netty.channel.ChannelFactory;
import org.jboss.netty.channel.socket.nio.NioServerSocketChannelFactory;
@@ -10,6 +9,9 @@ import java.util.concurrent.Executors;
public class LotroAsyncServer {
public static void main(String[] server) {
int port = Integer.parseInt(server[0]);
String webLocation = server[1];
ChannelFactory factory =
new NioServerSocketChannelFactory(
Executors.newCachedThreadPool(),
@@ -18,10 +20,10 @@ public class LotroAsyncServer {
ServerBootstrap bootstrap = new ServerBootstrap(factory);
bootstrap.setPipelineFactory(new LotroServerPipelineFactory());
bootstrap.setPipelineFactory(new LotroServerPipelineFactory(webLocation));
bootstrap.setOption("child.tcpNoDelay", true);
bootstrap.setOption("child.keepAlive", true);
bootstrap.bind(new InetSocketAddress(Integer.parseInt(ApplicationConfiguration.getProperty("port"))));
bootstrap.bind(new InetSocketAddress(port));
}
}

View File

@@ -21,7 +21,7 @@ public class LotroServerPipelineFactory implements ChannelPipelineFactory {
private Map<Type, Object> _context;
private UriRequestHandler _uriRequestHandler;
public LotroServerPipelineFactory() {
public LotroServerPipelineFactory(String webPath) {
Map<Type, Object> objects = new HashMap<Type, Object>();
objects.put(PacksStorage.class, PacksStorageBuilder.createPacksStorage());
DaoBuilder.fillObjectMap(objects);
@@ -37,7 +37,7 @@ public class LotroServerPipelineFactory implements ChannelPipelineFactory {
objects.put(LongPollingSystem.class, longPollingSystem);
_context = objects;
_uriRequestHandler = new RootUriRequestHandler(_context);
_uriRequestHandler = new RootUriRequestHandler(_context, webPath);
}
public ChannelPipeline getPipeline() throws Exception {

View File

@@ -12,7 +12,7 @@ public class RootUriRequestHandler implements UriRequestHandler {
private String _serverContextPath ="/gemp-lotr-server/";
private String _webContextPath="/gemp-lotr/";
private HallRequestHandler _hallRequestHandler;
private WebRequestHandler _webRequestHandler = new WebRequestHandler();
private WebRequestHandler _webRequestHandler;
private LoginRequestHandler _loginRequestHandler;
private StatusRequestHandler _statusRequestHandler;
private DeckRequestHandler _deckRequestHandler;
@@ -30,7 +30,8 @@ public class RootUriRequestHandler implements UriRequestHandler {
private PlayerStatsRequestHandler _playerStatsRequestHandler;
private TournamentRequestHandler _tournamentRequestHandler;
public RootUriRequestHandler(Map<Type, Object> context) {
public RootUriRequestHandler(Map<Type, Object> context, String webPath) {
_webRequestHandler = new WebRequestHandler(webPath);
_hallRequestHandler = new HallRequestHandler(context);
_deckRequestHandler = new DeckRequestHandler(context);
_loginRequestHandler = new LoginRequestHandler(context);

View File

@@ -1,7 +1,6 @@
package com.gempukku.lotro.async.handler;
import com.gempukku.lotro.async.ResponseWriter;
import com.gempukku.lotro.common.ApplicationConfiguration;
import org.jboss.netty.channel.MessageEvent;
import org.jboss.netty.handler.codec.http.HttpRequest;
@@ -10,7 +9,11 @@ import java.lang.reflect.Type;
import java.util.Map;
public class WebRequestHandler implements UriRequestHandler {
private String _root = ApplicationConfiguration.getProperty("web.folder");
private String _root;
public WebRequestHandler(String root) {
_root = root;
}
@Override
public void handleRequest(String uri, HttpRequest request, Map<Type, Object> context, ResponseWriter responseWriter, MessageEvent e) throws Exception {