summaryrefslogtreecommitdiff
path: root/src/main/java/com/nemez/cmdmgr/component/ChainComponent.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com/nemez/cmdmgr/component/ChainComponent.java')
-rw-r--r--src/main/java/com/nemez/cmdmgr/component/ChainComponent.java50
1 files changed, 50 insertions, 0 deletions
diff --git a/src/main/java/com/nemez/cmdmgr/component/ChainComponent.java b/src/main/java/com/nemez/cmdmgr/component/ChainComponent.java
new file mode 100644
index 0000000..d837d16
--- /dev/null
+++ b/src/main/java/com/nemez/cmdmgr/component/ChainComponent.java
@@ -0,0 +1,50 @@
+package com.nemez.cmdmgr.component;
+
+import java.util.ArrayList;
+
+import com.nemez.cmdmgr.util.Type;
+
+public class ChainComponent implements ICommandComponent {
+
+ private ArrayList<ICommandComponent> components;
+ public String permission;
+ public String help;
+ public String execute;
+ public Type type;
+
+ public ChainComponent() {
+ components = new ArrayList<ICommandComponent>();
+ }
+
+ public void append(ICommandComponent comp) {
+ components.add(comp);
+ }
+
+ @Override
+ public Object get(String input) {
+ return components;
+ }
+
+ @Override
+ public boolean valid(String input) {
+ return true;
+ }
+
+ @Override
+ public String argName() {
+ return null;
+ }
+
+ @Override
+ public String getComponentInfo() {
+ return "chain[" + components.size() + "]";
+ }
+
+ public int capacity() {
+ return components.size();
+ }
+
+ public ArrayList<ICommandComponent> getComponents() {
+ return components;
+ }
+}