From bfd8782e5b028dc47655eb332b43cbde7697bfda Mon Sep 17 00:00:00 2001 From: Julia McCauley Date: Tue, 30 Mar 2021 21:22:31 -0400 Subject: set up project structure --- src/main/java/edu/brown/cs/student/stars/Main.java | 62 ++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 src/main/java/edu/brown/cs/student/stars/Main.java (limited to 'src/main/java/edu/brown/cs') diff --git a/src/main/java/edu/brown/cs/student/stars/Main.java b/src/main/java/edu/brown/cs/student/stars/Main.java new file mode 100644 index 0000000..61127b5 --- /dev/null +++ b/src/main/java/edu/brown/cs/student/stars/Main.java @@ -0,0 +1,62 @@ +package edu.brown.cs.student.stars; + +import java.io.File; +import java.io.IOException; +import java.io.PrintWriter; +import java.io.StringWriter; +import java.util.Map; + +import joptsimple.OptionParser; +import joptsimple.OptionSet; +import spark.ExceptionHandler; +import spark.ModelAndView; +import spark.Request; +import spark.Response; +import spark.Spark; +import spark.TemplateViewRoute; +import spark.template.freemarker.FreeMarkerEngine; + +import com.google.common.collect.ImmutableMap; + +import freemarker.template.Configuration; + +/** + * The Main class of our project. This is where execution begins. + * + */ +public final class Main { + + private static final int DEFAULT_PORT = 4567; + + /** + * The initial method called when execution begins. + * + * @param args + * An array of command line arguments + */ + public static void main(String[] args) { + new Main(args).run(); + } + + private String[] args; + + private Main(String[] args) { + this.args = args; + } + + private void run() { + // Parse command line arguments + OptionParser parser = new OptionParser(); + parser.accepts("gui"); + parser.accepts("port").withRequiredArg().ofType(Integer.class) + .defaultsTo(DEFAULT_PORT); + OptionSet options = parser.parse(args); + + if (options.has("gui")) { + //do a gui type thing + //runSparkServer((int) options.valueOf("port")); + } + + // TODO: Process commands in a REPL + } +} \ No newline at end of file -- cgit v1.2.3-70-g09d2