summaryrefslogtreecommitdiff
path: root/src/main/java/com/nemez/cmdmgr/util/ExecutableDefinition.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com/nemez/cmdmgr/util/ExecutableDefinition.java')
-rw-r--r--src/main/java/com/nemez/cmdmgr/util/ExecutableDefinition.java72
1 files changed, 37 insertions, 35 deletions
diff --git a/src/main/java/com/nemez/cmdmgr/util/ExecutableDefinition.java b/src/main/java/com/nemez/cmdmgr/util/ExecutableDefinition.java
index 4e00e9d..53e659b 100644
--- a/src/main/java/com/nemez/cmdmgr/util/ExecutableDefinition.java
+++ b/src/main/java/com/nemez/cmdmgr/util/ExecutableDefinition.java
@@ -1,29 +1,29 @@
package com.nemez.cmdmgr.util;
-import java.lang.reflect.Method;
-import java.util.ArrayList;
-import java.util.logging.Level;
-
-import org.bukkit.ChatColor;
-import org.bukkit.command.CommandSender;
-import org.bukkit.plugin.java.JavaPlugin;
-
import com.nemez.cmdmgr.CommandManager;
import com.nemez.cmdmgr.component.ArgumentComponent;
import com.nemez.cmdmgr.component.ICommandComponent;
import com.nemez.cmdmgr.component.OptionalComponent;
import com.nemez.cmdmgr.component.StringComponent;
+import org.bukkit.ChatColor;
+import org.bukkit.command.CommandSender;
+import org.bukkit.plugin.java.JavaPlugin;
+
+import java.lang.reflect.Method;
+import java.util.ArrayList;
+import java.util.logging.Level;
public class ExecutableDefinition {
private ArrayList<ICommandComponent> components;
- private String permission;
- private Method target;
- private Object methodContainer;
- private Type type;
- private ArrayList<Integer> paramLinks;
-
- public ExecutableDefinition(ArrayList<ICommandComponent> cmd, ArrayList<Integer> paramLinks, String perm, Method method, Object methodContainer, Type type) {
+ private String permission;
+ private Method target;
+ private Object methodContainer;
+ private Type type;
+ private ArrayList<Integer> paramLinks;
+
+ public ExecutableDefinition(ArrayList<ICommandComponent> cmd, ArrayList<Integer> paramLinks, String perm, Method method, Object methodContainer,
+ Type type) {
this.components = cmd;
this.permission = perm;
this.target = method;
@@ -31,7 +31,7 @@ public class ExecutableDefinition {
this.type = type;
this.paramLinks = paramLinks;
}
-
+
public boolean valid(int index, String arg) {
if (index < 0) {
return false;
@@ -41,10 +41,10 @@ public class ExecutableDefinition {
StringComponent strComp = (StringComponent) components.get(components.size() - 1);
if (strComp.infinite) {
return strComp.valid(arg);
- }else{
+ } else {
return false;
}
- }else{
+ } else {
return false;
}
}
@@ -60,16 +60,16 @@ public class ExecutableDefinition {
StringComponent strComp = (StringComponent) components.get(components.size() - 1);
if (strComp.infinite) {
return strComp.get(arg);
- }else{
+ } else {
return null;
}
- }else{
+ } else {
return null;
}
}
return components.get(index).get(arg);
}
-
+
public boolean isArgument(int index) {
if (index < 0) {
return false;
@@ -79,35 +79,35 @@ public class ExecutableDefinition {
StringComponent strComp = (StringComponent) components.get(components.size() - 1);
if (strComp.infinite) {
return true;
- }else{
+ } else {
return false;
}
- }else{
+ } else {
return false;
}
}
return components.get(index) instanceof ArgumentComponent;
}
-
+
public boolean isOptional(int index) {
if (index < 0 || index >= components.size()) {
return false;
}
return components.get(index) instanceof OptionalComponent;
}
-
+
public boolean isHelp() {
return target == null && components.get(0).valid("help") && components.get(1).getComponentInfo().equals("<page:i32>");
}
-
+
public String getPermission() {
return permission;
}
-
+
public Type getExecType() {
return type;
}
-
+
public int getLength(int argSize) {
if (components.size() == 0) {
return 0;
@@ -122,7 +122,7 @@ public class ExecutableDefinition {
}
return components.size();
}
-
+
public int getNumOfArgs() {
int counter = 0;
for (ICommandComponent c : components) {
@@ -132,7 +132,7 @@ public class ExecutableDefinition {
}
return counter;
}
-
+
public int getLink(int i) {
if (i < 0) {
return i;
@@ -142,16 +142,16 @@ public class ExecutableDefinition {
StringComponent strComp = (StringComponent) components.get(components.size() - 1);
if (strComp.infinite) {
return paramLinks.get(paramLinks.size() - 1);
- }else{
+ } else {
return i;
}
- }else{
+ } else {
return i;
}
}
return paramLinks.get(i);
}
-
+
public boolean invoke(Object[] args, CommandSender sender, JavaPlugin plugin) {
if (target == null) {
return false;
@@ -161,11 +161,13 @@ public class ExecutableDefinition {
if (target.getReturnType() == void.class) {
target.invoke(methodContainer, args);
return true;
- }else if (target.getReturnType() == boolean.class) {
+ } else if (target.getReturnType() == boolean.class) {
return (boolean) target.invoke(methodContainer, args);
}
} catch (Exception e) {
- sender.sendMessage(ChatColor.translateAlternateColorCodes('&', CommandManager.helpInvalidPageFormatting + "An internal error occured, please contact the server administrator and/or report a bug."));
+ sender.sendMessage(ChatColor.translateAlternateColorCodes('&',
+ CommandManager.helpInvalidPageFormatting + "An internal error occured, please contact the server administrator and/or report a bug."
+ ));
plugin.getLogger().log(Level.WARNING, "Runtime Error: invalid method");
e.printStackTrace();
return true;