diff --git a/.gitignore.txt b/.gitignore.txt
new file mode 100644
index 00000000..62c89355
--- /dev/null
+++ b/.gitignore.txt
@@ -0,0 +1 @@
+.idea/
\ No newline at end of file
diff --git a/.idea/.gitignore b/.idea/.gitignore
new file mode 100644
index 00000000..13566b81
--- /dev/null
+++ b/.idea/.gitignore
@@ -0,0 +1,8 @@
+# Default ignored files
+/shelf/
+/workspace.xml
+# Editor-based HTTP Client requests
+/httpRequests/
+# Datasource local storage ignored files
+/dataSources/
+/dataSources.local.xml
diff --git a/.idea/compiler.xml b/.idea/compiler.xml
new file mode 100644
index 00000000..7b9e5be3
--- /dev/null
+++ b/.idea/compiler.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/jarRepositories.xml b/.idea/jarRepositories.xml
new file mode 100644
index 00000000..712ab9d9
--- /dev/null
+++ b/.idea/jarRepositories.xml
@@ -0,0 +1,20 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
new file mode 100644
index 00000000..42e3abed
--- /dev/null
+++ b/.idea/misc.xml
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/uiDesigner.xml b/.idea/uiDesigner.xml
new file mode 100644
index 00000000..2b63946d
--- /dev/null
+++ b/.idea/uiDesigner.xml
@@ -0,0 +1,124 @@
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+ -
+
+
+
+
+
+ -
+
+
+
+
+
+ -
+
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
new file mode 100644
index 00000000..35eb1ddf
--- /dev/null
+++ b/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/main/java/edu/kis/vh/nursery/DefaultRhymer.java b/src/main/java/edu/kis/vh/nursery/DefaultRhymer.java
new file mode 100644
index 00000000..08896d9c
--- /dev/null
+++ b/src/main/java/edu/kis/vh/nursery/DefaultRhymer.java
@@ -0,0 +1,36 @@
+package edu.kis.vh.nursery;
+
+public class DefaultRhymer {
+
+ public static final int DEFAULT_INDEX = -1;
+ public static final int NUMBERS_CAPACITY = 12;
+ private final int[] NUMBERS = new int[NUMBERS_CAPACITY];
+
+ public int DEFAULT_VALUE = -1;
+
+ public void countIn(int in) {
+ if (!isFull())
+ NUMBERS[++DEFAULT_VALUE] = in;
+ }
+
+ public boolean callCheck() {
+ return DEFAULT_VALUE == DEFAULT_INDEX;
+ }
+
+ public boolean isFull() {
+ return DEFAULT_VALUE == NUMBERS_CAPACITY - 1;
+ }
+
+ protected int peekaboo() {
+ if (callCheck())
+ return DEFAULT_INDEX;
+ return NUMBERS[DEFAULT_VALUE];
+ }
+
+ public int countOut() {
+ if (callCheck())
+ return DEFAULT_INDEX;
+ return NUMBERS[DEFAULT_VALUE--];
+ }
+
+}
diff --git a/src/main/java/edu/kis/vh/nursery/FIFORhymer.java b/src/main/java/edu/kis/vh/nursery/FIFORhymer.java
index 28591ada..042cd1d5 100644
--- a/src/main/java/edu/kis/vh/nursery/FIFORhymer.java
+++ b/src/main/java/edu/kis/vh/nursery/FIFORhymer.java
@@ -1,8 +1,8 @@
package edu.kis.vh.nursery;
-public class FIFORhymer extends defaultCountingOutRhymer {
+public class FIFORhymer extends DefaultRhymer {
- public defaultCountingOutRhymer temp = new defaultCountingOutRhymer();
+ public final DefaultRhymer temp = new DefaultRhymer();
@Override
public int countOut() {
diff --git a/src/main/java/edu/kis/vh/nursery/HanoiRhymer.java b/src/main/java/edu/kis/vh/nursery/HanoiRhymer.java
index 755b2d58..18071843 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 DefaultRhymer {
-int totalRejected = 0;
+ int totalRejected = 0;
- public int reportRejected() {
+ public int printRejectedReports() {
return totalRejected;
}
+ @Override
public void countIn(int in) {
- if (!callCheck() && in > peekaboo())
+ 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
deleted file mode 100644
index 199abf6d..00000000
--- a/src/main/java/edu/kis/vh/nursery/defaultCountingOutRhymer.java
+++ /dev/null
@@ -1,34 +0,0 @@
-package edu.kis.vh.nursery;
-
-public class defaultCountingOutRhymer {
-
- private int[] NUMBERS = new int[12];
-
- public int total = -1;
-
- public void countIn(int in) {
- if (!isFull())
- NUMBERS[++total] = in;
- }
-
- public boolean callCheck() {
- return total == -1;
- }
-
- public boolean isFull() {
- return total == 11;
- }
-
- protected int peekaboo() {
- if (callCheck())
- return -1;
- return NUMBERS[total];
- }
-
- public int countOut() {
- if (callCheck())
- return -1;
- 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..1db5c31d 100644
--- a/src/main/java/edu/kis/vh/nursery/factory/DefaultRhymersFactory.java
+++ b/src/main/java/edu/kis/vh/nursery/factory/DefaultRhymersFactory.java
@@ -1,29 +1,28 @@
package edu.kis.vh.nursery.factory;
-import edu.kis.vh.nursery.defaultCountingOutRhymer;
+import edu.kis.vh.nursery.DefaultRhymer;
import edu.kis.vh.nursery.FIFORhymer;
import edu.kis.vh.nursery.HanoiRhymer;
-import edu.kis.vh.nursery.factory.Rhymersfactory;
public class DefaultRhymersFactory implements Rhymersfactory {
@Override
- public defaultCountingOutRhymer GetStandardRhymer() {
- return new defaultCountingOutRhymer();
+ public DefaultRhymer GetStandardRhymer() {
+ return new DefaultRhymer();
}
@Override
- public defaultCountingOutRhymer GetFalseRhymer() {
- return new defaultCountingOutRhymer();
+ public DefaultRhymer GetFalseRhymer() {
+ return new DefaultRhymer();
}
@Override
- public defaultCountingOutRhymer GetFIFORhymer() {
+ public DefaultRhymer GetFIFORhymer() {
return new FIFORhymer();
}
@Override
- public defaultCountingOutRhymer GetHanoiRhymer() {
+ public DefaultRhymer 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..cd7d29dd 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.DefaultRhymer;
public interface Rhymersfactory {
- public defaultCountingOutRhymer GetStandardRhymer();
+ public DefaultRhymer GetStandardRhymer();
- public defaultCountingOutRhymer GetFalseRhymer();
+ public DefaultRhymer GetFalseRhymer();
- public defaultCountingOutRhymer GetFIFORhymer();
+ public DefaultRhymer GetFIFORhymer();
- public defaultCountingOutRhymer GetHanoiRhymer();
+ public DefaultRhymer 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..11a940a3 100644
--- a/src/main/java/edu/kis/vh/nursery/list/IntLinkedList.java
+++ b/src/main/java/edu/kis/vh/nursery/list/IntLinkedList.java
@@ -2,6 +2,7 @@
public class IntLinkedList {
+ public static final int FAILURE_VALUE = -1;
Node last;
int i;
@@ -25,13 +26,13 @@ public boolean isFull() {
public int top() {
if (isEmpty())
- return -1;
+ return FAILURE_VALUE;
return last.value;
}
public int pop() {
if (isEmpty())
- return -1;
+ return FAILURE_VALUE;
int ret = last.value;
last = last.prev;
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..abd6bc5c 100644
--- a/src/main/java/edu/kis/vh/nursery/list/Node.java
+++ b/src/main/java/edu/kis/vh/nursery/list/Node.java
@@ -2,7 +2,7 @@
public class Node {
- public int value;
+ public final int value;
public Node prev, next;
public Node(int i) {
diff --git a/src/test/java/edu/kis/vh/nursery/RhymersDemo.java b/src/test/java/edu/kis/vh/nursery/RhymersDemo.java
index 05aba9fa..574a742a 100644
--- a/src/test/java/edu/kis/vh/nursery/RhymersDemo.java
+++ b/src/test/java/edu/kis/vh/nursery/RhymersDemo.java
@@ -1,7 +1,5 @@
package edu.kis.vh.nursery;
-import edu.kis.vh.nursery.defaultCountingOutRhymer;
-import edu.kis.vh.nursery.HanoiRhymer;
import edu.kis.vh.nursery.factory.DefaultRhymersFactory;
import edu.kis.vh.nursery.factory.Rhymersfactory;
@@ -10,7 +8,7 @@ class RhymersDemo {
public static void main(String[] args) {
Rhymersfactory factory = new DefaultRhymersFactory();
- defaultCountingOutRhymer[] rhymers = { factory.GetStandardRhymer(), factory.GetFalseRhymer(),
+ DefaultRhymer[] rhymers = { factory.GetStandardRhymer(), factory.GetFalseRhymer(),
factory.GetFIFORhymer(), factory.GetHanoiRhymer()};
for (int i = 1; i < 15; i++)
@@ -28,7 +26,7 @@ public static void main(String[] args) {
}
System.out.println("total rejected is "
- + ((HanoiRhymer) rhymers[3]).reportRejected());
+ + ((HanoiRhymer) rhymers[3]).printRejectedReports());
}
diff --git a/src/test/java/edu/kis/vh/nursery/RhymersJUnitTest.java b/src/test/java/edu/kis/vh/nursery/RhymersJUnitTest.java
index 144906eb..75a618ff 100644
--- a/src/test/java/edu/kis/vh/nursery/RhymersJUnitTest.java
+++ b/src/test/java/edu/kis/vh/nursery/RhymersJUnitTest.java
@@ -7,7 +7,7 @@ public class RhymersJUnitTest {
@Test
public void testCountIn() {
- defaultCountingOutRhymer rhymer = new defaultCountingOutRhymer();
+ DefaultRhymer rhymer = new DefaultRhymer();
int testValue = 4;
rhymer.countIn(testValue);
@@ -17,7 +17,7 @@ public void testCountIn() {
@Test
public void testCallCheck() {
- defaultCountingOutRhymer rhymer = new defaultCountingOutRhymer();
+ DefaultRhymer rhymer = new DefaultRhymer();
boolean result = rhymer.callCheck();
Assert.assertEquals(true, result);
@@ -29,7 +29,7 @@ public void testCallCheck() {
@Test
public void testIsFull() {
- defaultCountingOutRhymer rhymer = new defaultCountingOutRhymer();
+ DefaultRhymer rhymer = new DefaultRhymer();
final int STACK_CAPACITY = 12;
for (int i = 0; i < STACK_CAPACITY; i++) {
boolean result = rhymer.isFull();
@@ -43,7 +43,7 @@ public void testIsFull() {
@Test
public void testPeekaboo() {
- defaultCountingOutRhymer rhymer = new defaultCountingOutRhymer();
+ DefaultRhymer rhymer = new DefaultRhymer();
final int EMPTY_STACK_VALUE = -1;
int result = rhymer.peekaboo();
@@ -60,7 +60,7 @@ public void testPeekaboo() {
@Test
public void testCountOut() {
- defaultCountingOutRhymer rhymer = new defaultCountingOutRhymer();
+ DefaultRhymer rhymer = new DefaultRhymer();
final int EMPTY_STACK_VALUE = -1;
int result = rhymer.countOut();