summaryrefslogtreecommitdiff
path: root/src/main/java/com/nemez/cmdmgr/util/BranchStack.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com/nemez/cmdmgr/util/BranchStack.java')
-rw-r--r--src/main/java/com/nemez/cmdmgr/util/BranchStack.java33
1 files changed, 33 insertions, 0 deletions
diff --git a/src/main/java/com/nemez/cmdmgr/util/BranchStack.java b/src/main/java/com/nemez/cmdmgr/util/BranchStack.java
new file mode 100644
index 0000000..f89094f
--- /dev/null
+++ b/src/main/java/com/nemez/cmdmgr/util/BranchStack.java
@@ -0,0 +1,33 @@
+package com.nemez.cmdmgr.util;
+
+import java.util.ArrayList;
+
+import com.nemez.cmdmgr.component.ChainComponent;
+
+public class BranchStack {
+
+ private ArrayList<ChainComponent> components;
+
+ public BranchStack() {
+ components = new ArrayList<ChainComponent>();
+ }
+
+ public void push(ChainComponent comp) {
+ components.add(comp);
+ }
+
+ public ChainComponent pop() {
+ if (components.size() > 0) {
+ ChainComponent toPop = components.remove(components.size() - 1);
+ return toPop;
+ }
+ return null;
+ }
+
+ public ChainComponent get() {
+ if (components.size() > 0) {
+ return components.get(components.size() - 1);
+ }
+ return null;
+ }
+}