Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions src/main/java/jterm/Client.java
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@
import java.util.ArrayList;

public class Client implements Runnable {

private static BufferedReader input;

public void run() {
Expand All @@ -40,6 +41,10 @@ public void run() {
}
}

/**
* Creates new connection to server
* @param options
*/
public static void connect(ArrayList<String> options) {
String address = "0.0.0.0";
String portInput = "80";
Expand Down
30 changes: 30 additions & 0 deletions src/main/java/jterm/JTerm.java
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,10 @@ public static void main(String[] args) {
}
}

/**
* Exectues a command string
* @param options
*/
public static void executeCommand(String options) {
List<String> optionsArray = Util.getAsArray(options);

Expand All @@ -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<Method> methods = reflections.getMethodsAnnotatedWith(Command.class);
Expand Down Expand Up @@ -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")) {
Expand All @@ -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<String> commands
*/
public static Set<String> getCommands() {
return JTerm.COMMANDS.keySet();
}
Expand All @@ -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;
}
Expand Down
8 changes: 8 additions & 0 deletions src/main/java/jterm/Server.java
Original file line number Diff line number Diff line change
Expand Up @@ -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;
}
Expand All @@ -60,6 +64,10 @@ public void run() {
}
}

/**
* Start server
* @param options
*/
public static void start(ArrayList<String> options) {
String portInput = "80";
for (String option : options) {
Expand Down
4 changes: 4 additions & 0 deletions src/main/java/jterm/command/Clear.java
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,10 @@

import java.util.List;

/**
* Clear command
* @Usage - clears terminal
*/
public class Clear {


Expand Down
2 changes: 1 addition & 1 deletion src/main/java/jterm/command/CommandExecutor.java
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ public void execute(List<String> 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);
}
Expand Down
4 changes: 4 additions & 0 deletions src/main/java/jterm/command/Date.java
Original file line number Diff line number Diff line change
Expand Up @@ -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");

Expand Down
4 changes: 4 additions & 0 deletions src/main/java/jterm/command/Echo.java
Original file line number Diff line number Diff line change
Expand Up @@ -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")
Expand Down
4 changes: 4 additions & 0 deletions src/main/java/jterm/command/Exec.java
Original file line number Diff line number Diff line change
Expand Up @@ -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")
Expand Down
4 changes: 4 additions & 0 deletions src/main/java/jterm/command/Exit.java
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,10 @@

import java.util.List;

/**
* Exit Command
* @Usage - exits terminal
*/
public class Exit {

@Command(name = "exit", syntax = "exit [-h]")
Expand Down
4 changes: 4 additions & 0 deletions src/main/java/jterm/command/Files.java
Original file line number Diff line number Diff line change
Expand Up @@ -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")
Expand Down
4 changes: 4 additions & 0 deletions src/main/java/jterm/command/Help.java
Original file line number Diff line number Diff line change
Expand Up @@ -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<String> options) {
Expand Down
4 changes: 4 additions & 0 deletions src/main/java/jterm/command/Pause.java
Original file line number Diff line number Diff line change
Expand Up @@ -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<String> options) {
Expand Down
4 changes: 4 additions & 0 deletions src/main/java/jterm/command/Ping.java
Original file line number Diff line number Diff line change
Expand Up @@ -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<String> options) {
Expand Down
4 changes: 4 additions & 0 deletions src/main/java/jterm/command/Ps.java
Original file line number Diff line number Diff line change
Expand Up @@ -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;

Expand Down
4 changes: 4 additions & 0 deletions src/main/java/jterm/command/Time.java
Original file line number Diff line number Diff line change
Expand Up @@ -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");

Expand Down
4 changes: 4 additions & 0 deletions src/main/java/jterm/command/Window.java
Original file line number Diff line number Diff line change
Expand Up @@ -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<Window> windows = new ArrayList<>();
Expand Down
3 changes: 3 additions & 0 deletions src/main/java/jterm/util/FileAutocomplete.java
Original file line number Diff line number Diff line change
Expand Up @@ -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<>();
Expand Down
15 changes: 15 additions & 0 deletions src/main/java/jterm/util/Util.java
Original file line number Diff line number Diff line change
Expand Up @@ -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<String>
*/
public static ArrayList<String> getAsArray(String options) {
return new ArrayList<>(Arrays.asList(options.split(" ")));
}

/**
* Turn List into long string
* @param options
* @return string
*/
public static String getAsString(List<String> 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;
}
Expand Down