123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596 |
- package com.uqac.rthoni.java_rmi.common;
-
- import java.io.Serializable;
- import java.util.Arrays;
- import java.util.Vector;
- import java.util.stream.Collectors;
-
- /**
- * Created by robin on 9/15/16.
- */
- public class Command implements Serializable {
- private String _commandName = "";
- private Vector<String> _arguments = new Vector<>();
- private transient String _result;
-
- public Command(String commandName)
- {
- setCommandName(commandName);
- }
-
- public String toString()
- {
- StringBuilder stringBuilder = new StringBuilder();
- stringBuilder.append(_commandName);
- if (!_arguments.isEmpty()) {
- stringBuilder.append("#");
- stringBuilder.append(_arguments.stream().collect(Collectors.joining("#")));
- }
- return stringBuilder.toString();
- }
-
- public static Command fromString(String str)
- {
- if (str == null || str.isEmpty()) {
- return null;
- }
- String[] parts = str.split("#");
- Command command = new Command(parts[0]);
- for (int i = 1; i < parts.length; ++i) {
- command.addArgument(parts[i]);
- }
- return command;
- }
-
- public void setCommandName(String commandName)
- {
- if (commandName == null || commandName.isEmpty()) {
- commandName = "Unknown";
- }
- _commandName = commandName;
- }
-
- public String getCommandName()
- {
- return _commandName;
- }
-
- public void addArgument(String argument)
- {
- if (argument == null) {
- argument = "";
- }
- _arguments.add(argument);
- }
-
- public int getArgumentCount()
- {
- return _arguments.size();
- }
-
- public String getArgument(int i, boolean optional)
- {
- if (i >= _arguments.size() && optional) {
- return "";
- }
- return _arguments.get(i);
- }
-
- public Vector<String> getArgumentAsList(int i, boolean optional)
- {
- if (i >= _arguments.size() && optional) {
- return new Vector<>();
- }
- return new Vector<>(Arrays.asList(_arguments.get(i).split(",")));
- }
-
- public void setResult(String result)
- {
- _result = result;
- }
-
- public String getResult()
- {
- return _result;
- }
- }
|