Fixing marshalToPortable and IgniteBiTuple
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/afcf0ab5 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/afcf0ab5 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/afcf0ab5 Branch: refs/heads/ignite-1.5 Commit: afcf0ab5e5d8e33351cf37790894c1d71ac6cc65 Parents: 809a442 Author: Alexey Goncharuk <alexey.goncha...@gmail.com> Authored: Thu Nov 26 09:21:50 2015 +0300 Committer: Alexey Goncharuk <alexey.goncha...@gmail.com> Committed: Thu Nov 26 09:21:50 2015 +0300 ---------------------------------------------------------------------- .../cache/portable/CacheObjectBinaryProcessorImpl.java | 11 +++++++++++ 1 file changed, 11 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/afcf0ab5/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/portable/CacheObjectBinaryProcessorImpl.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/portable/CacheObjectBinaryProcessorImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/portable/CacheObjectBinaryProcessorImpl.java index ba7d6f8..819b57e 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/portable/CacheObjectBinaryProcessorImpl.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/portable/CacheObjectBinaryProcessorImpl.java @@ -62,11 +62,13 @@ import org.apache.ignite.internal.util.lang.GridMapEntry; import org.apache.ignite.internal.util.tostring.GridToStringExclude; import org.apache.ignite.internal.util.typedef.C1; import org.apache.ignite.internal.util.typedef.F; +import org.apache.ignite.internal.util.typedef.T2; import org.apache.ignite.internal.util.typedef.X; import org.apache.ignite.internal.util.typedef.internal.CU; import org.apache.ignite.internal.util.typedef.internal.S; import org.apache.ignite.internal.util.typedef.internal.U; import org.apache.ignite.lang.IgniteBiPredicate; +import org.apache.ignite.lang.IgniteBiTuple; import org.apache.ignite.lang.IgniteClosure; import org.apache.ignite.marshaller.Marshaller; import org.apache.ignite.internal.portable.BinaryMarshaller; @@ -390,6 +392,15 @@ public class CacheObjectBinaryProcessorImpl extends IgniteCacheObjectProcessorIm return pArr; } + if (obj instanceof IgniteBiTuple) { + IgniteBiTuple tup = (IgniteBiTuple)obj; + + if (obj instanceof T2) + return new T2<>(marshalToPortable(tup.get1()), marshalToPortable(tup.get2())); + + return new IgniteBiTuple<>(marshalToPortable(tup.get1()), marshalToPortable(tup.get2())); + } + if (obj instanceof Collection) { Collection<Object> col = (Collection<Object>)obj;