diff --git a/.gitignore b/.gitignore new file mode 100644 index 00000000..ed6b2d80 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +.idea/ +target/ +bin/ diff --git a/src/main/java/edu/kis/vh/nursery/FIFORhymer.java b/src/main/java/edu/kis/vh/nursery/FIFORhymer.java index 28591ada..3f735189 100644 --- a/src/main/java/edu/kis/vh/nursery/FIFORhymer.java +++ b/src/main/java/edu/kis/vh/nursery/FIFORhymer.java @@ -1,21 +1,21 @@ package edu.kis.vh.nursery; -public class FIFORhymer extends defaultCountingOutRhymer { +public class FIFORhymer extends DefaultCountingOutRhymer { + + private final DefaultCountingOutRhymer temp = new DefaultCountingOutRhymer(); - public defaultCountingOutRhymer temp = new defaultCountingOutRhymer(); - @Override - public int countOut() { - while (!callCheck()) - - temp.countIn(super.countOut()); - + protected int countOut() { + while (!callCheck()) { + temp.countIn(super.countOut()); + } + int ret = temp.countOut(); - - while (!temp.callCheck()) - - countIn(temp.countOut()); - + + while (!temp.callCheck()) { + countIn(temp.countOut()); + } + return ret; } } diff --git a/src/main/java/edu/kis/vh/nursery/HanoiRhymer.java b/src/main/java/edu/kis/vh/nursery/HanoiRhymer.java index 755b2d58..a4ff9bc8 100644 --- a/src/main/java/edu/kis/vh/nursery/HanoiRhymer.java +++ b/src/main/java/edu/kis/vh/nursery/HanoiRhymer.java @@ -1,17 +1,18 @@ package edu.kis.vh.nursery; -public class HanoiRhymer extends defaultCountingOutRhymer { +public class HanoiRhymer extends DefaultCountingOutRhymer { -int totalRejected = 0; + int totalRejected = 0; - public int reportRejected() { + protected int reportRejected() { return totalRejected; } - public void countIn(int in) { - if (!callCheck() && in > peekaboo()) + @Override + protected void countIn(int in) { + if (!callCheck() && in > peekaboo()) totalRejected++; - else - super.countIn(in); - } + else + super.countIn(in); + } } diff --git a/src/main/java/edu/kis/vh/nursery/defaultCountingOutRhymer.java b/src/main/java/edu/kis/vh/nursery/defaultCountingOutRhymer.java index 199abf6d..6434f9af 100644 --- a/src/main/java/edu/kis/vh/nursery/defaultCountingOutRhymer.java +++ b/src/main/java/edu/kis/vh/nursery/defaultCountingOutRhymer.java @@ -1,33 +1,41 @@ package edu.kis.vh.nursery; -public class defaultCountingOutRhymer { +public class DefaultCountingOutRhymer { - private int[] NUMBERS = new int[12]; + private static final int minusOne = -1; + private static final int eleven = 11; + private static final int numLength = 12; + private int[] NUMBERS = new int[numLength]; - public int total = -1; + public int getTotal() { + return total; + } + + + public int total = minusOne; - public void countIn(int in) { + protected void countIn(int in) { if (!isFull()) NUMBERS[++total] = in; } - public boolean callCheck() { - return total == -1; + protected boolean callCheck() { + return total == minusOne; } public boolean isFull() { - return total == 11; + return total == eleven; } protected int peekaboo() { if (callCheck()) - return -1; + return minusOne; return NUMBERS[total]; } - public int countOut() { + protected int countOut() { if (callCheck()) - return -1; + return minusOne; return NUMBERS[total--]; } diff --git a/src/main/java/edu/kis/vh/nursery/factory/DefaultRhymersFactory.java b/src/main/java/edu/kis/vh/nursery/factory/DefaultRhymersFactory.java index 60ba2a16..075cd52c 100644 --- a/src/main/java/edu/kis/vh/nursery/factory/DefaultRhymersFactory.java +++ b/src/main/java/edu/kis/vh/nursery/factory/DefaultRhymersFactory.java @@ -1,6 +1,6 @@ package edu.kis.vh.nursery.factory; -import edu.kis.vh.nursery.defaultCountingOutRhymer; +import edu.kis.vh.nursery.DefaultCountingOutRhymer; import edu.kis.vh.nursery.FIFORhymer; import edu.kis.vh.nursery.HanoiRhymer; import edu.kis.vh.nursery.factory.Rhymersfactory; @@ -8,22 +8,22 @@ public class DefaultRhymersFactory implements Rhymersfactory { @Override - public defaultCountingOutRhymer GetStandardRhymer() { - return new defaultCountingOutRhymer(); + public DefaultCountingOutRhymer getStandardRhymer() { + return new DefaultCountingOutRhymer(); } @Override - public defaultCountingOutRhymer GetFalseRhymer() { - return new defaultCountingOutRhymer(); + public DefaultCountingOutRhymer getFalseRhymer() { + return new DefaultCountingOutRhymer(); } @Override - public defaultCountingOutRhymer GetFIFORhymer() { + public DefaultCountingOutRhymer getFIFORhymer() { return new FIFORhymer(); } @Override - public defaultCountingOutRhymer GetHanoiRhymer() { + public DefaultCountingOutRhymer getHanoiRhymer() { return new HanoiRhymer(); } diff --git a/src/main/java/edu/kis/vh/nursery/factory/Rhymersfactory.java b/src/main/java/edu/kis/vh/nursery/factory/Rhymersfactory.java index 033755d0..eedb9ba1 100644 --- a/src/main/java/edu/kis/vh/nursery/factory/Rhymersfactory.java +++ b/src/main/java/edu/kis/vh/nursery/factory/Rhymersfactory.java @@ -1,15 +1,15 @@ package edu.kis.vh.nursery.factory; -import edu.kis.vh.nursery.defaultCountingOutRhymer; +import edu.kis.vh.nursery.DefaultCountingOutRhymer; public interface Rhymersfactory { - public defaultCountingOutRhymer GetStandardRhymer(); + public DefaultCountingOutRhymer getStandardRhymer(); - public defaultCountingOutRhymer GetFalseRhymer(); + public DefaultCountingOutRhymer getFalseRhymer(); - public defaultCountingOutRhymer GetFIFORhymer(); + public DefaultCountingOutRhymer getFIFORhymer(); - public defaultCountingOutRhymer GetHanoiRhymer(); + public DefaultCountingOutRhymer getHanoiRhymer(); } diff --git a/src/main/java/edu/kis/vh/nursery/list/IntLinkedList.java b/src/main/java/edu/kis/vh/nursery/list/IntLinkedList.java index 07efc0a2..c4d5f165 100644 --- a/src/main/java/edu/kis/vh/nursery/list/IntLinkedList.java +++ b/src/main/java/edu/kis/vh/nursery/list/IntLinkedList.java @@ -2,16 +2,16 @@ public class IntLinkedList { - Node last; - int i; + private Node last; + private int i; public void push(int i) { if (last == null) last = new Node(i); else { - last.next = new Node(i); - last.next.prev = last; - last = last.next; + last.setNext(new Node(i)); + last.getNext().setPrev(last); + last = last.getNext(); } } @@ -26,14 +26,14 @@ public boolean isFull() { public int top() { if (isEmpty()) return -1; - return last.value; + return last.getValue(); } public int pop() { if (isEmpty()) return -1; - int ret = last.value; - last = last.prev; + int ret = last.getValue(); + last = last.getPrev(); return ret; } diff --git a/src/main/java/edu/kis/vh/nursery/list/Node.java b/src/main/java/edu/kis/vh/nursery/list/Node.java index 0a2cd75e..404c7d09 100644 --- a/src/main/java/edu/kis/vh/nursery/list/Node.java +++ b/src/main/java/edu/kis/vh/nursery/list/Node.java @@ -2,11 +2,36 @@ public class Node { - public int value; - public Node prev, next; + + + private int value; + private Node prev, next; public Node(int i) { value = i; } - + public int getValue() { + return value; + } + + public Node getPrev() { + return prev; + } + + public Node getNext() { + return next; + } + + public void setValue(int value) { + this.value = value; + } + + public void setPrev(Node prev) { + this.prev = prev; + } + + public void setNext(Node next) { + this.next = next; + } } +