Repository: incubator-ignite
Updated Branches:
  refs/heads/ignite-99-2 ef6bdbce3 -> 2dfaa7357


Ignite-107 Serialization fix


Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/5ed84ecf
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/5ed84ecf
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/5ed84ecf

Branch: refs/heads/ignite-99-2
Commit: 5ed84ecf2a4f50c0136f5002c19ad475edd09da4
Parents: a3149f1
Author: avinogradov <avinogra...@gridgain.com>
Authored: Wed Jan 21 20:46:36 2015 +0300
Committer: avinogradov <avinogra...@gridgain.com>
Committed: Wed Jan 21 20:46:36 2015 +0300

----------------------------------------------------------------------
 .../closure/GridClosureProcessor.java           | 55 +++++++++++++++-----
 1 file changed, 43 insertions(+), 12 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/5ed84ecf/modules/core/src/main/java/org/gridgain/grid/kernal/processors/closure/GridClosureProcessor.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/closure/GridClosureProcessor.java
 
b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/closure/GridClosureProcessor.java
index 47f5f5a..7f17c45 100644
--- 
a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/closure/GridClosureProcessor.java
+++ 
b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/closure/GridClosureProcessor.java
@@ -992,11 +992,11 @@ public class GridClosureProcessor extends 
GridProcessorAdapter {
      * @return Grid job made out of closure.
      */
     @SuppressWarnings("IfMayBeConditional")
-    private ComputeJob job(final Callable<?> c) {
+    private <R> ComputeJob job(final Callable<R> c) {
         A.notNull(c, "job");
 
         if (c instanceof ComputeJobMasterLeaveAware)
-            return new C2(c);
+            return new C2<>(c);
         else {
             return new ComputeJobAdapter() {
                 @Override public Object execute() {
@@ -1020,11 +1020,11 @@ public class GridClosureProcessor extends 
GridProcessorAdapter {
      * @return Grid job made out of closure.
      */
     @SuppressWarnings(value = {"IfMayBeConditional", "UnusedDeclaration"})
-    private ComputeJob job(final Callable<?> c, @Nullable final String 
cacheName, final Object affKey) {
+    private <R> ComputeJob job(final Callable<R> c, @Nullable final String 
cacheName, final Object affKey) {
         A.notNull(c, "job");
 
         if (c instanceof ComputeJobMasterLeaveAware)
-            return new C3(c,cacheName,affKey);
+            return new C3<>(c,cacheName,affKey);
         else {
             return new ComputeJobAdapter() {
                 /** */
@@ -1684,6 +1684,12 @@ public class GridClosureProcessor extends 
GridProcessorAdapter {
 
         /**
          */
+        public C1(){
+            // No-op.
+        }
+
+        /**
+         */
         public C1(IgniteClosure<T, R> job, T arg) {
             this.job = job;
             this.arg = arg;
@@ -1714,16 +1720,22 @@ public class GridClosureProcessor extends 
GridProcessorAdapter {
 
     /**
      */
-    private static class C2 extends GridMasterLeaveAwareComputeJobAdapter {
+    private static class C2<R> extends GridMasterLeaveAwareComputeJobAdapter {
         /** */
         private static final long serialVersionUID = 0L;
 
         /** */
-        private Callable<?> c;
+        private Callable<R> c;
 
         /**
          */
-        public C2(Callable<?> c) {
+        public C2(){
+            // No-op.
+        }
+
+        /**
+         */
+        public C2(Callable<R> c) {
             this.c = c;
         }
 
@@ -1749,13 +1761,13 @@ public class GridClosureProcessor extends 
GridProcessorAdapter {
 
         /** {@inheritDoc} */
         @Override public void readExternal(ObjectInput in) throws IOException, 
ClassNotFoundException {
-            c = (Callable<?>) in.readObject();
+            c = (Callable<R>) in.readObject();
         }
     }
 
     /**
      */
-    private static class C3 extends GridMasterLeaveAwareComputeJobAdapter {
+    private static class C3<R> extends GridMasterLeaveAwareComputeJobAdapter {
         /** */
         private static final long serialVersionUID = 0L;
 
@@ -1767,12 +1779,19 @@ public class GridClosureProcessor extends 
GridProcessorAdapter {
         @GridCacheAffinityKeyMapped
         private Object ak;
 
+
         /** */
-        private Callable<?> c;
+        private Callable<R> c;
 
         /**
          */
-        public C3(Callable<?> c, @Nullable String cacheName, Object affKey) {
+        public C3(){
+            // No-op.
+        }
+
+        /**
+         */
+        public C3(Callable<R> c, @Nullable String cacheName, Object affKey) {
             this.cn = cacheName;
             this.ak = affKey;
             this.c = c;
@@ -1804,7 +1823,7 @@ public class GridClosureProcessor extends 
GridProcessorAdapter {
         @Override public void readExternal(ObjectInput in) throws IOException, 
ClassNotFoundException {
             cn = (String) in.readObject();
             ak = in.readObject();
-            c = (Callable<?>) in.readObject();
+            c = (Callable<R>) in.readObject();
         }
     }
 
@@ -1819,6 +1838,12 @@ public class GridClosureProcessor extends 
GridProcessorAdapter {
 
         /**
          */
+        public C4(){
+            // No-op.
+        }
+
+        /**
+         */
         public C4(Runnable r) {
             this.r = r;
         }
@@ -1865,6 +1890,12 @@ public class GridClosureProcessor extends 
GridProcessorAdapter {
 
         /**
          */
+        public C5(){
+            // No-op.
+        }
+
+        /**
+         */
         public C5(Runnable r, @Nullable String cacheName, Object affKey) {
             this.cn = cacheName;
             this.ak = affKey;

Reply via email to