Commit b08d0afd by Tuomas Riihimäki

Add irc bot server as system property. If it does not exist (default) do not start the bot

1 parent 0714751f
......@@ -66,7 +66,7 @@
<dependency>
<groupId>fi.iudex</groupId>
<artifactId>utils-standalone</artifactId>
<version>1.0.9</version>
<version>1.0.10</version>
</dependency>
<dependency>
<groupId>net.sf.barcode4j</groupId>
......@@ -118,7 +118,7 @@
<dependency>
<groupId>fi.iudex</groupId>
<artifactId>jerklib</artifactId>
<version>1.0.1</version>
<version>1.0.2</version>
</dependency>
<dependency>
<groupId>net.matlux</groupId>
......
package fi.codecrew.moya.utilities;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* Gather all system properties in here as enums, so we have some kind of
* understanding what kind of properties there are.
*
* @author tuomari
*
*/
public enum SystemProperty {
MOYA_IRC_SERVER,
MOYA_IRC_CHANNEL("#moya-debug")
;
private final String defaultValue;
private final Integer defaultIntegerValue;
private static final Logger logger = LoggerFactory.getLogger(SystemProperty.class);
private SystemProperty() {
defaultValue = null;
defaultIntegerValue = null;
}
private SystemProperty(String value) {
defaultValue = value;
defaultIntegerValue = null;
}
private SystemProperty(Integer value) {
defaultIntegerValue = value;
defaultValue = null;
}
public String getDefaultValue() {
return defaultValue;
}
public String getValueOrDefault() {
String val = System.getProperty(this.name());
if (val == null) {
val = defaultValue;
}
return val;
}
public Integer getIntvalueOrDefault() {
String val = System.getProperty(this.name());
Integer intval = null;
try {
intval = Integer.parseInt(val);
} catch (Throwable t) {
intval = null;
logger.warn("Unable to parse system property '{}' value '{}' as integer. Defaulting to {}", name(), val, defaultIntegerValue);
}
if (val == null) {
intval = defaultIntegerValue;
}
return intval;
}
}
......@@ -49,7 +49,6 @@ import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import fi.codecrew.moya.clientutils.BortalLocalContextHolder;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
......@@ -57,6 +56,7 @@ import fi.codecrew.moya.beans.BotBeanLocal;
import fi.codecrew.moya.beans.EventBeanLocal;
import fi.codecrew.moya.beans.PermissionBeanLocal;
import fi.codecrew.moya.beans.PlaceBeanLocal;
import fi.codecrew.moya.utilities.SystemProperty;
import fi.iudex.utils.irc.IrcBot;
import fi.iudex.utils.irc.IrcBotListener;
......@@ -94,14 +94,17 @@ public class IrcServlet extends HttpServlet {
*/
public void init(ServletConfig config) throws ServletException {
// tuotannossa rakastan tätä, devauspuolella en.
if(!BortalLocalContextHolder.isInDevelopmentMode()) {
IrcBot bot = new IrcBot("irc.cc.tut.fi", "#moya-debug", "moya-bot");
String ircserver = SystemProperty.MOYA_IRC_SERVER.getValueOrDefault();
logger.info("Got irc server system property {}", ircserver);
if (ircserver != null)
{
logger.info("Starting IRC client with server {}", ircserver);
IrcBot bot = new IrcBot(ircserver, SystemProperty.MOYA_IRC_CHANNEL.getValueOrDefault(), "moya-bot");
botbean.add(bot);
bots.add(bot);
bot.start();
}
}
/**
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!