Repository: ode-jacob
Updated Branches:
  refs/heads/master 4dbf78cc1 -> 5eeed6214


allow the replacement of non-serializable objects.


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

Branch: refs/heads/master
Commit: 5eeed6214c03ac7c8ac6d003233003ed2958fc07
Parents: 4dbf78c
Author: Tammo van Lessen <[email protected]>
Authored: Wed Jul 23 16:51:48 2014 +0200
Committer: Tammo van Lessen <[email protected]>
Committed: Wed Jul 23 16:56:20 2014 +0200

----------------------------------------------------------------------
 src/main/java/org/apache/ode/jacob/vpu/ExecutionQueueImpl.java | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ode-jacob/blob/5eeed621/src/main/java/org/apache/ode/jacob/vpu/ExecutionQueueImpl.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/ode/jacob/vpu/ExecutionQueueImpl.java 
b/src/main/java/org/apache/ode/jacob/vpu/ExecutionQueueImpl.java
index 42393f8..ce872fa 100644
--- a/src/main/java/org/apache/ode/jacob/vpu/ExecutionQueueImpl.java
+++ b/src/main/java/org/apache/ode/jacob/vpu/ExecutionQueueImpl.java
@@ -641,8 +641,9 @@ public class ExecutionQueueImpl implements ExecutionQueue {
          * @throws IOException
          */
         protected Object replaceObject(Object obj) throws IOException {
-            if (!Serializable.class.isAssignableFrom(obj.getClass())) {
-                throw new IllegalArgumentException("Cannot replace non 
Serializable instance of " + obj.getClass());
+            if (!Serializable.class.isAssignableFrom(obj.getClass()) &&
+                    !(_replacementMap != null && 
_replacementMap.isReplaceable(obj))) {
+                throw new IllegalArgumentException("Cannot replace 
non-serializable or non-replacable instance of " + obj.getClass());
             }
 
             if (obj instanceof org.apache.ode.jacob.oo.ChannelProxy) {

Reply via email to