Author: hadrian
Date: Wed Jan 16 02:21:43 2013
New Revision: 1433800

URL: http://svn.apache.org/viewvc?rev=1433800&view=rev
Log:
ODE-987. Refactor Channel classes to not rely on code generation (step 1)

Added:
    ode/trunk/jacob/src/main/java/org/apache/ode/jacob/ChannelType.java   
(contents, props changed)
      - copied, changed from r1433714, 
ode/trunk/jacob/src/main/java/org/apache/ode/jacob/ap/ChannelType.java
    ode/trunk/jacob/src/main/java/org/apache/ode/jacob/ProcessUtil.java
      - copied, changed from r1433714, 
ode/trunk/jacob/src/main/java/org/apache/ode/jacob/Val.java
Removed:
    ode/trunk/jacob/src/main/java/org/apache/ode/jacob/ap/ChannelType.java
Modified:
    
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/ActivityRecovery.java
    
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/Compensation.java
    
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/EventHandlerControl.java
    
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/InvokeResponse.java
    
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/LinkStatus.java
    
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/ParentScope.java
    
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/PickResponse.java
    
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/ReadWriteLock.java
    
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/Termination.java
    
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/TimerResponse.java
    ode/trunk/jacob/src/main/java/org/apache/ode/jacob/Synch.java
    ode/trunk/jacob/src/main/java/org/apache/ode/jacob/Val.java
    ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/cell/Cell.java
    
ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/eratosthenes/NaturalNumberStream.java
    
ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/synch/SynchPrint.java

Modified: 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/ActivityRecovery.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/ActivityRecovery.java?rev=1433800&r1=1433799&r2=1433800&view=diff
==============================================================================
--- 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/ActivityRecovery.java
 (original)
+++ 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/ActivityRecovery.java
 Wed Jan 16 02:21:43 2013
@@ -18,12 +18,10 @@
  */
 package org.apache.ode.bpel.runtime.channels;
 
-import java.io.Serializable;
 
-import org.apache.ode.jacob.ap.ChannelType;
+import org.apache.ode.jacob.ChannelType;
 
-@ChannelType
-public interface ActivityRecovery extends Serializable {
+public interface ActivityRecovery extends ChannelType {
 
     /**
      * Retry the activity.

Modified: 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/Compensation.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/Compensation.java?rev=1433800&r1=1433799&r2=1433800&view=diff
==============================================================================
--- 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/Compensation.java
 (original)
+++ 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/Compensation.java
 Wed Jan 16 02:21:43 2013
@@ -18,13 +18,10 @@
  */
 package org.apache.ode.bpel.runtime.channels;
 
-import java.io.Serializable;
-
+import org.apache.ode.jacob.ChannelType;
 import org.apache.ode.jacob.SynchChannel;
-import org.apache.ode.jacob.ap.ChannelType;
 
-@ChannelType
-public interface Compensation extends Serializable {
+public interface Compensation extends ChannelType {
 
   public void forget();
 

Modified: 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/EventHandlerControl.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/EventHandlerControl.java?rev=1433800&r1=1433799&r2=1433800&view=diff
==============================================================================
--- 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/EventHandlerControl.java
 (original)
+++ 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/EventHandlerControl.java
 Wed Jan 16 02:21:43 2013
@@ -18,15 +18,12 @@
  */
 package org.apache.ode.bpel.runtime.channels;
 
-import java.io.Serializable;
-
-import org.apache.ode.jacob.ap.ChannelType;
+import org.apache.ode.jacob.ChannelType;
 
 /**
  * Channel used to control processing of event handler activities.
  */
-@ChannelType
-public interface EventHandlerControl extends Serializable {
+public interface EventHandlerControl extends ChannelType {
 
   /**
    * Finish up active events but stop processing any more.

Modified: 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/InvokeResponse.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/InvokeResponse.java?rev=1433800&r1=1433799&r2=1433800&view=diff
==============================================================================
--- 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/InvokeResponse.java
 (original)
+++ 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/InvokeResponse.java
 Wed Jan 16 02:21:43 2013
@@ -18,15 +18,12 @@
  */
 package org.apache.ode.bpel.runtime.channels;
 
-import java.io.Serializable;
-
-import org.apache.ode.jacob.ap.ChannelType;
+import org.apache.ode.jacob.ChannelType;
 
 /**
  * Response channel for pick requests.
  */
-@ChannelType
-public interface InvokeResponse extends Serializable {
+public interface InvokeResponse extends ChannelType {
 
   public void onResponse();
 

Modified: 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/LinkStatus.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/LinkStatus.java?rev=1433800&r1=1433799&r2=1433800&view=diff
==============================================================================
--- 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/LinkStatus.java
 (original)
+++ 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/LinkStatus.java
 Wed Jan 16 02:21:43 2013
@@ -18,14 +18,11 @@
  */
 package org.apache.ode.bpel.runtime.channels;
 
-import java.io.Serializable;
-
-import org.apache.ode.jacob.ap.ChannelType;
+import org.apache.ode.jacob.ChannelType;
 
 /**
  */
-@ChannelType
-public interface LinkStatus extends Serializable {
+public interface LinkStatus extends ChannelType {
 
   void linkStatus(boolean value);
 

Modified: 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/ParentScope.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/ParentScope.java?rev=1433800&r1=1433799&r2=1433800&view=diff
==============================================================================
--- 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/ParentScope.java
 (original)
+++ 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/ParentScope.java
 Wed Jan 16 02:21:43 2013
@@ -18,21 +18,19 @@
  */
 package org.apache.ode.bpel.runtime.channels;
 
-import java.io.Serializable;
 import java.util.Set;
 
 import org.apache.ode.bpel.o.OScope;
 import org.apache.ode.bpel.runtime.CompensationHandler;
+import org.apache.ode.jacob.ChannelType;
 import org.apache.ode.jacob.SynchChannel;
 import org.w3c.dom.Element;
-import org.apache.ode.jacob.ap.ChannelType;
 
 
 /**
  * Channel used for child-to-parent scope communication.
  */
-@ChannelType
-public interface ParentScope extends Serializable {
+public interface ParentScope extends ChannelType {
 
   void compensate(OScope scope, SynchChannel ret);
 

Modified: 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/PickResponse.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/PickResponse.java?rev=1433800&r1=1433799&r2=1433800&view=diff
==============================================================================
--- 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/PickResponse.java
 (original)
+++ 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/PickResponse.java
 Wed Jan 16 02:21:43 2013
@@ -18,7 +18,6 @@
  */
 package org.apache.ode.bpel.runtime.channels;
 
-import org.apache.ode.jacob.ap.ChannelType;
 
 
 /**
@@ -26,7 +25,6 @@ import org.apache.ode.jacob.ap.ChannelTy
  * @jacob.kind
  * @jacob.parent TimerResponseChannel
  */
-@ChannelType
 public interface PickResponse extends TimerResponse {
 
   public void onRequestRcvd(int selectorIdx, String mexId);

Modified: 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/ReadWriteLock.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/ReadWriteLock.java?rev=1433800&r1=1433799&r2=1433800&view=diff
==============================================================================
--- 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/ReadWriteLock.java
 (original)
+++ 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/ReadWriteLock.java
 Wed Jan 16 02:21:43 2013
@@ -18,17 +18,15 @@
  */
 package org.apache.ode.bpel.runtime.channels;
 
-import java.io.Serializable;
-
+import org.apache.ode.jacob.ChannelType;
 import org.apache.ode.jacob.SynchChannel;
-import org.apache.ode.jacob.ap.ChannelType;
 
-@ChannelType
-public interface ReadWriteLock extends Serializable {
+public interface ReadWriteLock extends ChannelType {
 
     public void readLock(SynchChannel s);
     
     public void writeLock(SynchChannel s);
     
     public void unlock(SynchChannel s);
+
 }

Modified: 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/Termination.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/Termination.java?rev=1433800&r1=1433799&r2=1433800&view=diff
==============================================================================
--- 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/Termination.java
 (original)
+++ 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/Termination.java
 Wed Jan 16 02:21:43 2013
@@ -18,17 +18,12 @@
  */
 package org.apache.ode.bpel.runtime.channels;
 
-import java.io.Serializable;
-
-import org.apache.ode.jacob.ap.ChannelType;
-
-
+import org.apache.ode.jacob.ChannelType;
 
 /**
  * Channel used for parent-to-child scope communication.
  */
-@ChannelType
-public interface Termination extends Serializable {
+public interface Termination extends ChannelType {
 
   /**
    * Stop processing immediately.

Modified: 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/TimerResponse.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/TimerResponse.java?rev=1433800&r1=1433799&r2=1433800&view=diff
==============================================================================
--- 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/TimerResponse.java
 (original)
+++ 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/TimerResponse.java
 Wed Jan 16 02:21:43 2013
@@ -18,20 +18,17 @@
  */
 package org.apache.ode.bpel.runtime.channels;
 
-import java.io.Serializable;
-
-import org.apache.ode.jacob.ap.ChannelType;
-
+import org.apache.ode.jacob.ChannelType;
 
 /**
  * Channel for timer notification.
  */
-@ChannelType
-public interface TimerResponse extends Serializable {
-    /** timer event has occurred */
+public interface TimerResponse extends ChannelType {
+
+       /** timer event has occurred */
     public void onTimeout();
 
-  /** timer was cancelled. */
-  public void onCancel();
+    /** timer was cancelled. */
+    public void onCancel();
 
 }

Copied: ode/trunk/jacob/src/main/java/org/apache/ode/jacob/ChannelType.java 
(from r1433714, 
ode/trunk/jacob/src/main/java/org/apache/ode/jacob/ap/ChannelType.java)
URL: 
http://svn.apache.org/viewvc/ode/trunk/jacob/src/main/java/org/apache/ode/jacob/ChannelType.java?p2=ode/trunk/jacob/src/main/java/org/apache/ode/jacob/ChannelType.java&p1=ode/trunk/jacob/src/main/java/org/apache/ode/jacob/ap/ChannelType.java&r1=1433714&r2=1433800&rev=1433800&view=diff
==============================================================================
--- ode/trunk/jacob/src/main/java/org/apache/ode/jacob/ap/ChannelType.java 
(original)
+++ ode/trunk/jacob/src/main/java/org/apache/ode/jacob/ChannelType.java Wed Jan 
16 02:21:43 2013
@@ -16,12 +16,13 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ode.jacob.ap;
+package org.apache.ode.jacob;
+
+import java.io.Serializable;
 
 /**
- * Annotation used to indicate that an interface is a JACOB channel interface.
- * @author Maciej Szefler <mszefler at gmail dot com>
+ * Marker interface extended by channel interfaces.
+ * TODO: evaluate if an annotation, although slower, would offer a more 
elegant approach
  */
-public @interface ChannelType {
-
+public interface ChannelType extends Serializable {
 }

Propchange: ode/trunk/jacob/src/main/java/org/apache/ode/jacob/ChannelType.java
------------------------------------------------------------------------------
    svn:eol-style = native

Copied: ode/trunk/jacob/src/main/java/org/apache/ode/jacob/ProcessUtil.java 
(from r1433714, ode/trunk/jacob/src/main/java/org/apache/ode/jacob/Val.java)
URL: 
http://svn.apache.org/viewvc/ode/trunk/jacob/src/main/java/org/apache/ode/jacob/ProcessUtil.java?p2=ode/trunk/jacob/src/main/java/org/apache/ode/jacob/ProcessUtil.java&p1=ode/trunk/jacob/src/main/java/org/apache/ode/jacob/Val.java&r1=1433714&r2=1433800&rev=1433800&view=diff
==============================================================================
--- ode/trunk/jacob/src/main/java/org/apache/ode/jacob/Val.java (original)
+++ ode/trunk/jacob/src/main/java/org/apache/ode/jacob/ProcessUtil.java Wed Jan 
16 02:21:43 2013
@@ -18,14 +18,17 @@
  */
 package org.apache.ode.jacob;
 
-import java.io.Serializable;
 
-import org.apache.ode.jacob.ap.ChannelType;
+public final class ProcessUtil {
+    private ProcessUtil() {
+        // Utility class
+    }
 
-/**
- * Generic return-value channel type.
- */
-@ChannelType
-public interface Val extends Serializable {
-  public void val(Object retVal);
+    public static String exportChannel(ChannelType channel) {
+       if (channel instanceof Channel) {
+               return ((Channel)channel).export();
+       }
+       // TODO: add a check for null?
+        throw new RuntimeException("Invalid proxy type " + channel.getClass());
+    }
 }

Modified: ode/trunk/jacob/src/main/java/org/apache/ode/jacob/Synch.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/jacob/src/main/java/org/apache/ode/jacob/Synch.java?rev=1433800&r1=1433799&r2=1433800&view=diff
==============================================================================
--- ode/trunk/jacob/src/main/java/org/apache/ode/jacob/Synch.java (original)
+++ ode/trunk/jacob/src/main/java/org/apache/ode/jacob/Synch.java Wed Jan 16 
02:21:43 2013
@@ -18,9 +18,6 @@
  */
 package org.apache.ode.jacob;
 
-import java.io.Serializable;
-
-import org.apache.ode.jacob.ap.ChannelType;
 
 /**
  * Synch represents a synchronous invocation callback notification.
@@ -30,7 +27,8 @@ import org.apache.ode.jacob.ap.ChannelTy
  * @author Maciej Szefler <a href="mailto:[email protected]";>mbs</a>
  */
 
-@ChannelType
-public interface Synch extends Serializable {
-    public void ret();
+public interface Synch extends ChannelType {
+
+       public void ret();
+
 }

Modified: ode/trunk/jacob/src/main/java/org/apache/ode/jacob/Val.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/jacob/src/main/java/org/apache/ode/jacob/Val.java?rev=1433800&r1=1433799&r2=1433800&view=diff
==============================================================================
--- ode/trunk/jacob/src/main/java/org/apache/ode/jacob/Val.java (original)
+++ ode/trunk/jacob/src/main/java/org/apache/ode/jacob/Val.java Wed Jan 16 
02:21:43 2013
@@ -18,14 +18,12 @@
  */
 package org.apache.ode.jacob;
 
-import java.io.Serializable;
-
-import org.apache.ode.jacob.ap.ChannelType;
 
 /**
  * Generic return-value channel type.
  */
-@ChannelType
-public interface Val extends Serializable {
-  public void val(Object retVal);
+public interface Val extends ChannelType {
+
+       public void val(Object retVal);
+
 }

Modified: 
ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/cell/Cell.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/cell/Cell.java?rev=1433800&r1=1433799&r2=1433800&view=diff
==============================================================================
--- ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/cell/Cell.java 
(original)
+++ ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/cell/Cell.java 
Wed Jan 16 02:21:43 2013
@@ -18,27 +18,25 @@
  */
 package org.apache.ode.jacob.examples.cell;
 
-import org.apache.ode.jacob.Val;
-import org.apache.ode.jacob.ap.ChannelType;
 
+import org.apache.ode.jacob.ChannelType;
+import org.apache.ode.jacob.Val;
 
 /**
  * Channel type for a cell. The channel allows reading of and setting the 
values of a cell.
- *
- * @jacob.kind
  */
-@ChannelType
-public interface Cell  {
+public interface Cell extends ChannelType {
+
+    /**
+     * Read the value of the cell.
+     * @param replyTo channel to which the value of the cell is sent
+     */
+    public void read(Val replyTo);
+
+    /**
+     * Write the value of the cell.
+     * @param newVal new value of the cell
+     */
+    public void write(Object newVal);
 
-  /**
-   * Read the value of the cell.
-   * @param replyTo channel to which the value of the cell is sent
-   */
-  public void read(Val replyTo);
-
-  /**
-   * Write the value of the cell.
-   * @param newVal new value of the cell
-   */
-  public void write(Object newVal);
 }

Modified: 
ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/eratosthenes/NaturalNumberStream.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/eratosthenes/NaturalNumberStream.java?rev=1433800&r1=1433799&r2=1433800&view=diff
==============================================================================
--- 
ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/eratosthenes/NaturalNumberStream.java
 (original)
+++ 
ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/eratosthenes/NaturalNumberStream.java
 Wed Jan 16 02:21:43 2013
@@ -18,8 +18,9 @@
  */
 package org.apache.ode.jacob.examples.eratosthenes;
 
+
+import org.apache.ode.jacob.ChannelType;
 import org.apache.ode.jacob.SynchChannel;
-import org.apache.ode.jacob.ap.ChannelType;
 
 /**
  * DOCUMENTME.
@@ -28,7 +29,8 @@ import org.apache.ode.jacob.ap.ChannelTy
  * @jacob.kind
  * @author Maciej Szefler <a href="mailto:[email protected]";>mbs</a>
  */
-@ChannelType
-public interface NaturalNumberStream {
-  public void val(int n, SynchChannel ret);
+public interface NaturalNumberStream extends ChannelType {
+
+       public void val(int n, SynchChannel ret);
+
 }

Modified: 
ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/synch/SynchPrint.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/synch/SynchPrint.java?rev=1433800&r1=1433799&r2=1433800&view=diff
==============================================================================
--- 
ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/synch/SynchPrint.java
 (original)
+++ 
ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/synch/SynchPrint.java
 Wed Jan 16 02:21:43 2013
@@ -18,8 +18,8 @@
  */
 package org.apache.ode.jacob.examples.synch;
 
+import org.apache.ode.jacob.ChannelType;
 import org.apache.ode.jacob.SynchChannel;
-import org.apache.ode.jacob.ap.ChannelType;
 
 /**
  * DOCUMENTME.
@@ -27,7 +27,8 @@ import org.apache.ode.jacob.ap.ChannelTy
  *
  * @author Maciej Szefler <a href="mailto:[email protected]";>mbs</a>
  */
-@ChannelType
-public interface SynchPrint {
-  public SynchChannel print(String msg);
+public interface SynchPrint extends ChannelType {
+
+       public SynchChannel print(String msg);
+
 }


Reply via email to