From 846a3c36d13904da50bb1429df5a4604405493cf Mon Sep 17 00:00:00 2001 From: Reid Campolong Date: Wed, 31 Oct 2018 00:15:29 -0400 Subject: [PATCH] Added documentation for commands and classes --- src/main/java/jterm/Client.java | 5 ++++ src/main/java/jterm/JTerm.java | 30 +++++++++++++++++++ src/main/java/jterm/Server.java | 8 +++++ src/main/java/jterm/command/Clear.java | 4 +++ .../java/jterm/command/CommandExecutor.java | 2 +- src/main/java/jterm/command/Date.java | 4 +++ src/main/java/jterm/command/Echo.java | 4 +++ src/main/java/jterm/command/Exec.java | 4 +++ src/main/java/jterm/command/Exit.java | 4 +++ src/main/java/jterm/command/Files.java | 4 +++ src/main/java/jterm/command/Help.java | 4 +++ src/main/java/jterm/command/Pause.java | 4 +++ src/main/java/jterm/command/Ping.java | 4 +++ src/main/java/jterm/command/Ps.java | 4 +++ src/main/java/jterm/command/Time.java | 4 +++ src/main/java/jterm/command/Window.java | 4 +++ .../java/jterm/util/FileAutocomplete.java | 3 ++ src/main/java/jterm/util/Util.java | 15 ++++++++++ 18 files changed, 110 insertions(+), 1 deletion(-) diff --git a/src/main/java/jterm/Client.java b/src/main/java/jterm/Client.java index 8d6003c..d2d0a17 100644 --- a/src/main/java/jterm/Client.java +++ b/src/main/java/jterm/Client.java @@ -25,6 +25,7 @@ import java.util.ArrayList; public class Client implements Runnable { + private static BufferedReader input; public void run() { @@ -40,6 +41,10 @@ public void run() { } } + /** + * Creates new connection to server + * @param options + */ public static void connect(ArrayList options) { String address = "0.0.0.0"; String portInput = "80"; diff --git a/src/main/java/jterm/JTerm.java b/src/main/java/jterm/JTerm.java index cde296e..3adef4f 100644 --- a/src/main/java/jterm/JTerm.java +++ b/src/main/java/jterm/JTerm.java @@ -89,6 +89,10 @@ public static void main(String[] args) { } } + /** + * Exectues a command string + * @param options + */ public static void executeCommand(String options) { List optionsArray = Util.getAsArray(options); @@ -110,6 +114,9 @@ public static void executeCommand(String options) { } } + /** + * Initialize commands + */ private static void initCommands() { // Reflections reflections = new Reflections("jterm.command", new MethodAnnotationsScanner()); // Set methods = reflections.getMethodsAnnotatedWith(Command.class); @@ -175,6 +182,9 @@ private static void initCommands() { }); } + /** + * Sets operating system + */ private static void setOS() { String os = System.getProperty("os.name").toLowerCase(); if (os.contains("windows")) { @@ -188,14 +198,26 @@ private static void setOS() { } } + /** + * Check if headless + * @return true if headless + */ public static boolean isHeadless() { return headless; } + /** + * Gets terminal + * @return terminal + */ public static Terminal getTerminal() { return terminal; } + /** + * Gets commands + * @return Set commands + */ public static Set getCommands() { return JTerm.COMMANDS.keySet(); } @@ -205,10 +227,18 @@ public static void setheadless(boolean b){ headless = b; } + /** + * Sets terminal + * @param terminal + */ public static void setTerminal(Terminal terminal) { JTerm.terminal = terminal; } + /** + * Sets prompt + * @param prompt + */ public static void setPrompt(String prompt) { PROMPT = prompt; } diff --git a/src/main/java/jterm/Server.java b/src/main/java/jterm/Server.java index 942a8c5..4a2de1f 100644 --- a/src/main/java/jterm/Server.java +++ b/src/main/java/jterm/Server.java @@ -35,6 +35,10 @@ public class Server implements Runnable { public static int port = 0; private static String line; + /** + * Create a server instance + * @param newSocket + */ public Server(Socket newSocket) { socket = newSocket; } @@ -60,6 +64,10 @@ public void run() { } } + /** + * Start server + * @param options + */ public static void start(ArrayList options) { String portInput = "80"; for (String option : options) { diff --git a/src/main/java/jterm/command/Clear.java b/src/main/java/jterm/command/Clear.java index 6feee75..9c0522d 100644 --- a/src/main/java/jterm/command/Clear.java +++ b/src/main/java/jterm/command/Clear.java @@ -19,6 +19,10 @@ import java.util.List; +/** + * Clear command + * @Usage - clears terminal + */ public class Clear { diff --git a/src/main/java/jterm/command/CommandExecutor.java b/src/main/java/jterm/command/CommandExecutor.java index f99dc6c..b1da0e3 100644 --- a/src/main/java/jterm/command/CommandExecutor.java +++ b/src/main/java/jterm/command/CommandExecutor.java @@ -40,7 +40,7 @@ public void execute(List options) { return; } if (options.size() < minOptions) { - throw new CommandException("To few arguments for \'" + commandName + '\''); + throw new CommandException("Too few arguments for \'" + commandName + '\''); } command.accept(options); } diff --git a/src/main/java/jterm/command/Date.java b/src/main/java/jterm/command/Date.java index ce80dcb..5f7d86c 100644 --- a/src/main/java/jterm/command/Date.java +++ b/src/main/java/jterm/command/Date.java @@ -23,6 +23,10 @@ import java.util.Calendar; import java.util.List; +/** + * Date Command + * @Usage - prints current date to terminal + */ public class Date { private static final DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss"); diff --git a/src/main/java/jterm/command/Echo.java b/src/main/java/jterm/command/Echo.java index e5fd2a7..2179976 100644 --- a/src/main/java/jterm/command/Echo.java +++ b/src/main/java/jterm/command/Echo.java @@ -24,6 +24,10 @@ import java.util.List; +/** + * Echo command + * @Usage - outputs to terminal + */ public class Echo { // FIXME: echo is not working correctly, for example: > echo $JAVA_HOME @Command(name = "echo", minOptions = 1, syntax = "echo [-h] input") diff --git a/src/main/java/jterm/command/Exec.java b/src/main/java/jterm/command/Exec.java index e51a899..a45d34c 100644 --- a/src/main/java/jterm/command/Exec.java +++ b/src/main/java/jterm/command/Exec.java @@ -23,6 +23,10 @@ import java.util.List; import java.util.Scanner; +/** + * Exec command + * @Usage - runs executable jar + */ public class Exec { @Command(name = "exec", minOptions = 1, syntax = "exec executable") diff --git a/src/main/java/jterm/command/Exit.java b/src/main/java/jterm/command/Exit.java index dc42dc2..f117e97 100644 --- a/src/main/java/jterm/command/Exit.java +++ b/src/main/java/jterm/command/Exit.java @@ -20,6 +20,10 @@ import java.util.List; +/** + * Exit Command + * @Usage - exits terminal + */ public class Exit { @Command(name = "exit", syntax = "exit [-h]") diff --git a/src/main/java/jterm/command/Files.java b/src/main/java/jterm/command/Files.java index f30b7f8..e6eeec8 100644 --- a/src/main/java/jterm/command/Files.java +++ b/src/main/java/jterm/command/Files.java @@ -30,6 +30,10 @@ import static java.nio.file.StandardCopyOption.REPLACE_EXISTING; +/** + * Files Command + * @Usage- Moves, Renames, Writes, Deletes, Reads, or Downloads a file + */ public class Files { // @ojles and @Kaperskyguru @Command(name = {"mv", "move"}, minOptions = 2, syntax = "move, mv [-h] source destination") diff --git a/src/main/java/jterm/command/Help.java b/src/main/java/jterm/command/Help.java index 9fd89ae..5f9ba76 100644 --- a/src/main/java/jterm/command/Help.java +++ b/src/main/java/jterm/command/Help.java @@ -23,6 +23,10 @@ import java.util.List; import java.util.TreeSet; +/** + * Help command + * @Usage - View info about commands + */ public class Help { @Command(name = "help") public static void printHelp(List options) { diff --git a/src/main/java/jterm/command/Pause.java b/src/main/java/jterm/command/Pause.java index 6618cd0..ae95ac5 100644 --- a/src/main/java/jterm/command/Pause.java +++ b/src/main/java/jterm/command/Pause.java @@ -23,6 +23,10 @@ import java.io.IOException; import java.util.List; +/** + * Pause command + * @Usage - Pauses until user inputs a value + */ public class Pause { @Command(name = "pause", syntax = "pause [-h] [input]") public void execute(List options) { diff --git a/src/main/java/jterm/command/Ping.java b/src/main/java/jterm/command/Ping.java index 8dcd880..cb0d6e5 100644 --- a/src/main/java/jterm/command/Ping.java +++ b/src/main/java/jterm/command/Ping.java @@ -24,6 +24,10 @@ import java.net.Socket; import java.util.List; +/** + * Ping command + * @Usage - Validate a connection to a server & port + */ public class Ping { @Command(name = "ping", minOptions = 1, syntax = "ping [-h] [-p port] host") public static void ping(List options) { diff --git a/src/main/java/jterm/command/Ps.java b/src/main/java/jterm/command/Ps.java index 0e72110..f6eface 100644 --- a/src/main/java/jterm/command/Ps.java +++ b/src/main/java/jterm/command/Ps.java @@ -20,6 +20,10 @@ import java.util.List; +/** + * Ps Command + * @Usage - Print a list of running processes + */ public class Ps { private static final String PS_COMMAND; diff --git a/src/main/java/jterm/command/Time.java b/src/main/java/jterm/command/Time.java index ede2639..792596f 100644 --- a/src/main/java/jterm/command/Time.java +++ b/src/main/java/jterm/command/Time.java @@ -23,6 +23,10 @@ import java.util.Date; import java.util.List; +/** + * Time Command + * @Usage - prints current time to terminal + */ public class Time { private static final DateFormat DATE_FORMAT = new SimpleDateFormat("HH:mm:ss , z"); diff --git a/src/main/java/jterm/command/Window.java b/src/main/java/jterm/command/Window.java index 10bb7ce..0a12685 100644 --- a/src/main/java/jterm/command/Window.java +++ b/src/main/java/jterm/command/Window.java @@ -25,6 +25,10 @@ import java.util.ArrayList; import java.util.List; +/** + * Window command + * @Usage - creates a new window with certain characteristics + */ public class Window { public static int windowCount = 0; public static final ArrayList windows = new ArrayList<>(); diff --git a/src/main/java/jterm/util/FileAutocomplete.java b/src/main/java/jterm/util/FileAutocomplete.java index 11e324b..9f2889b 100644 --- a/src/main/java/jterm/util/FileAutocomplete.java +++ b/src/main/java/jterm/util/FileAutocomplete.java @@ -89,6 +89,9 @@ public static void setCommand(String command) { FileAutocomplete.currText = command.endsWith(" ") ? "" : commandArr[commandArr.length - 1]; } + /** + * Resets variables to default values + */ public static void resetVars() { files = null; fileNames = new TreeSet<>(); diff --git a/src/main/java/jterm/util/Util.java b/src/main/java/jterm/util/Util.java index ac3e434..b450155 100644 --- a/src/main/java/jterm/util/Util.java +++ b/src/main/java/jterm/util/Util.java @@ -37,14 +37,29 @@ public static String getRunTime(long interval) { return builder.toString(); } + /** + * Turn string to array by splitting at each space in string + * @param options + * @return ArrayList + */ public static ArrayList getAsArray(String options) { return new ArrayList<>(Arrays.asList(options.split(" "))); } + /** + * Turn List into long string + * @param options + * @return string + */ public static String getAsString(List options) { return options.toString().replaceAll("[,\\[\\]]", ""); } + /** + * Get filepath for a file + * @param fileName + * @return String filepath + */ public static String getFullPath(String fileName) { return !fileName.startsWith("/") ? String.format("%s/%s", JTerm.currentDirectory, fileName) : fileName; }