diff --git a/pom.xml b/pom.xml index 8499bdb..2a498cd 100644 --- a/pom.xml +++ b/pom.xml @@ -11,18 +11,34 @@ UTF-8 1.6 + + + pircbot + file://${project.basedir}/repository/ + + + junit junit 3.8.1 test + + + pircbot + pircbot-ssl + 1.5.0 + + + org.antlr antlr @@ -84,6 +100,11 @@ commons-cli 1.2 + + commons-httpclient + commons-httpclient + 3.1 + org.xerial sqlite-jdbc @@ -98,6 +119,15 @@ PushBot + + org.apache.maven.plugins + maven-compiler-plugin + 2.0.2 + + 1.6 + 1.6 + + org.antlr antlr3-maven-plugin @@ -140,6 +170,7 @@ org.apache.maven.plugins maven-jar-plugin + 3.0.0 diff --git a/repository/pircbot/pircbot-ssl/1.5.0/pircbot-ssl-1.5.0.jar b/repository/pircbot/pircbot-ssl/1.5.0/pircbot-ssl-1.5.0.jar new file mode 100644 index 0000000..8b1f160 Binary files /dev/null and b/repository/pircbot/pircbot-ssl/1.5.0/pircbot-ssl-1.5.0.jar differ diff --git a/repository/pircbot/pircbot-ssl/1.5.0/pircbot-ssl-1.5.0.pom b/repository/pircbot/pircbot-ssl/1.5.0/pircbot-ssl-1.5.0.pom new file mode 100644 index 0000000..5bc89fe --- /dev/null +++ b/repository/pircbot/pircbot-ssl/1.5.0/pircbot-ssl-1.5.0.pom @@ -0,0 +1,9 @@ + + + 4.0.0 + pircbot + pircbot-ssl + 1.5.0 + POM was created from install:install-file + diff --git a/repository/pircbot/pircbot-ssl/maven-metadata-local.xml b/repository/pircbot/pircbot-ssl/maven-metadata-local.xml new file mode 100644 index 0000000..a72a1d7 --- /dev/null +++ b/repository/pircbot/pircbot-ssl/maven-metadata-local.xml @@ -0,0 +1,12 @@ + + + pircbot + pircbot-ssl + + 1.5.0 + + 1.5.0 + + 20160601161756 + + diff --git a/src/main/java/com/etsy/pushbot/PushBot.java b/src/main/java/com/etsy/pushbot/PushBot.java index 9a1dd14..4814e21 100644 --- a/src/main/java/com/etsy/pushbot/PushBot.java +++ b/src/main/java/com/etsy/pushbot/PushBot.java @@ -1,13 +1,14 @@ package com.etsy.pushbot; import com.etsy.pushbot.command.TrainCommand; +import com.etsy.pushbot.config.ConfigServer; +import com.etsy.pushbot.config.Status; import java.util.HashMap; import java.util.LinkedList; import java.util.List; -import com.etsy.pushbot.config.ConfigServer; -import com.etsy.pushbot.config.Status; -import org.apache.commons.cli.CommandLineParser; +import javax.net.ssl.SSLSocketFactory; import org.apache.commons.cli.CommandLine; +import org.apache.commons.cli.CommandLineParser; import org.apache.commons.cli.Option; import org.apache.commons.cli.Options; import org.apache.commons.cli.ParseException; @@ -258,6 +259,10 @@ public static void main(String[] args) option.setRequired(false); options.addOption(option); + option = new Option("s", "ssl", false, "Use SSL"); + option.setRequired(false); + options.addOption(option); + option = new Option("g", "graphite-enabled", false, "Set to true to log stats to graphite"); options.addOption(option); @@ -280,6 +285,7 @@ public static void main(String[] args) System.err.println(" -h,--irc-host IRCD hostname"); System.err.println(" -p,--irc-port IRCD port"); System.err.println(" -a,--irc-passwod Optional IRCD server password"); + System.err.println(" -s,--ssl Connect using SSL"); System.err.println(" -g,--graphite-enabled Enable graphite logging"); System.err.println(" -r,--graphite-host Graphite hostname"); System.err.println(" -t,--graphite-port Graphite port"); @@ -299,11 +305,19 @@ public static void main(String[] args) commandLine.getOptionValue('r', null), Integer.valueOf(commandLine.getOptionValue('t', "2003"))); + SSLSocketFactory socketFactory = null; + + if (commandLine.hasOption('s')) { + socketFactory = (SSLSocketFactory)SSLSocketFactory.getDefault(); + } + // Connect to IRCD pushBot.connect( commandLine.getOptionValue('h'), Integer.valueOf(commandLine.getOptionValue('p')), - commandLine.getOptionValue('a', null)); + commandLine.getOptionValue('a', null), + socketFactory + ); // Launch the web interface ConfigServer configServer = new ConfigServer(pushBot);