# gg-9791 - Communication fixes
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/63245b0e Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/63245b0e Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/63245b0e Branch: refs/heads/ignite-312 Commit: 63245b0e80774dcdbe78308adce119c13f238526 Parents: 5d27722 Author: Valentin Kulichenko <vkuliche...@gridgain.com> Authored: Wed Feb 18 17:58:51 2015 -0800 Committer: Valentin Kulichenko <vkuliche...@gridgain.com> Committed: Wed Feb 18 17:58:51 2015 -0800 ---------------------------------------------------------------------- .../ignite/internal/direct/DirectByteBufferStream.java | 11 ++++++----- .../ignite/internal/direct/DirectMessageReader.java | 5 +++-- .../internal/managers/communication/GridIoManager.java | 2 +- .../apache/ignite/testframework/GridSpiTestContext.java | 2 +- 4 files changed, 11 insertions(+), 9 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/63245b0e/modules/core/src/main/java/org/apache/ignite/internal/direct/DirectByteBufferStream.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/direct/DirectByteBufferStream.java b/modules/core/src/main/java/org/apache/ignite/internal/direct/DirectByteBufferStream.java index d496807..62cd990 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/direct/DirectByteBufferStream.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/direct/DirectByteBufferStream.java @@ -210,7 +210,7 @@ public class DirectByteBufferStream { private final MessageFactory msgFactory; /** */ - private final MessageReader msgReader; + private final MessageFormatter msgFormatter; /** */ private ByteBuffer buf; @@ -268,11 +268,11 @@ public class DirectByteBufferStream { /** * @param msgFactory Message factory. - * @param msgReader Message reader. + * @param msgFormatter Message formatter. */ - public DirectByteBufferStream(MessageFactory msgFactory, MessageReader msgReader) { + public DirectByteBufferStream(MessageFactory msgFactory, MessageFormatter msgFormatter) { this.msgFactory = msgFactory; - this.msgReader = msgReader; + this.msgFormatter = msgFormatter; } /** @@ -917,7 +917,8 @@ public class DirectByteBufferStream { msg = type == Byte.MIN_VALUE ? null : msgFactory.create(type); - msg.setReader(msgReader); + if (msg != null) + msg.setReader(msgFormatter.reader(msgFactory)); msgTypeDone = true; } http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/63245b0e/modules/core/src/main/java/org/apache/ignite/internal/direct/DirectMessageReader.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/direct/DirectMessageReader.java b/modules/core/src/main/java/org/apache/ignite/internal/direct/DirectMessageReader.java index 3e336af..445a854 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/direct/DirectMessageReader.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/direct/DirectMessageReader.java @@ -36,9 +36,10 @@ public class DirectMessageReader implements MessageReader { /** * @param msgFactory Message factory. + * @param msgFormatter Message formatter. */ - public DirectMessageReader(MessageFactory msgFactory) { - this.stream = new DirectByteBufferStream(msgFactory, this); + public DirectMessageReader(MessageFactory msgFactory, MessageFormatter msgFormatter) { + this.stream = new DirectByteBufferStream(msgFactory, msgFormatter); } /** {@inheritDoc} */ http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/63245b0e/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoManager.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoManager.java b/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoManager.java index 3be34f7..f794fb7 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoManager.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoManager.java @@ -224,7 +224,7 @@ public class GridIoManager extends GridManagerAdapter<CommunicationSpi<Serializa } @Override public MessageReader reader(MessageFactory factory) { - return new DirectMessageReader(msgFactory); + return new DirectMessageReader(msgFactory, this); } }; } http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/63245b0e/modules/core/src/test/java/org/apache/ignite/testframework/GridSpiTestContext.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/testframework/GridSpiTestContext.java b/modules/core/src/test/java/org/apache/ignite/testframework/GridSpiTestContext.java index e1aaa71..ad59f18 100644 --- a/modules/core/src/test/java/org/apache/ignite/testframework/GridSpiTestContext.java +++ b/modules/core/src/test/java/org/apache/ignite/testframework/GridSpiTestContext.java @@ -520,7 +520,7 @@ public class GridSpiTestContext implements IgniteSpiContext { } @Override public MessageReader reader(MessageFactory factory) { - return new DirectMessageReader(factory); + return new DirectMessageReader(factory, this); } }; }