You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ode.apache.org by ha...@apache.org on 2014/01/16 19:00:45 UTC

[07/10] git commit: Refactor/rename JacobObject to a more appropriate Process, as it maps semantically to a Pi process

Refactor/rename JacobObject to a more appropriate Process, as it maps semantically to a Pi process


Project: http://git-wip-us.apache.org/repos/asf/ode-jacob/repo
Commit: http://git-wip-us.apache.org/repos/asf/ode-jacob/commit/57a06e2d
Tree: http://git-wip-us.apache.org/repos/asf/ode-jacob/tree/57a06e2d
Diff: http://git-wip-us.apache.org/repos/asf/ode-jacob/diff/57a06e2d

Branch: refs/heads/master
Commit: 57a06e2d81ebca530fb0f8634006246290135eb3
Parents: 96d08fb
Author: Hadrian Zbarcea <hz...@gmail.com>
Authored: Mon Jan 13 14:58:43 2014 -0500
Committer: Hadrian Zbarcea <hz...@gmail.com>
Committed: Mon Jan 13 14:58:43 2014 -0500

----------------------------------------------------------------------
 .../java/org/apache/ode/jacob/JacobObject.java  | 34 --------------------
 src/main/java/org/apache/ode/jacob/Process.java | 34 ++++++++++++++++++++
 .../apache/ode/jacob/examples/cell/CELL_.java   |  7 ++--
 .../ode/jacob/examples/cell/JacobCellTest.java  | 11 ++++---
 .../ode/jacob/examples/eratosthenes/Sieve.java  | 17 ++++++----
 .../jacob/examples/helloworld/HelloWorld.java   | 33 ++++++++++---------
 .../ode/jacob/examples/sequence/Sequence.java   | 10 ++++--
 .../ode/jacob/examples/synch/SynchPrinter.java  | 14 +++++---
 8 files changed, 88 insertions(+), 72 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ode-jacob/blob/57a06e2d/src/main/java/org/apache/ode/jacob/JacobObject.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/ode/jacob/JacobObject.java b/src/main/java/org/apache/ode/jacob/JacobObject.java
deleted file mode 100644
index 5dab505..0000000
--- a/src/main/java/org/apache/ode/jacob/JacobObject.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.ode.jacob;
-
-import java.io.Serializable;
-
-/**
- * Base class for constructs which rely on a Java method body to represent some
- * aspect of the process.
- */
-@SuppressWarnings("serial")
-public abstract class JacobObject implements Serializable {
-
-    public String toString() {
-        return "<JacobObject:" + getClass().getSimpleName() + ">";
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/ode-jacob/blob/57a06e2d/src/main/java/org/apache/ode/jacob/Process.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/ode/jacob/Process.java b/src/main/java/org/apache/ode/jacob/Process.java
new file mode 100644
index 0000000..ea00f49
--- /dev/null
+++ b/src/main/java/org/apache/ode/jacob/Process.java
@@ -0,0 +1,34 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.ode.jacob;
+
+import java.io.Serializable;
+
+/**
+ * Base class for constructs which rely on a Java method body to represent some
+ * aspect of the process.
+ */
+@SuppressWarnings("serial")
+public abstract class Process implements Runnable, Serializable {
+
+    public String toString() {
+        return "<Process:" + getClass().getSimpleName() + ">";
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/ode-jacob/blob/57a06e2d/src/test/java/org/apache/ode/jacob/examples/cell/CELL_.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/ode/jacob/examples/cell/CELL_.java b/src/test/java/org/apache/ode/jacob/examples/cell/CELL_.java
index 1370562..a30f2b1 100644
--- a/src/test/java/org/apache/ode/jacob/examples/cell/CELL_.java
+++ b/src/test/java/org/apache/ode/jacob/examples/cell/CELL_.java
@@ -18,7 +18,7 @@
  */
 package org.apache.ode.jacob.examples.cell;
 
-import org.apache.ode.jacob.JacobObject;
+import org.apache.ode.jacob.Process;
 import org.apache.ode.jacob.oo.ReceiveProcess;
 import org.apache.ode.jacob.oo.Val;
 
@@ -31,7 +31,7 @@ import static org.apache.ode.jacob.Jacob.*;
  * Cell(self, val) = self ? [ read(r) = { Cell(self, val) | r ! val(val) } & write(newVal) = { Cell(self, newVal) } ]
  * </code>
  */
-public class CELL_<T> extends JacobObject implements Runnable {
+public class CELL_<T> extends Process {
     private static final long serialVersionUID = 1550566086202728251L;
 
     private Cell _self;
@@ -43,7 +43,8 @@ public class CELL_<T> extends JacobObject implements Runnable {
         _val = val;
     }
 
-    public void run() {
+    @SuppressWarnings("serial")
+	public void run() {
         // INSTANTIATION{Cell(run,val)}
         // ==> run ? [ read(r)={...} & write(newVal)={...} ]
         object(new ReceiveProcess().setChannel(_self).setReceiver(new Cell() {

http://git-wip-us.apache.org/repos/asf/ode-jacob/blob/57a06e2d/src/test/java/org/apache/ode/jacob/examples/cell/JacobCellTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/ode/jacob/examples/cell/JacobCellTest.java b/src/test/java/org/apache/ode/jacob/examples/cell/JacobCellTest.java
index a6381bb..7027c3b 100644
--- a/src/test/java/org/apache/ode/jacob/examples/cell/JacobCellTest.java
+++ b/src/test/java/org/apache/ode/jacob/examples/cell/JacobCellTest.java
@@ -18,19 +18,22 @@
  */
 package org.apache.ode.jacob.examples.cell;
 
-import static org.apache.ode.jacob.oo.ProcessUtil.receive;
-import static org.apache.ode.jacob.Jacob.*;
 
 import java.io.ByteArrayOutputStream;
 import java.io.IOException;
 
 import junit.framework.TestCase;
 
-import org.apache.ode.jacob.JacobObject;
+import org.apache.ode.jacob.Process;
 import org.apache.ode.jacob.oo.Val;
 import org.apache.ode.jacob.vpu.ExecutionQueueImpl;
 import org.apache.ode.jacob.vpu.JacobVPU;
 
+import static org.apache.ode.jacob.Jacob.instance;
+import static org.apache.ode.jacob.Jacob.newChannel;
+import static org.apache.ode.jacob.Jacob.object;
+import static org.apache.ode.jacob.oo.ProcessUtil.receive;
+
 
 public class JacobCellTest extends TestCase {
   private static Object _val;
@@ -59,7 +62,7 @@ public class JacobCellTest extends TestCase {
     }
 
     @SuppressWarnings("serial")
-    static class CellTest1 extends JacobObject implements Runnable {
+    static class CellTest1 extends Process {
         public void run() {
             Cell cell = newChannel(Cell.class, "cell");
             Val ret = newChannel(Val.class, "val");

http://git-wip-us.apache.org/repos/asf/ode-jacob/blob/57a06e2d/src/test/java/org/apache/ode/jacob/examples/eratosthenes/Sieve.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/ode/jacob/examples/eratosthenes/Sieve.java b/src/test/java/org/apache/ode/jacob/examples/eratosthenes/Sieve.java
index 034b399..d189814 100644
--- a/src/test/java/org/apache/ode/jacob/examples/eratosthenes/Sieve.java
+++ b/src/test/java/org/apache/ode/jacob/examples/eratosthenes/Sieve.java
@@ -18,14 +18,17 @@
  */
 package org.apache.ode.jacob.examples.eratosthenes;
 
-import static org.apache.ode.jacob.Jacob.*;
 
-import org.apache.ode.jacob.JacobObject;
+import org.apache.ode.jacob.Process;
 import org.apache.ode.jacob.oo.ReceiveProcess;
 import org.apache.ode.jacob.oo.Synch;
 import org.apache.ode.jacob.vpu.ExecutionQueueImpl;
 import org.apache.ode.jacob.vpu.JacobVPU;
 
+import static org.apache.ode.jacob.Jacob.instance;
+import static org.apache.ode.jacob.Jacob.newChannel;
+import static org.apache.ode.jacob.Jacob.object;
+
 /**
  * Sieve of Eratosthenes prime number generator.
  * This class represents the following process term:
@@ -38,7 +41,7 @@ import org.apache.ode.jacob.vpu.JacobVPU;
  *
  * @author Maciej Szefler <a href="mailto:mbs@fivesight.com">mbs</a>
  */
-public class Sieve extends JacobObject implements Runnable {
+public class Sieve extends Process {
   private static final long serialVersionUID = -1303509567096202776L;
 
   private static int _cnt = 0;
@@ -60,7 +63,7 @@ public class Sieve extends JacobObject implements Runnable {
    *  Counter(out, n) := out.val(n) | Counter(out, n+1)
    * </em></pre>
    */
-  private static class Counter extends JacobObject implements Runnable {
+  private static class Counter extends Process {
     private static final long serialVersionUID = 4739323750438991003L;
 
     private NaturalNumberStream _out;
@@ -92,7 +95,7 @@ public class Sieve extends JacobObject implements Runnable {
    *
    *
    */
-  private static final class Head extends JacobObject implements Runnable {
+  private static final class Head extends Process {
     private static final long serialVersionUID = 1791641314141082728L;
 
     NaturalNumberStream _in;
@@ -121,7 +124,7 @@ public class Sieve extends JacobObject implements Runnable {
     }
   }
 
-  private static final class Print extends JacobObject implements Runnable {
+  private static final class Print extends Process {
     private static final long serialVersionUID = -3134193737519487672L;
 
     private NaturalNumberStream _in;
@@ -148,7 +151,7 @@ public class Sieve extends JacobObject implements Runnable {
    *     ! in ? [val(n)={ if(n mod prime <> 0) out.val(n) }
    * </em></prime>
    */
-  private static class PrimeFilter extends JacobObject implements Runnable {
+  private static class PrimeFilter extends Process {
     private static final long serialVersionUID = 1569523200422202448L;
 
     private int _prime;

http://git-wip-us.apache.org/repos/asf/ode-jacob/blob/57a06e2d/src/test/java/org/apache/ode/jacob/examples/helloworld/HelloWorld.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/ode/jacob/examples/helloworld/HelloWorld.java b/src/test/java/org/apache/ode/jacob/examples/helloworld/HelloWorld.java
index 2253699..448f804 100644
--- a/src/test/java/org/apache/ode/jacob/examples/helloworld/HelloWorld.java
+++ b/src/test/java/org/apache/ode/jacob/examples/helloworld/HelloWorld.java
@@ -18,13 +18,6 @@
  */
 package org.apache.ode.jacob.examples.helloworld;
 
-import static org.apache.ode.jacob.Jacob.instance;
-import static org.apache.ode.jacob.Jacob.newChannel;
-import static org.apache.ode.jacob.Jacob.newCommChannel;
-import static org.apache.ode.jacob.Jacob.object;
-import static org.apache.ode.jacob.Jacob.sendMessage;
-import static org.apache.ode.jacob.Jacob.subscribe;
-
 import java.util.Collections;
 import java.util.List;
 
@@ -32,9 +25,9 @@ import org.apache.log4j.Level;
 import org.apache.log4j.LogManager;
 import org.apache.log4j.Logger;
 import org.apache.ode.jacob.ChannelRef;
-import org.apache.ode.jacob.JacobObject;
 import org.apache.ode.jacob.Message;
 import org.apache.ode.jacob.MessageListener;
+import org.apache.ode.jacob.Process;
 import org.apache.ode.jacob.examples.sequence.Sequence;
 import org.apache.ode.jacob.oo.Channel;
 import org.apache.ode.jacob.oo.ReceiveProcess;
@@ -50,6 +43,14 @@ import com.fasterxml.jackson.databind.ObjectMapper;
 import com.fasterxml.jackson.databind.SerializationFeature;
 import com.fasterxml.jackson.dataformat.smile.SmileFactory;
 
+import static org.apache.ode.jacob.Jacob.instance;
+import static org.apache.ode.jacob.Jacob.newChannel;
+import static org.apache.ode.jacob.Jacob.newCommChannel;
+import static org.apache.ode.jacob.Jacob.object;
+import static org.apache.ode.jacob.Jacob.sendMessage;
+import static org.apache.ode.jacob.Jacob.subscribe;
+
+
 /**
  * Simple Hello World example to showcase different
  * features and approaches of the Jacob API.
@@ -60,7 +61,7 @@ import com.fasterxml.jackson.dataformat.smile.SmileFactory;
  * 
  */
 @SuppressWarnings("serial")
-public class HelloWorld extends JacobObject implements Runnable {
+public class HelloWorld extends Process {
 
     public static interface Callback<T, R extends Channel> extends Channel {
 
@@ -68,7 +69,7 @@ public class HelloWorld extends JacobObject implements Runnable {
 
     }
 
-    static class ReliablePrinterProcess extends JacobObject implements Runnable {
+    static class ReliablePrinterProcess extends Process {
         private Callback<String, Synch> in;
 
         @JsonCreator
@@ -88,7 +89,7 @@ public class HelloWorld extends JacobObject implements Runnable {
         }
     }
 
-    static class ReliableStringEmitterProcess extends JacobObject implements Runnable {
+    static class ReliableStringEmitterProcess extends Process {
         private String str;
         private Callback<String, Synch> to;
 
@@ -118,7 +119,7 @@ public class HelloWorld extends JacobObject implements Runnable {
         }
     }
 
-    static class PrinterProcess extends JacobObject implements Runnable {
+    static class PrinterProcess extends Process {
         private Val _in;
 
         @JsonCreator
@@ -137,7 +138,7 @@ public class HelloWorld extends JacobObject implements Runnable {
         }
     }
 
-    static class StringEmitterProcess extends JacobObject implements Runnable {
+    static class StringEmitterProcess extends Process {
         private String str;
         private Val to;
 
@@ -152,7 +153,7 @@ public class HelloWorld extends JacobObject implements Runnable {
         }
     }
 
-    static class ForwarderProcess extends JacobObject implements Runnable {
+    static class ForwarderProcess extends Process {
         private Val in;
         private Val out;
 
@@ -265,7 +266,7 @@ public class HelloWorld extends JacobObject implements Runnable {
         }
     }
     
-    static class StringEmitterRunnable extends JacobObject implements Runnable {
+    static class StringEmitterRunnable extends Process {
         private String str;
         private ChannelRef to;
 
@@ -299,7 +300,7 @@ public class HelloWorld extends JacobObject implements Runnable {
 			return new SequenceItemEmitter(greetings[step], done, out);
         }
 
-		static class SequenceItemEmitter extends JacobObject implements Runnable {
+		static class SequenceItemEmitter extends Process {
 			private final String string;
 			private final Synch done;
 			private final Val out;

http://git-wip-us.apache.org/repos/asf/ode-jacob/blob/57a06e2d/src/test/java/org/apache/ode/jacob/examples/sequence/Sequence.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/ode/jacob/examples/sequence/Sequence.java b/src/test/java/org/apache/ode/jacob/examples/sequence/Sequence.java
index 659cf9e..d626394 100644
--- a/src/test/java/org/apache/ode/jacob/examples/sequence/Sequence.java
+++ b/src/test/java/org/apache/ode/jacob/examples/sequence/Sequence.java
@@ -18,20 +18,24 @@
  */
 package org.apache.ode.jacob.examples.sequence;
 
-import static org.apache.ode.jacob.Jacob.*;
 
-import org.apache.ode.jacob.JacobObject;
+import org.apache.ode.jacob.Process;
 import org.apache.ode.jacob.oo.ReceiveProcess;
 import org.apache.ode.jacob.oo.Synch;
 
 import com.fasterxml.jackson.annotation.JsonCreator;
 import com.fasterxml.jackson.annotation.JsonProperty;
 
+import static org.apache.ode.jacob.Jacob.instance;
+import static org.apache.ode.jacob.Jacob.newChannel;
+import static org.apache.ode.jacob.Jacob.object;
+
+
 /**
  * Abstract process that executes a number of steps sequentially.
  */
 @SuppressWarnings("serial")
-public abstract class Sequence extends JacobObject implements Runnable {
+public abstract class Sequence extends Process {
     private final SequenceData data = new SequenceData();
 
     /**

http://git-wip-us.apache.org/repos/asf/ode-jacob/blob/57a06e2d/src/test/java/org/apache/ode/jacob/examples/synch/SynchPrinter.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/ode/jacob/examples/synch/SynchPrinter.java b/src/test/java/org/apache/ode/jacob/examples/synch/SynchPrinter.java
index bdaf878..22de017 100644
--- a/src/test/java/org/apache/ode/jacob/examples/synch/SynchPrinter.java
+++ b/src/test/java/org/apache/ode/jacob/examples/synch/SynchPrinter.java
@@ -18,15 +18,19 @@
  */
 package org.apache.ode.jacob.examples.synch;
 
-import static org.apache.ode.jacob.oo.ProcessUtil.receive;
-import static org.apache.ode.jacob.Jacob.*;
 
-import org.apache.ode.jacob.JacobObject;
+import org.apache.ode.jacob.Process;
 import org.apache.ode.jacob.oo.ReceiveProcess;
 import org.apache.ode.jacob.oo.Synch;
 import org.apache.ode.jacob.vpu.ExecutionQueueImpl;
 import org.apache.ode.jacob.vpu.JacobVPU;
 
+import static org.apache.ode.jacob.oo.ProcessUtil.receive;
+import static org.apache.ode.jacob.Jacob.instance;
+import static org.apache.ode.jacob.Jacob.newChannel;
+import static org.apache.ode.jacob.Jacob.object;
+
+
 /**
  * Example JACOB process illustrating the use of {@link SynchPrint}
  *
@@ -34,7 +38,7 @@ import org.apache.ode.jacob.vpu.JacobVPU;
  */
 public class SynchPrinter {
 
-    public static final class SystemPrinter extends JacobObject implements Runnable {
+    public static final class SystemPrinter extends Process {
         private static final long serialVersionUID = -8516348116865575605L;
 
         private SynchPrint _self;
@@ -54,7 +58,7 @@ public class SynchPrinter {
         }
     }
 
-    public static final class Tester extends JacobObject implements Runnable {
+    public static final class Tester extends Process {
         private static final long serialVersionUID = 7899682832271627464L;
 
         public void run() {