From 4f8f3e113fce59c4841f7ee87eaa03bb13edc80c Mon Sep 17 00:00:00 2001
From: Nelson Tavares de Sousa <stu103017@mail.uni-kiel.de>
Date: Thu, 30 Apr 2015 17:22:29 +0200
Subject: [PATCH] modified scope of pipes and added test for add method

---
 .../java/teetime/framework/pipe/CommittablePipe.java   |  2 +-
 .../pipe/ConcurrentBlockingIntraThreadPipe.java        |  2 +-
 .../framework/pipe/OrderedGrowableArrayPipe.java       |  2 +-
 .../teetime/framework/pipe/OrderedGrowablePipe.java    |  2 +-
 .../java/teetime/framework/pipe/RelayTestPipe.java     |  2 +-
 .../java/teetime/framework/pipe/SingleElementPipe.java |  2 +-
 .../teetime/framework/pipe/SpScIntraThreadPipe.java    |  2 +-
 src/main/java/teetime/framework/pipe/SpScPipe.java     |  2 +-
 .../java/teetime/framework/pipe/UnboundedSpScPipe.java |  2 +-
 .../teetime/framework/pipe/UnorderedGrowablePipe.java  |  2 +-
 src/test/java/teetime/framework/pipe/SpScPipeTest.java | 10 ++++++++++
 11 files changed, 20 insertions(+), 10 deletions(-)

diff --git a/src/main/java/teetime/framework/pipe/CommittablePipe.java b/src/main/java/teetime/framework/pipe/CommittablePipe.java
index 098e4254..09ba2627 100644
--- a/src/main/java/teetime/framework/pipe/CommittablePipe.java
+++ b/src/main/java/teetime/framework/pipe/CommittablePipe.java
@@ -20,7 +20,7 @@ import teetime.framework.InputPort;
 import teetime.framework.OutputPort;
 import teetime.util.list.CommittableResizableArrayQueue;
 
-public final class CommittablePipe extends AbstractIntraThreadPipe {
+final class CommittablePipe extends AbstractIntraThreadPipe {
 
 	private final CommittableResizableArrayQueue<Object> elements = new CommittableResizableArrayQueue<Object>(null, 4);
 
diff --git a/src/main/java/teetime/framework/pipe/ConcurrentBlockingIntraThreadPipe.java b/src/main/java/teetime/framework/pipe/ConcurrentBlockingIntraThreadPipe.java
index 3def592f..5df2677f 100644
--- a/src/main/java/teetime/framework/pipe/ConcurrentBlockingIntraThreadPipe.java
+++ b/src/main/java/teetime/framework/pipe/ConcurrentBlockingIntraThreadPipe.java
@@ -21,7 +21,7 @@ import teetime.framework.AbstractIntraThreadPipe;
 import teetime.framework.InputPort;
 import teetime.framework.OutputPort;
 
-public final class ConcurrentBlockingIntraThreadPipe<T> extends AbstractIntraThreadPipe {
+final class ConcurrentBlockingIntraThreadPipe<T> extends AbstractIntraThreadPipe {
 
 	private final ConcurrentLinkedQueue<Object> queue;
 
diff --git a/src/main/java/teetime/framework/pipe/OrderedGrowableArrayPipe.java b/src/main/java/teetime/framework/pipe/OrderedGrowableArrayPipe.java
index 9d672741..db2c09c2 100644
--- a/src/main/java/teetime/framework/pipe/OrderedGrowableArrayPipe.java
+++ b/src/main/java/teetime/framework/pipe/OrderedGrowableArrayPipe.java
@@ -20,7 +20,7 @@ import teetime.framework.InputPort;
 import teetime.framework.OutputPort;
 import teetime.util.concurrent.workstealing.CircularArray;
 
-public final class OrderedGrowableArrayPipe extends AbstractIntraThreadPipe {
+final class OrderedGrowableArrayPipe extends AbstractIntraThreadPipe {
 
 	private final CircularArray<Object> elements;
 	private int head;
diff --git a/src/main/java/teetime/framework/pipe/OrderedGrowablePipe.java b/src/main/java/teetime/framework/pipe/OrderedGrowablePipe.java
index 3930e58e..c51d67ec 100644
--- a/src/main/java/teetime/framework/pipe/OrderedGrowablePipe.java
+++ b/src/main/java/teetime/framework/pipe/OrderedGrowablePipe.java
@@ -21,7 +21,7 @@ import teetime.framework.AbstractIntraThreadPipe;
 import teetime.framework.InputPort;
 import teetime.framework.OutputPort;
 
-public class OrderedGrowablePipe extends AbstractIntraThreadPipe {
+class OrderedGrowablePipe extends AbstractIntraThreadPipe {
 
 	private final LinkedList<Object> elements;
 
diff --git a/src/main/java/teetime/framework/pipe/RelayTestPipe.java b/src/main/java/teetime/framework/pipe/RelayTestPipe.java
index 95e8ab49..85936250 100644
--- a/src/main/java/teetime/framework/pipe/RelayTestPipe.java
+++ b/src/main/java/teetime/framework/pipe/RelayTestPipe.java
@@ -18,7 +18,7 @@ package teetime.framework.pipe;
 import teetime.framework.AbstractInterThreadPipe;
 import teetime.util.ConstructorClosure;
 
-public final class RelayTestPipe<T> extends AbstractInterThreadPipe {
+final class RelayTestPipe<T> extends AbstractInterThreadPipe {
 
 	private int numInputObjects;
 	private final ConstructorClosure<T> inputObjectCreator;
diff --git a/src/main/java/teetime/framework/pipe/SingleElementPipe.java b/src/main/java/teetime/framework/pipe/SingleElementPipe.java
index 18c3423c..268ef03e 100644
--- a/src/main/java/teetime/framework/pipe/SingleElementPipe.java
+++ b/src/main/java/teetime/framework/pipe/SingleElementPipe.java
@@ -19,7 +19,7 @@ import teetime.framework.AbstractIntraThreadPipe;
 import teetime.framework.InputPort;
 import teetime.framework.OutputPort;
 
-public final class SingleElementPipe extends AbstractIntraThreadPipe {
+final class SingleElementPipe extends AbstractIntraThreadPipe {
 
 	private Object element;
 
diff --git a/src/main/java/teetime/framework/pipe/SpScIntraThreadPipe.java b/src/main/java/teetime/framework/pipe/SpScIntraThreadPipe.java
index 19f7e461..bae82ce7 100644
--- a/src/main/java/teetime/framework/pipe/SpScIntraThreadPipe.java
+++ b/src/main/java/teetime/framework/pipe/SpScIntraThreadPipe.java
@@ -31,7 +31,7 @@ import teetime.framework.OutputPort;
  *
  * @param <T>
  */
-public final class SpScIntraThreadPipe<T> extends AbstractIntraThreadPipe {
+final class SpScIntraThreadPipe<T> extends AbstractIntraThreadPipe {
 
 	private final Queue<Object> queue;
 
diff --git a/src/main/java/teetime/framework/pipe/SpScPipe.java b/src/main/java/teetime/framework/pipe/SpScPipe.java
index bf28520d..ab91207d 100644
--- a/src/main/java/teetime/framework/pipe/SpScPipe.java
+++ b/src/main/java/teetime/framework/pipe/SpScPipe.java
@@ -21,7 +21,7 @@ import teetime.framework.OutputPort;
 import teetime.framework.StageState;
 import teetime.util.concurrent.queue.ObservableSpScArrayQueue;
 
-public final class SpScPipe extends AbstractInterThreadPipe implements IMonitorablePipe {
+final class SpScPipe extends AbstractInterThreadPipe implements IMonitorablePipe {
 
 	// private static final Logger LOGGER = LoggerFactory.getLogger(SpScPipe.class);
 
diff --git a/src/main/java/teetime/framework/pipe/UnboundedSpScPipe.java b/src/main/java/teetime/framework/pipe/UnboundedSpScPipe.java
index 6f0525d7..c4e925fd 100644
--- a/src/main/java/teetime/framework/pipe/UnboundedSpScPipe.java
+++ b/src/main/java/teetime/framework/pipe/UnboundedSpScPipe.java
@@ -26,7 +26,7 @@ import teetime.framework.AbstractInterThreadPipe;
 import teetime.framework.InputPort;
 import teetime.framework.OutputPort;
 
-public final class UnboundedSpScPipe extends AbstractInterThreadPipe {
+final class UnboundedSpScPipe extends AbstractInterThreadPipe {
 
 	private final Queue<Object> queue;
 
diff --git a/src/main/java/teetime/framework/pipe/UnorderedGrowablePipe.java b/src/main/java/teetime/framework/pipe/UnorderedGrowablePipe.java
index 5331b3fa..9baa545f 100644
--- a/src/main/java/teetime/framework/pipe/UnorderedGrowablePipe.java
+++ b/src/main/java/teetime/framework/pipe/UnorderedGrowablePipe.java
@@ -19,7 +19,7 @@ import teetime.framework.AbstractIntraThreadPipe;
 import teetime.framework.InputPort;
 import teetime.framework.OutputPort;
 
-public final class UnorderedGrowablePipe extends AbstractIntraThreadPipe {
+final class UnorderedGrowablePipe extends AbstractIntraThreadPipe {
 
 	private Object[] elements;
 	// private final ArrayWrapper2<T> elements = new ArrayWrapper2<T>(2);
diff --git a/src/test/java/teetime/framework/pipe/SpScPipeTest.java b/src/test/java/teetime/framework/pipe/SpScPipeTest.java
index cfb3e4f8..dee9b9b3 100644
--- a/src/test/java/teetime/framework/pipe/SpScPipeTest.java
+++ b/src/test/java/teetime/framework/pipe/SpScPipeTest.java
@@ -15,9 +15,13 @@
  */
 package teetime.framework.pipe;
 
+import static org.junit.Assert.assertFalse;
+
 import java.util.ArrayList;
 import java.util.List;
 
+import org.junit.Test;
+
 import teetime.framework.AbstractInterThreadPipe;
 import teetime.framework.InputPort;
 import teetime.framework.OutputPort;
@@ -61,4 +65,10 @@ public class SpScPipeTest {
 		}
 		// Assert.assertEquals(list, secondList);
 	}
+
+	@Test(expected = NullPointerException.class)
+	public void testAdd() throws Exception {
+		SpScPipe pipe = new SpScPipe(null, null, 4);
+		assertFalse(pipe.add(null));
+	}
 }
-- 
GitLab