This is an automated email from the ASF dual-hosted git repository.
nizhikov pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ignite.git
The following commit(s) were added to refs/heads/master by this push:
new f9ebf2aa13b IGNITE-28934 Create message with direct constructor call
(#13416)
f9ebf2aa13b is described below
commit f9ebf2aa13b731b76b2c272c0a2fd0ad87c914e4
Author: Nikolay <[email protected]>
AuthorDate: Thu Jul 30 15:52:11 2026 +0300
IGNITE-28934 Create message with direct constructor call (#13416)
---
.../ignite/internal/MessageCompanionGenerator.java | 2 +-
.../internal/MessageSerializerGenerator.java | 25 +++++++++-
.../communication/CompressedMessageSerializer.java | 5 ++
.../communication/IgniteMessageFactory.java | 13 ++---
.../communication/IgniteMessageFactoryImpl.java | 20 +++-----
...AbstractMarshallableMessageFactoryProvider.java | 33 ++-----------
.../org/apache/ignite/spi/IgniteSpiAdapter.java | 2 -
.../tcp/internal/GridNioServerWrapper.java | 3 +-
.../direct/DirectMarshallingMessagesTest.java | 6 +--
...irectByteBufferStreamImplByteOrderSelfTest.java | 4 +-
.../GridCommunicationSendMessageSelfTest.java | 4 +-
.../GridIoManagerOrderedUnmarshalFailureTest.java | 7 ++-
.../IgniteMessageFactoryImplTest.java | 11 +++--
.../MessageDirectTypeIdConflictTest.java | 2 +-
.../nio/IgniteExceptionInNioWorkerSelfTest.java | 7 ++-
.../TcpCommunicationSpiSslVolatilePayloadTest.java | 5 +-
.../communication/MessageMarshalOnceTest.java | 14 +++++-
.../apache/ignite/spi/MessagesPluginProvider.java | 13 +----
.../communication/GridCacheMessageSelfTest.java | 10 ++--
.../ignite/spi/communication/GridTestMessage.java | 2 +-
.../tcp/TestDelayMessageSerializer.java | 5 ++
.../tcp/DiscoveryDeserializationExceptionTest.java | 2 +-
.../tcp/DiscoveryUnmarshalVulnerabilityTest.java | 6 ++-
.../resources/codegen/ChildMessageSerializer.java | 11 +++--
.../CustomMapperEnumFieldsMessageSerializer.java | 11 +++--
.../DefaultMapperEnumFieldsMessageSerializer.java | 11 +++--
.../codegen/TestCacheIdMessageDeployer.java | 2 +-
.../codegen/TestCollectionsMessageMarshaller.java | 2 +-
.../codegen/TestCollectionsMessageSerializer.java | 11 +++--
.../codegen/TestDeployableMessageDeployer.java | 2 +-
.../codegen/TestMapMessageMarshaller.java | 2 +-
.../codegen/TestMapMessageSerializer.java | 11 +++--
.../codegen/TestMarshallableMessageMarshaller.java | 2 +-
.../codegen/TestMarshallableMessageSerializer.java | 11 +++--
.../TestMarshalledArrayMapMessageMarshaller.java | 2 +-
.../TestMarshalledArrayMapMessageSerializer.java | 11 +++--
.../TestMarshalledCollectionMessageMarshaller.java | 2 +-
.../TestMarshalledCollectionMessageSerializer.java | 11 +++--
.../TestMarshalledMapMessageMarshaller.java | 2 +-
.../TestMarshalledMapMessageSerializer.java | 11 +++--
.../codegen/TestMarshalledMessageMarshaller.java | 2 +-
.../codegen/TestMarshalledMessageSerializer.java | 11 +++--
.../TestMarshalledObjectsMessageMarshaller.java | 2 +-
.../TestMarshalledObjectsMessageSerializer.java | 11 +++--
.../resources/codegen/TestMessageMarshaller.java | 2 +-
.../resources/codegen/TestMessageSerializer.java | 11 +++--
.../codegen/TestNestedDeployMessageDeployer.java | 2 +-
.../query/h2/twostep/msg/GridH2Null.java | 2 +-
.../h2/twostep/msg/GridH2ValueMessageFactory.java | 57 +++++++++++-----------
.../extensions/communication/MessageFactory.java | 14 +++---
.../communication/MessageSerializer.java | 5 ++
.../discovery/zk/internal/ZkMessageFactory.java | 12 ++---
52 files changed, 253 insertions(+), 194 deletions(-)
diff --git
a/modules/codegen/src/main/java/org/apache/ignite/internal/MessageCompanionGenerator.java
b/modules/codegen/src/main/java/org/apache/ignite/internal/MessageCompanionGenerator.java
index 5bd3a781326..9156694a621 100644
---
a/modules/codegen/src/main/java/org/apache/ignite/internal/MessageCompanionGenerator.java
+++
b/modules/codegen/src/main/java/org/apache/ignite/internal/MessageCompanionGenerator.java
@@ -178,7 +178,7 @@ public abstract class MessageCompanionGenerator {
writer.write(NL);
writer.write(CLS_JAVADOC);
writer.write(NL);
- writer.write("public class " + clsName + " implements " +
interfaceName + "<" + simpleNameWithGeneric(type) + ">");
+ writer.write("public final class " + clsName + " implements " +
interfaceName + "<" + simpleNameWithGeneric(type) + ">");
}
/** @return {@code format} formatted with {@code args}, prefixed with
{@link #indent} tabs. */
diff --git
a/modules/codegen/src/main/java/org/apache/ignite/internal/MessageSerializerGenerator.java
b/modules/codegen/src/main/java/org/apache/ignite/internal/MessageSerializerGenerator.java
index 16cfdace97a..d3344ea8003 100644
---
a/modules/codegen/src/main/java/org/apache/ignite/internal/MessageSerializerGenerator.java
+++
b/modules/codegen/src/main/java/org/apache/ignite/internal/MessageSerializerGenerator.java
@@ -45,6 +45,7 @@ import org.jetbrains.annotations.Nullable;
import static org.apache.ignite.internal.MessageProcessor.CACHE_OBJECT_CLS;
import static
org.apache.ignite.internal.MessageProcessor.COMPRESSED_MESSAGE_CLASS;
+import static org.apache.ignite.internal.MessageProcessor.GRID_H2_NULL;
import static org.apache.ignite.internal.MessageProcessor.KEY_CACHE_OBJECT_CLS;
import static org.apache.ignite.internal.MessageProcessor.MESSAGE_INTERFACE;
@@ -133,7 +134,6 @@ public class MessageSerializerGenerator extends
MessageCompanionGenerator {
/** {@inheritDoc} */
@Override protected String buildClassCode(String serClsName) throws
IOException {
try (Writer writer = new StringWriter()) {
- imports.add(type.toString());
imports.add(MESSAGE_SERIALIZER_CLS);
imports.add(MESSAGE_WRITER_CLS);
imports.add(MESSAGE_READER_CLS);
@@ -152,6 +152,10 @@ public class MessageSerializerGenerator extends
MessageCompanionGenerator {
for (String r: read)
writer.write(r + NL);
+ writer.write(NL);
+
+ writeCreateMessage(writer);
+
writer.write("}");
return writer.toString();
@@ -183,7 +187,7 @@ public class MessageSerializerGenerator extends
MessageCompanionGenerator {
private void generateMethod(List<String> code, List<VariableElement>
fields, boolean write) throws Exception {
code.add(indentedLine(METHOD_JAVADOC));
- code.add(indentedLine("@Override public boolean %s(" +
simpleNameWithGeneric(type) + " msg, %s) {",
+ code.add(indentedLine("@Override public final boolean %s(" +
simpleNameWithGeneric(type) + " msg, %s) {",
write ? "writeTo" : "readFrom", write ? "MessageWriter writer" :
"MessageReader reader"));
indent++;
@@ -222,6 +226,23 @@ public class MessageSerializerGenerator extends
MessageCompanionGenerator {
code.add(indentedLine("}"));
}
+ /** Writes {@code MessageSerializer#createMessage()} method body. */
+ private void writeCreateMessage(Writer writer) throws IOException {
+ writer.write(TAB + "/** {@inheritDoc} */");
+ writer.write(NL);
+ writer.write(TAB + "@Override public final " + type.getSimpleName() +
" createMessage() {");
+ writer.write(NL);
+
+ if (type.getQualifiedName().contentEquals(GRID_H2_NULL))
+ writer.write(TAB + TAB + "return GridH2Null.INSTANCE;");
+ else
+ writer.write(TAB + TAB + "return new " + type.getSimpleName() +
"();");
+
+ writer.write(NL);
+ writer.write(TAB + "}");
+ writer.write(NL);
+ }
+
/**
* @param field Field.
* @param opt Case option.
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/CompressedMessageSerializer.java
b/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/CompressedMessageSerializer.java
index 44ae6ab390b..7661a114219 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/CompressedMessageSerializer.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/CompressedMessageSerializer.java
@@ -126,4 +126,9 @@ public class CompressedMessageSerializer implements
MessageSerializer<Compressed
}
}
}
+
+ /** {@inheritDoc} */
+ @Override public CompressedMessage createMessage() {
+ return new CompressedMessage();
+ }
}
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/IgniteMessageFactory.java
b/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/IgniteMessageFactory.java
index 13c8760b4c3..e9a1b7c1241 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/IgniteMessageFactory.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/IgniteMessageFactory.java
@@ -17,7 +17,6 @@
package org.apache.ignite.internal.managers.communication;
-import java.util.function.Supplier;
import org.apache.ignite.IgniteException;
import org.apache.ignite.internal.processors.cache.GridCacheMessage;
import org.apache.ignite.internal.processors.cache.GridCacheMessageDeployer;
@@ -38,9 +37,9 @@ import org.jetbrains.annotations.Nullable;
*/
public interface IgniteMessageFactory<M extends Message, CM extends
GridCacheMessage> extends MessageFactory<M> {
/** {@inheritDoc} */
- @Override default void register(short directType, Supplier<M> supplier,
MessageSerializer<M> serializer)
+ @Override default void register(short directType, MessageSerializer<M>
serializer)
throws IgniteException {
- register(directType, supplier, serializer, null, null);
+ register(directType, serializer, null, null);
}
/**
@@ -48,14 +47,13 @@ public interface IgniteMessageFactory<M extends Message, CM
extends GridCacheMes
* during construction of the class that implements this interface.
*
* @param directType Direct type ({@link Message#directType()}) to
register the message under.
- * @param supplier Message supplier.
* @param serializer Message serializer.
* @param marshaller Message marshaller, or {@code null} for
non-marshallable messages.
* @throws IgniteException If a message is already registered under the
given direct type.
*/
- default void register(short directType, Supplier<M> supplier,
MessageSerializer<M> serializer,
+ default void register(short directType, MessageSerializer<M> serializer,
@Nullable MessageMarshaller<M> marshaller) throws IgniteException {
- register(directType, supplier, serializer, marshaller, null);
+ register(directType, serializer, marshaller, null);
}
/**
@@ -63,13 +61,12 @@ public interface IgniteMessageFactory<M extends Message, CM
extends GridCacheMes
* registered during construction of the class that implements this
interface.
*
* @param directType Direct type ({@link Message#directType()}) to
register the message under.
- * @param supplier Message supplier.
* @param serializer Message serializer.
* @param marshaller Message marshaller, or {@code null} for
non-marshallable messages.
* @param deployer Message deployer, or {@code null} for messages without
deployable fields.
* @throws IgniteException If a message is already registered under the
given direct type.
*/
- public void register(short directType, Supplier<M> supplier,
MessageSerializer<M> serializer,
+ public void register(short directType, MessageSerializer<M> serializer,
@Nullable MessageMarshaller<M> marshaller, @Nullable
GridCacheMessageDeployer<CM> deployer) throws IgniteException;
/**
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/IgniteMessageFactoryImpl.java
b/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/IgniteMessageFactoryImpl.java
index d0e90a7b561..a44bbf2706e 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/IgniteMessageFactoryImpl.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/IgniteMessageFactoryImpl.java
@@ -18,7 +18,6 @@
package org.apache.ignite.internal.managers.communication;
import java.lang.reflect.Array;
-import java.util.function.Supplier;
import org.apache.ignite.IgniteException;
import org.apache.ignite.internal.MarshallableMessage;
import org.apache.ignite.internal.processors.cache.DeployableMessage;
@@ -42,9 +41,6 @@ public class IgniteMessageFactoryImpl<M extends Message, CM
extends GridCacheMes
/** Array size. */
private static final int ARR_SIZE = 1 << Short.SIZE;
- /** Message suppliers. */
- private final Supplier<M>[] msgSuppliers =
(Supplier<M>[])Array.newInstance(Supplier.class, ARR_SIZE);
-
/** Message serializers. */
private final MessageSerializer<M>[] msgSerializers =
(MessageSerializer<M>[])Array.newInstance(MessageSerializer.class, ARR_SIZE);
@@ -82,12 +78,11 @@ public class IgniteMessageFactoryImpl<M extends Message, CM
extends GridCacheMes
* Registers a message with a serializer, an optional marshaller, and an
optional deployer.
*
* @param directType Direct type ({@link Message#directType()}) to
register the message under.
- * @param supplier Message supplier.
* @param serializer Message serializer.
* @param marshaller Message marshaller, or {@code null} for {@link
NonMarshallableMessage} types.
* @param deployer Message deployer, or {@code null} for messages without
deployable fields.
*/
- @Override public void register(short directType, Supplier<M> supplier,
MessageSerializer<M> serializer,
+ @Override public void register(short directType, MessageSerializer<M>
serializer,
@Nullable MessageMarshaller<M> marshaller, @Nullable
GridCacheMessageDeployer<CM> deployer) throws IgniteException {
if (initialized) {
throw new IllegalStateException("Message factory is already
initialized. " +
@@ -95,7 +90,7 @@ public class IgniteMessageFactoryImpl<M extends Message, CM
extends GridCacheMes
}
try {
- Message msg = supplier.get();
+ Message msg = serializer.createMessage();
if (marshaller == null && msg instanceof MarshallableMessage) {
throw new IgniteException("Failed to register a message: it
implements MarshallableMessage but no" +
@@ -118,10 +113,9 @@ public class IgniteMessageFactoryImpl<M extends Message,
CM extends GridCacheMes
int idx = directTypeToIndex(directType);
- Supplier<M> curr = msgSuppliers[idx];
+ MessageSerializer<M> curr = msgSerializers[idx];
if (curr == null) {
- msgSuppliers[idx] = supplier;
msgSerializers[idx] = serializer;
msgMarshallers[idx] = marshaller;
msgDeployers[idx] = deployer;
@@ -144,12 +138,12 @@ public class IgniteMessageFactoryImpl<M extends Message,
CM extends GridCacheMes
* @throws UnknownMessageException If no message is registered under the
given {@code directType}.
*/
@Override public M create(short directType) {
- Supplier<M> supplier = msgSuppliers[directTypeToIndex(directType)];
+ MessageSerializer<M> serializer =
msgSerializers[directTypeToIndex(directType)];
- if (supplier == null)
+ if (serializer == null)
throw new UnknownMessageException(directType);
- return supplier.get();
+ return serializer.createMessage();
}
/** {@inheritDoc} */
@@ -182,7 +176,7 @@ public class IgniteMessageFactoryImpl<M extends Message, CM
extends GridCacheMes
if (cnt > 0) {
for (int i = minIdx, p = 0; i <= maxIdx; i++) {
- if (msgSuppliers[i] != null)
+ if (msgSerializers[i] != null)
res[p++] = indexToDirectType(i);
}
}
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/plugin/AbstractMarshallableMessageFactoryProvider.java
b/modules/core/src/main/java/org/apache/ignite/internal/plugin/AbstractMarshallableMessageFactoryProvider.java
index 94b3457133f..05299f7b438 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/plugin/AbstractMarshallableMessageFactoryProvider.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/plugin/AbstractMarshallableMessageFactoryProvider.java
@@ -18,7 +18,6 @@
package org.apache.ignite.internal.plugin;
import java.lang.reflect.Constructor;
-import java.util.function.Supplier;
import org.apache.ignite.IgniteException;
import org.apache.ignite.internal.MarshallableMessage;
import org.apache.ignite.internal.UseBinaryMarshaller;
@@ -64,37 +63,11 @@ public abstract class
AbstractMarshallableMessageFactoryProvider implements Mess
/** Register a message with a caller-provided {@code id}. */
protected <T extends Message> void register(IgniteMessageFactory factory,
Class<T> cls, short id) {
- Constructor<T> ctor;
-
- try {
- ctor = cls.getConstructor();
- }
- catch (NoSuchMethodException e) {
- throw new IgniteException("Failed to register message of type " +
cls.getSimpleName(), e);
- }
-
- register(factory, cls, id, () -> {
- try {
- return ctor.newInstance();
- }
- catch (Exception e) {
- throw new IgniteException("Failed to create message of type "
+ cls.getSimpleName(), e);
- }
- });
- }
-
- /**
- * Registers a message with a caller-provided {@code supplier} and its
generated serializer, marshaller (if
- * marshallable), and deployer (if any). Use this overload when {@code
cls} is package-private and so cannot be
- * instantiated by reflection from this package — pass an in-package
{@code ::new} reference as {@code supplier}.
- */
- protected <T extends Message> void register(IgniteMessageFactory factory,
Class<T> cls, short id, Supplier<Message> supplier) {
- register(factory, cls, id, supplier,
cls.getAnnotation(UseBinaryMarshaller.class) != null ? schemaAwareMarsh :
dfltMarsh);
+ register(factory, cls, id,
cls.getAnnotation(UseBinaryMarshaller.class) != null ? schemaAwareMarsh :
dfltMarsh);
}
/** */
- private static <T extends Message> void register(IgniteMessageFactory
factory, Class<T> cls, short id,
- Supplier<Message> supplier, Marshaller marsh) {
+ private static <T extends Message> void register(IgniteMessageFactory
factory, Class<T> cls, short id, Marshaller marsh) {
MessageSerializer<T> serializer = requireGenerated(cls, "Serializer",
marsh);
// A MarshallableMessage always gets a generated marshaller (the hook
call alone is a statement), so its
@@ -116,7 +89,7 @@ public abstract class
AbstractMarshallableMessageFactoryProvider implements Mess
? loadGenerated(cls, "Deployer", marsh)
: null;
- factory.register(id, supplier, serializer, marshaller, deployer);
+ factory.register(id, serializer, marshaller, deployer);
}
/** Loads the generated companion like {@link #loadGenerated}, failing
fast when it is missing. */
diff --git
a/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiAdapter.java
b/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiAdapter.java
index 49ba98811b5..850b196a747 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiAdapter.java
@@ -24,7 +24,6 @@ import java.util.Map;
import java.util.UUID;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.function.Consumer;
-import java.util.function.Supplier;
import javax.management.JMException;
import javax.management.MBeanServer;
import javax.management.ObjectName;
@@ -761,7 +760,6 @@ public abstract class IgniteSpiAdapter implements IgniteSpi
{
msgFactory0 = new IgniteMessageFactory<>() {
@Override public void register(
short directType,
- Supplier<Message> supplier,
MessageSerializer<Message> serializer,
@Nullable MessageMarshaller<Message> marshaller,
@Nullable GridCacheMessageDeployer<GridCacheMessage>
deployer
diff --git
a/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/internal/GridNioServerWrapper.java
b/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/internal/GridNioServerWrapper.java
index 5858916b3ca..7874adb5629 100644
---
a/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/internal/GridNioServerWrapper.java
+++
b/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/internal/GridNioServerWrapper.java
@@ -811,12 +811,11 @@ public class GridNioServerWrapper {
@Override public void register(
short directType,
- Supplier<Message> supplier,
MessageSerializer<Message> serializer,
@Nullable MessageMarshaller<Message> marshaller,
@Nullable GridCacheMessageDeployer<GridCacheMessage>
deployer
) throws IgniteException {
- get().register(directType, supplier, serializer,
marshaller, deployer);
+ get().register(directType, serializer, marshaller,
deployer);
}
@Nullable @Override public Message create(short type) {
diff --git
a/modules/core/src/test/java/org/apache/ignite/internal/direct/DirectMarshallingMessagesTest.java
b/modules/core/src/test/java/org/apache/ignite/internal/direct/DirectMarshallingMessagesTest.java
index b7273e53665..3e46ceae987 100644
---
a/modules/core/src/test/java/org/apache/ignite/internal/direct/DirectMarshallingMessagesTest.java
+++
b/modules/core/src/test/java/org/apache/ignite/internal/direct/DirectMarshallingMessagesTest.java
@@ -46,11 +46,7 @@ public class DirectMarshallingMessagesTest extends
GridCommonAbstractTest {
private final MessageFactory msgFactory =
new IgniteMessageFactoryImpl(new MessageFactoryProvider[] {
new CoreMessagesProvider(jdk(), jdk()),
- factory -> factory.register(
- TestNestedContainersMessage.TYPE,
- TestNestedContainersMessage::new,
- new TestNestedContainersMessageSerializer()
- )
+ factory -> factory.register(TestNestedContainersMessage.TYPE, new
TestNestedContainersMessageSerializer())
});
/** */
diff --git
a/modules/core/src/test/java/org/apache/ignite/internal/direct/stream/DirectByteBufferStreamImplByteOrderSelfTest.java
b/modules/core/src/test/java/org/apache/ignite/internal/direct/stream/DirectByteBufferStreamImplByteOrderSelfTest.java
index 5fed920d1f2..b89be4bf166 100644
---
a/modules/core/src/test/java/org/apache/ignite/internal/direct/stream/DirectByteBufferStreamImplByteOrderSelfTest.java
+++
b/modules/core/src/test/java/org/apache/ignite/internal/direct/stream/DirectByteBufferStreamImplByteOrderSelfTest.java
@@ -22,7 +22,6 @@ import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
-import java.util.function.Supplier;
import org.apache.commons.lang3.StringUtils;
import org.apache.ignite.IgniteException;
import org.apache.ignite.internal.processors.cache.version.GridCacheVersion;
@@ -89,8 +88,7 @@ public class DirectByteBufferStreamImplByteOrderSelfTest {
*/
private static DirectByteBufferStream createStream(ByteBuffer buff) {
DirectByteBufferStream stream = new DirectByteBufferStream(new
MessageFactory<>() {
- @Override public void register(short directType, Supplier<Message>
supplier,
- MessageSerializer<Message> serializer) throws IgniteException {
+ @Override public void register(short directType,
MessageSerializer<Message> serializer) throws IgniteException {
throw new UnsupportedOperationException();
}
diff --git
a/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/GridCommunicationSendMessageSelfTest.java
b/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/GridCommunicationSendMessageSelfTest.java
index a2b656f117a..56e6a0e130b 100644
---
a/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/GridCommunicationSendMessageSelfTest.java
+++
b/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/GridCommunicationSendMessageSelfTest.java
@@ -150,8 +150,8 @@ public class GridCommunicationSendMessageSelfTest extends
GridCommonAbstractTest
@Override public void initExtensions(PluginContext ctx,
ExtensionRegistry registry) {
registry.registerExtension(MessageFactoryProvider.class, new
MessageFactoryProvider() {
@Override public void registerAll(IgniteMessageFactory
factory) {
- factory.register(DIRECT_TYPE, TestValidByteIdMessage::new,
new TestValidByteIdMessageSerializer());
- factory.register(DIRECT_TYPE_OVER_BYTE,
TestOverByteIdMessage::new, new TestOverByteIdMessageSerializer());
+ factory.register(DIRECT_TYPE, new
TestValidByteIdMessageSerializer());
+ factory.register(DIRECT_TYPE_OVER_BYTE, new
TestOverByteIdMessageSerializer());
}
});
}
diff --git
a/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/GridIoManagerOrderedUnmarshalFailureTest.java
b/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/GridIoManagerOrderedUnmarshalFailureTest.java
index 146fc3a0e44..e7dadfbd7e0 100644
---
a/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/GridIoManagerOrderedUnmarshalFailureTest.java
+++
b/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/GridIoManagerOrderedUnmarshalFailureTest.java
@@ -81,7 +81,7 @@ public class GridIoManagerOrderedUnmarshalFailureTest extends
GridCommonAbstract
@Override public void initExtensions(PluginContext ctx,
ExtensionRegistry registry) {
registry.registerExtension(MessageFactoryProvider.class,
factory ->
- factory.register(TYPE, FailingUnmarshalMessage::new, new
Serializer(), new FailingMarshaller()));
+ factory.register(TYPE, new Serializer(), new
FailingMarshaller()));
}
});
@@ -232,6 +232,11 @@ public class GridIoManagerOrderedUnmarshalFailureTest
extends GridCommonAbstract
return true;
}
+
+ /** {@inheritDoc} */
+ @Override public FailingUnmarshalMessage createMessage() {
+ return new FailingUnmarshalMessage();
+ }
}
/** Fails the unmarshal of the flagged messages. */
diff --git
a/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/IgniteMessageFactoryImplTest.java
b/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/IgniteMessageFactoryImplTest.java
index 1e0e47760be..9bc7531da0a 100644
---
a/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/IgniteMessageFactoryImplTest.java
+++
b/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/IgniteMessageFactoryImplTest.java
@@ -22,6 +22,7 @@ import org.apache.ignite.internal.CoreMessagesProvider;
import org.apache.ignite.plugin.extensions.communication.Message;
import org.apache.ignite.plugin.extensions.communication.MessageFactory;
import
org.apache.ignite.plugin.extensions.communication.MessageFactoryProvider;
+import org.apache.ignite.plugin.extensions.communication.MessageSerializer;
import org.junit.Test;
import static
org.apache.ignite.internal.managers.communication.TestMessage1.TEST_MSG_1_TYPE;
@@ -46,7 +47,7 @@ public class IgniteMessageFactoryImplTest {
MessageFactory msgFactory = new IgniteMessageFactoryImpl(factories);
- msgFactory.register((short)0, () -> null, null);
+ msgFactory.register((short)0, (MessageSerializer)null);
}
/**
@@ -107,8 +108,8 @@ public class IgniteMessageFactoryImplTest {
private static class TestMessageFactoryPovider implements
MessageFactoryProvider {
/** {@inheritDoc} */
@Override public void registerAll(IgniteMessageFactory factory) {
- factory.register(TEST_MSG_1_TYPE, TestMessage1::new, new
TestMessage1Serializer());
- factory.register(TEST_MSG_42_TYPE, TestMessage42::new, new
TestMessage42Serializer());
+ factory.register(TEST_MSG_1_TYPE, new TestMessage1Serializer());
+ factory.register(TEST_MSG_42_TYPE, new TestMessage42Serializer());
}
}
@@ -118,7 +119,7 @@ public class IgniteMessageFactoryImplTest {
private static class TestMessageFactoryPoviderWithTheSameDirectType
implements MessageFactoryProvider {
/** {@inheritDoc} */
@Override public void registerAll(IgniteMessageFactory factory) {
- factory.register(TEST_MSG_1_TYPE, TestMessage1::new, new
TestMessage1Serializer());
+ factory.register(TEST_MSG_1_TYPE, new TestMessage1Serializer());
}
}
@@ -128,7 +129,7 @@ public class IgniteMessageFactoryImplTest {
private static class TestMessageFactory implements MessageFactoryProvider {
/** {@inheritDoc} */
@Override public void registerAll(IgniteMessageFactory factory) {
- factory.register(TEST_MSG_2_TYPE, TestMessage2::new, new
TestMessage2Serializer());
+ factory.register(TEST_MSG_2_TYPE, new TestMessage2Serializer());
}
}
}
diff --git
a/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/MessageDirectTypeIdConflictTest.java
b/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/MessageDirectTypeIdConflictTest.java
index 14dec7e5035..f31ee64a1ab 100644
---
a/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/MessageDirectTypeIdConflictTest.java
+++
b/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/MessageDirectTypeIdConflictTest.java
@@ -80,7 +80,7 @@ public class MessageDirectTypeIdConflictTest extends
GridCommonAbstractTest {
@Override public void initExtensions(PluginContext ctx,
ExtensionRegistry registry) {
registry.registerExtension(MessageFactoryProvider.class, new
MessageFactoryProvider() {
@Override public void registerAll(IgniteMessageFactory
factory) {
- factory.register(DIRECT_TYPE,
DuplicateDirectTypeIdMessage::new, new
DuplicateDirectTypeIdMessageSerializer());
+ factory.register(DIRECT_TYPE, new
DuplicateDirectTypeIdMessageSerializer());
}
});
}
diff --git
a/modules/core/src/test/java/org/apache/ignite/internal/util/nio/IgniteExceptionInNioWorkerSelfTest.java
b/modules/core/src/test/java/org/apache/ignite/internal/util/nio/IgniteExceptionInNioWorkerSelfTest.java
index ce3f9fbeca5..1128dc0bb41 100644
---
a/modules/core/src/test/java/org/apache/ignite/internal/util/nio/IgniteExceptionInNioWorkerSelfTest.java
+++
b/modules/core/src/test/java/org/apache/ignite/internal/util/nio/IgniteExceptionInNioWorkerSelfTest.java
@@ -113,6 +113,11 @@ public class IgniteExceptionInNioWorkerSelfTest extends
GridCommonAbstractTest {
@Override public boolean readFrom(BrokenMessage msg, MessageReader
reader) {
return true;
}
+
+ /** {@inheritDoc} */
+ @Override public BrokenMessage createMessage() {
+ return new BrokenMessage();
+ }
}
/** Plugin provider that registers {@link BrokenMessageSerializer} for
{@link BrokenMessage}. */
@@ -125,7 +130,7 @@ public class IgniteExceptionInNioWorkerSelfTest extends
GridCommonAbstractTest {
/** {@inheritDoc} */
@Override public void initExtensions(PluginContext ctx,
ExtensionRegistry registry) {
registry.registerExtension(MessageFactoryProvider.class, (factory)
->
- factory.register(-42, BrokenMessage::new, new
BrokenMessageSerializer())
+ factory.register(-42, new BrokenMessageSerializer())
);
}
}
diff --git
a/modules/core/src/test/java/org/apache/ignite/internal/util/nio/TcpCommunicationSpiSslVolatilePayloadTest.java
b/modules/core/src/test/java/org/apache/ignite/internal/util/nio/TcpCommunicationSpiSslVolatilePayloadTest.java
index 45c0d0ea029..977a23c23bc 100644
---
a/modules/core/src/test/java/org/apache/ignite/internal/util/nio/TcpCommunicationSpiSslVolatilePayloadTest.java
+++
b/modules/core/src/test/java/org/apache/ignite/internal/util/nio/TcpCommunicationSpiSslVolatilePayloadTest.java
@@ -95,10 +95,7 @@ public class TcpCommunicationSpiSslVolatilePayloadTest
extends GridAbstractCommu
/** {@inheritDoc} */
@Override protected MessageFactoryProvider customMessageFactory() {
- return f -> f.register(
- TestVolatilePayloadMessage.DIRECT_TYPE,
- TestVolatilePayloadMessage::new, new
TestVolatilePayloadMessageSerializer()
- );
+ return f -> f.register(TestVolatilePayloadMessage.DIRECT_TYPE, new
TestVolatilePayloadMessageSerializer());
}
/** {@inheritDoc} */
diff --git
a/modules/core/src/test/java/org/apache/ignite/plugin/extensions/communication/MessageMarshalOnceTest.java
b/modules/core/src/test/java/org/apache/ignite/plugin/extensions/communication/MessageMarshalOnceTest.java
index 2583e52b1b1..ad731b0ab2e 100644
---
a/modules/core/src/test/java/org/apache/ignite/plugin/extensions/communication/MessageMarshalOnceTest.java
+++
b/modules/core/src/test/java/org/apache/ignite/plugin/extensions/communication/MessageMarshalOnceTest.java
@@ -86,8 +86,8 @@ public class MessageMarshalOnceTest extends
GridCommonAbstractTest {
@Override public void initExtensions(PluginContext ctx,
ExtensionRegistry registry) {
registry.registerExtension(MessageFactoryProvider.class,
factory -> {
- factory.register(TYPE, MarshalOnceCheckMessage::new, new
Serializer(), new CountingMarshaller());
- factory.register(RETRY_TYPE, RetryCheckMessage::new, new
RetrySerializer(), new RetryCountingMarshaller());
+ factory.register(TYPE, new Serializer(), new
CountingMarshaller());
+ factory.register(RETRY_TYPE, new RetrySerializer(), new
RetryCountingMarshaller());
});
}
});
@@ -171,6 +171,11 @@ public class MessageMarshalOnceTest extends
GridCommonAbstractTest {
@Override public boolean readFrom(MarshalOnceCheckMessage msg,
MessageReader reader) {
return true;
}
+
+ /** {@inheritDoc} */
+ @Override public MarshalOnceCheckMessage createMessage() {
+ return new MarshalOnceCheckMessage();
+ }
}
/** Marshaller that only counts {@code marshal} calls — no idempotency
guard, so it counts raw invocations. */
@@ -218,6 +223,11 @@ public class MessageMarshalOnceTest extends
GridCommonAbstractTest {
@Override public boolean readFrom(RetryCheckMessage msg, MessageReader
reader) {
return true;
}
+
+ /** {@inheritDoc} */
+ @Override public RetryCheckMessage createMessage() {
+ return new RetryCheckMessage();
+ }
}
/** Marshaller that only counts {@code marshal} calls of {@link
RetryCheckMessage}. */
diff --git
a/modules/core/src/test/java/org/apache/ignite/spi/MessagesPluginProvider.java
b/modules/core/src/test/java/org/apache/ignite/spi/MessagesPluginProvider.java
index b567501f1eb..69a654b2c96 100644
---
a/modules/core/src/test/java/org/apache/ignite/spi/MessagesPluginProvider.java
+++
b/modules/core/src/test/java/org/apache/ignite/spi/MessagesPluginProvider.java
@@ -17,10 +17,8 @@
package org.apache.ignite.spi;
-import java.util.function.Supplier;
import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.internal.CoreMessagesProvider;
-import org.apache.ignite.internal.util.typedef.internal.U;
import org.apache.ignite.plugin.AbstractTestPluginProvider;
import org.apache.ignite.plugin.ExtensionRegistry;
import org.apache.ignite.plugin.PluginContext;
@@ -45,16 +43,7 @@ public class MessagesPluginProvider extends
AbstractTestPluginProvider {
short directType = CoreMessagesProvider.MAX_MESSAGE_ID + 1;
for (Class<? extends Message> msg : msgs) {
- Supplier<Message> msgSupp = () -> {
- try {
- return U.newInstance(msg);
- }
- catch (IgniteCheckedException e) {
- throw new RuntimeException(e);
- }
- };
-
- f.register(directType, msgSupp, loadSerializer(msg));
+ f.register(directType, loadSerializer(msg));
directType++;
}
diff --git
a/modules/core/src/test/java/org/apache/ignite/spi/communication/GridCacheMessageSelfTest.java
b/modules/core/src/test/java/org/apache/ignite/spi/communication/GridCacheMessageSelfTest.java
index 53570527138..b0dcace6bb6 100644
---
a/modules/core/src/test/java/org/apache/ignite/spi/communication/GridCacheMessageSelfTest.java
+++
b/modules/core/src/test/java/org/apache/ignite/spi/communication/GridCacheMessageSelfTest.java
@@ -231,11 +231,11 @@ public class GridCacheMessageSelfTest extends
GridCommonAbstractTest {
/** {@inheritDoc} */
@Override public void initExtensions(PluginContext ctx,
ExtensionRegistry registry) {
registry.registerExtension(MessageFactoryProvider.class, factory
-> {
- factory.register(TestMessage.DIRECT_TYPE, TestMessage::new,
new TestMessageSerializer());
- factory.register(GridTestMessage.DIRECT_TYPE,
GridTestMessage::new, new GridTestMessageSerializer());
- factory.register(TestMessage1.DIRECT_TYPE, TestMessage1::new,
new TestMessage1Serializer());
- factory.register(TestMessage2.DIRECT_TYPE, TestMessage2::new,
new TestMessage2Serializer());
- factory.register(TestBadMessage.DIRECT_TYPE,
TestBadMessage::new, new TestBadMessageSerializer());
+ factory.register(TestMessage.DIRECT_TYPE, new
TestMessageSerializer());
+ factory.register(GridTestMessage.DIRECT_TYPE, new
GridTestMessageSerializer());
+ factory.register(TestMessage1.DIRECT_TYPE, new
TestMessage1Serializer());
+ factory.register(TestMessage2.DIRECT_TYPE, new
TestMessage2Serializer());
+ factory.register(TestBadMessage.DIRECT_TYPE, new
TestBadMessageSerializer());
});
}
}
diff --git
a/modules/core/src/test/java/org/apache/ignite/spi/communication/GridTestMessage.java
b/modules/core/src/test/java/org/apache/ignite/spi/communication/GridTestMessage.java
index 83a6ea91775..1310ac30936 100644
---
a/modules/core/src/test/java/org/apache/ignite/spi/communication/GridTestMessage.java
+++
b/modules/core/src/test/java/org/apache/ignite/spi/communication/GridTestMessage.java
@@ -32,7 +32,7 @@ public class GridTestMessage implements Message {
/** */
public static final MessageFactoryProvider GRID_TEST_MESSAGE_FACTORY = f
-> f.register(
- GridTestMessage.DIRECT_TYPE, GridTestMessage::new, new
GridTestMessageSerializer());
+ GridTestMessage.DIRECT_TYPE, new GridTestMessageSerializer());
/** */
@Order(0)
diff --git
a/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/TestDelayMessageSerializer.java
b/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/TestDelayMessageSerializer.java
index f1e69422a93..ce905b9806f 100644
---
a/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/TestDelayMessageSerializer.java
+++
b/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/TestDelayMessageSerializer.java
@@ -50,4 +50,9 @@ public class TestDelayMessageSerializer implements
MessageSerializer<TestDelayMe
@Override public boolean readFrom(TestDelayMessage msg, MessageReader
reader) {
return true;
}
+
+ /** {@inheritDoc} */
+ @Override public TestDelayMessage createMessage() {
+ return new TestDelayMessage();
+ }
}
diff --git
a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/DiscoveryDeserializationExceptionTest.java
b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/DiscoveryDeserializationExceptionTest.java
index cfe047d58e7..62ea2d700a8 100644
---
a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/DiscoveryDeserializationExceptionTest.java
+++
b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/DiscoveryDeserializationExceptionTest.java
@@ -138,7 +138,7 @@ public class DiscoveryDeserializationExceptionTest extends
GridCommonAbstractTes
/** {@inheritDoc} */
@Override public void initExtensions(PluginContext ctx,
ExtensionRegistry registry) {
registry.registerExtension(MessageFactoryProvider.class, (factory)
->
- factory.register(MSG_DIRECT_TYPE, NotRegisteredMessage::new,
new NotRegisteredMessageSerializer())
+ factory.register(MSG_DIRECT_TYPE, new
NotRegisteredMessageSerializer())
);
}
}
diff --git
a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/DiscoveryUnmarshalVulnerabilityTest.java
b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/DiscoveryUnmarshalVulnerabilityTest.java
index 62d194d2970..a146d0f2fd9 100644
---
a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/DiscoveryUnmarshalVulnerabilityTest.java
+++
b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/DiscoveryUnmarshalVulnerabilityTest.java
@@ -91,7 +91,6 @@ public class DiscoveryUnmarshalVulnerabilityTest extends
GridCommonAbstractTest
@Override public void registerAll(IgniteMessageFactory factory) {
factory.register(
(short)(CoreMessagesProvider.MAX_MESSAGE_ID + 1),
- ExploitMessage::new,
new MessageSerializerWrapper(),
new MessageMarshallerWrapper(this));
}
@@ -271,6 +270,11 @@ public class DiscoveryUnmarshalVulnerabilityTest extends
GridCommonAbstractTest
return serde.readFrom(msg, reader);
}
+ /** {@inheritDoc} */
+ @Override public ExploitMessage createMessage() {
+ return new ExploitMessage();
+ }
+
/** */
private void initIfNecessary() {
if (init.get() && init.compareAndSet(true, false))
diff --git
a/modules/core/src/test/resources/codegen/ChildMessageSerializer.java
b/modules/core/src/test/resources/codegen/ChildMessageSerializer.java
index 9ca035db404..8f77e193422 100644
--- a/modules/core/src/test/resources/codegen/ChildMessageSerializer.java
+++ b/modules/core/src/test/resources/codegen/ChildMessageSerializer.java
@@ -28,9 +28,9 @@ import
org.apache.ignite.plugin.extensions.communication.MessageWriter;
*
* @see org.apache.ignite.internal.MessageProcessor
*/
-public class ChildMessageSerializer implements MessageSerializer<ChildMessage>
{
+public final class ChildMessageSerializer implements
MessageSerializer<ChildMessage> {
/** */
- @Override public boolean writeTo(ChildMessage msg, MessageWriter writer) {
+ @Override public final boolean writeTo(ChildMessage msg, MessageWriter
writer) {
if (!writer.isHeaderWritten()) {
if (!writer.writeHeader(msg.directType()))
return false;
@@ -68,7 +68,7 @@ public class ChildMessageSerializer implements
MessageSerializer<ChildMessage> {
}
/** */
- @Override public boolean readFrom(ChildMessage msg, MessageReader reader) {
+ @Override public final boolean readFrom(ChildMessage msg, MessageReader
reader) {
switch (reader.state()) {
case 0:
((AbstractMessage)msg).id = reader.readInt();
@@ -105,4 +105,9 @@ public class ChildMessageSerializer implements
MessageSerializer<ChildMessage> {
return true;
}
+
+ /** {@inheritDoc} */
+ @Override public final ChildMessage createMessage() {
+ return new ChildMessage();
+ }
}
\ No newline at end of file
diff --git
a/modules/core/src/test/resources/codegen/CustomMapperEnumFieldsMessageSerializer.java
b/modules/core/src/test/resources/codegen/CustomMapperEnumFieldsMessageSerializer.java
index 90c17f72b03..8d572106c43 100644
---
a/modules/core/src/test/resources/codegen/CustomMapperEnumFieldsMessageSerializer.java
+++
b/modules/core/src/test/resources/codegen/CustomMapperEnumFieldsMessageSerializer.java
@@ -30,12 +30,12 @@ import org.apache.ignite.transactions.TransactionIsolation;
*
* @see org.apache.ignite.internal.MessageProcessor
*/
-public class CustomMapperEnumFieldsMessageSerializer implements
MessageSerializer<CustomMapperEnumFieldsMessage> {
+public final class CustomMapperEnumFieldsMessageSerializer implements
MessageSerializer<CustomMapperEnumFieldsMessage> {
/** */
private final EnumMapper<TransactionIsolation> transactionIsolationMapper
= new TransactionIsolationEnumMapper();
/** */
- @Override public boolean writeTo(CustomMapperEnumFieldsMessage msg,
MessageWriter writer) {
+ @Override public final boolean writeTo(CustomMapperEnumFieldsMessage msg,
MessageWriter writer) {
if (!writer.isHeaderWritten()) {
if (!writer.writeHeader(msg.directType()))
return false;
@@ -55,7 +55,7 @@ public class CustomMapperEnumFieldsMessageSerializer
implements MessageSerialize
}
/** */
- @Override public boolean readFrom(CustomMapperEnumFieldsMessage msg,
MessageReader reader) {
+ @Override public final boolean readFrom(CustomMapperEnumFieldsMessage msg,
MessageReader reader) {
switch (reader.state()) {
case 0:
msg.txMode =
transactionIsolationMapper.decode(reader.readByte());
@@ -68,4 +68,9 @@ public class CustomMapperEnumFieldsMessageSerializer
implements MessageSerialize
return true;
}
+
+ /** {@inheritDoc} */
+ @Override public final CustomMapperEnumFieldsMessage createMessage() {
+ return new CustomMapperEnumFieldsMessage();
+ }
}
diff --git
a/modules/core/src/test/resources/codegen/DefaultMapperEnumFieldsMessageSerializer.java
b/modules/core/src/test/resources/codegen/DefaultMapperEnumFieldsMessageSerializer.java
index 245f1f29ae8..da05e0d2408 100644
---
a/modules/core/src/test/resources/codegen/DefaultMapperEnumFieldsMessageSerializer.java
+++
b/modules/core/src/test/resources/codegen/DefaultMapperEnumFieldsMessageSerializer.java
@@ -30,14 +30,14 @@ import org.apache.ignite.transactions.TransactionIsolation;
*
* @see org.apache.ignite.internal.MessageProcessor
*/
-public class DefaultMapperEnumFieldsMessageSerializer implements
MessageSerializer<DefaultMapperEnumFieldsMessage> {
+public final class DefaultMapperEnumFieldsMessageSerializer implements
MessageSerializer<DefaultMapperEnumFieldsMessage> {
/** */
private final GridCacheOperation[] gridCacheOperationVals =
GridCacheOperation.values();
/** */
private final TransactionIsolation[] transactionIsolationVals =
TransactionIsolation.values();
/** */
- @Override public boolean writeTo(DefaultMapperEnumFieldsMessage msg,
MessageWriter writer) {
+ @Override public final boolean writeTo(DefaultMapperEnumFieldsMessage msg,
MessageWriter writer) {
if (!writer.isHeaderWritten()) {
if (!writer.writeHeader(msg.directType()))
return false;
@@ -63,7 +63,7 @@ public class DefaultMapperEnumFieldsMessageSerializer
implements MessageSerializ
}
/** */
- @Override public boolean readFrom(DefaultMapperEnumFieldsMessage msg,
MessageReader reader) {
+ @Override public final boolean readFrom(DefaultMapperEnumFieldsMessage
msg, MessageReader reader) {
switch (reader.state()) {
case 0:
msg.publicEnum =
DefaultEnumMapper.INSTANCE.decode(transactionIsolationVals, reader.readByte());
@@ -84,4 +84,9 @@ public class DefaultMapperEnumFieldsMessageSerializer
implements MessageSerializ
return true;
}
+
+ /** {@inheritDoc} */
+ @Override public final DefaultMapperEnumFieldsMessage createMessage() {
+ return new DefaultMapperEnumFieldsMessage();
+ }
}
\ No newline at end of file
diff --git
a/modules/core/src/test/resources/codegen/TestCacheIdMessageDeployer.java
b/modules/core/src/test/resources/codegen/TestCacheIdMessageDeployer.java
index 00200f0d59c..9e70286b1fa 100644
--- a/modules/core/src/test/resources/codegen/TestCacheIdMessageDeployer.java
+++ b/modules/core/src/test/resources/codegen/TestCacheIdMessageDeployer.java
@@ -28,7 +28,7 @@ import
org.apache.ignite.internal.processors.cache.GridCacheSharedContext;
*
* @see org.apache.ignite.internal.MessageProcessor
*/
-public class TestCacheIdMessageDeployer implements
GridCacheMessageDeployer<TestCacheIdMessage> {
+public final class TestCacheIdMessageDeployer implements
GridCacheMessageDeployer<TestCacheIdMessage> {
/** */
@Override public void deploy(TestCacheIdMessage msg,
GridCacheSharedContext<?, ?> ctx) throws IgniteCheckedException {
GridCacheContext<?, ?> cctx = ctx.cacheContext(msg.cacheId());
diff --git
a/modules/core/src/test/resources/codegen/TestCollectionsMessageMarshaller.java
b/modules/core/src/test/resources/codegen/TestCollectionsMessageMarshaller.java
index 65756b4e70f..5a9334c38d3 100644
---
a/modules/core/src/test/resources/codegen/TestCollectionsMessageMarshaller.java
+++
b/modules/core/src/test/resources/codegen/TestCollectionsMessageMarshaller.java
@@ -30,7 +30,7 @@ import
org.apache.ignite.plugin.extensions.communication.MessageMarshaller;
*
* @see org.apache.ignite.internal.MessageProcessor
*/
-public class TestCollectionsMessageMarshaller implements
MessageMarshaller<TestCollectionsMessage> {
+public final class TestCollectionsMessageMarshaller implements
MessageMarshaller<TestCollectionsMessage> {
/** */
@Override public void marshal(TestCollectionsMessage msg,
GridKernalContext kctx, CacheObjectContext cacheObjCtx) throws
IgniteCheckedException {
CacheObjectContext ctx = cacheObjCtx;
diff --git
a/modules/core/src/test/resources/codegen/TestCollectionsMessageSerializer.java
b/modules/core/src/test/resources/codegen/TestCollectionsMessageSerializer.java
index bfd66a60f53..080c8cfaaa0 100644
---
a/modules/core/src/test/resources/codegen/TestCollectionsMessageSerializer.java
+++
b/modules/core/src/test/resources/codegen/TestCollectionsMessageSerializer.java
@@ -30,7 +30,7 @@ import
org.apache.ignite.plugin.extensions.communication.MessageWriter;
*
* @see org.apache.ignite.internal.MessageProcessor
*/
-public class TestCollectionsMessageSerializer implements
MessageSerializer<TestCollectionsMessage> {
+public final class TestCollectionsMessageSerializer implements
MessageSerializer<TestCollectionsMessage> {
/** */
private static final MessageCollectionType affTopVersionListCollDesc = new
MessageCollectionType(new
MessageItemType(MessageCollectionItemType.AFFINITY_TOPOLOGY_VERSION), false);
/** */
@@ -85,7 +85,7 @@ public class TestCollectionsMessageSerializer implements
MessageSerializer<TestC
private static final MessageCollectionType uuidListCollDesc = new
MessageCollectionType(new MessageItemType(MessageCollectionItemType.UUID),
false);
/** */
- @Override public boolean writeTo(TestCollectionsMessage msg, MessageWriter
writer) {
+ @Override public final boolean writeTo(TestCollectionsMessage msg,
MessageWriter writer) {
if (!writer.isHeaderWritten()) {
if (!writer.writeHeader(msg.directType()))
return false;
@@ -255,7 +255,7 @@ public class TestCollectionsMessageSerializer implements
MessageSerializer<TestC
}
/** */
- @Override public boolean readFrom(TestCollectionsMessage msg,
MessageReader reader) {
+ @Override public final boolean readFrom(TestCollectionsMessage msg,
MessageReader reader) {
switch (reader.state()) {
case 0:
msg.booleanArrayList =
reader.readCollection(booleanArrayListCollDesc);
@@ -468,4 +468,9 @@ public class TestCollectionsMessageSerializer implements
MessageSerializer<TestC
return true;
}
+
+ /** {@inheritDoc} */
+ @Override public final TestCollectionsMessage createMessage() {
+ return new TestCollectionsMessage();
+ }
}
\ No newline at end of file
diff --git
a/modules/core/src/test/resources/codegen/TestDeployableMessageDeployer.java
b/modules/core/src/test/resources/codegen/TestDeployableMessageDeployer.java
index f4705cafac8..d0cdb010cb4 100644
--- a/modules/core/src/test/resources/codegen/TestDeployableMessageDeployer.java
+++ b/modules/core/src/test/resources/codegen/TestDeployableMessageDeployer.java
@@ -28,7 +28,7 @@ import
org.apache.ignite.internal.processors.cache.GridCacheSharedContext;
*
* @see org.apache.ignite.internal.MessageProcessor
*/
-public class TestDeployableMessageDeployer implements
GridCacheMessageDeployer<TestDeployableMessage> {
+public final class TestDeployableMessageDeployer implements
GridCacheMessageDeployer<TestDeployableMessage> {
/** */
@Override public void deploy(TestDeployableMessage msg,
GridCacheSharedContext<?, ?> ctx) throws IgniteCheckedException {
GridCacheContext<?, ?> cctx = ctx.cacheContext(msg.cacheId());
diff --git
a/modules/core/src/test/resources/codegen/TestMapMessageMarshaller.java
b/modules/core/src/test/resources/codegen/TestMapMessageMarshaller.java
index 240a45f59e9..19927eff321 100644
--- a/modules/core/src/test/resources/codegen/TestMapMessageMarshaller.java
+++ b/modules/core/src/test/resources/codegen/TestMapMessageMarshaller.java
@@ -33,7 +33,7 @@ import
org.apache.ignite.plugin.extensions.communication.MessageMarshaller;
*
* @see org.apache.ignite.internal.MessageProcessor
*/
-public class TestMapMessageMarshaller implements
MessageMarshaller<TestMapMessage> {
+public final class TestMapMessageMarshaller implements
MessageMarshaller<TestMapMessage> {
/** */
@Override public void marshal(TestMapMessage msg, GridKernalContext kctx,
CacheObjectContext cacheObjCtx) throws IgniteCheckedException {
CacheObjectContext ctx = cacheObjCtx;
diff --git
a/modules/core/src/test/resources/codegen/TestMapMessageSerializer.java
b/modules/core/src/test/resources/codegen/TestMapMessageSerializer.java
index d282801982b..08c7cb117f0 100644
--- a/modules/core/src/test/resources/codegen/TestMapMessageSerializer.java
+++ b/modules/core/src/test/resources/codegen/TestMapMessageSerializer.java
@@ -31,7 +31,7 @@ import
org.apache.ignite.plugin.extensions.communication.MessageWriter;
*
* @see org.apache.ignite.internal.MessageProcessor
*/
-public class TestMapMessageSerializer implements
MessageSerializer<TestMapMessage> {
+public final class TestMapMessageSerializer implements
MessageSerializer<TestMapMessage> {
/** */
private static final MessageMapType affTopVersionIgniteUuidMapCollDesc =
new MessageMapType(new
MessageItemType(MessageCollectionItemType.AFFINITY_TOPOLOGY_VERSION), new
MessageItemType(MessageCollectionItemType.IGNITE_UUID), false);
/** */
@@ -86,7 +86,7 @@ public class TestMapMessageSerializer implements
MessageSerializer<TestMapMessag
private static final MessageMapType uuidStringMapCollDesc = new
MessageMapType(new MessageItemType(MessageCollectionItemType.UUID), new
MessageItemType(MessageCollectionItemType.STRING), false);
/** */
- @Override public boolean writeTo(TestMapMessage msg, MessageWriter writer)
{
+ @Override public final boolean writeTo(TestMapMessage msg, MessageWriter
writer) {
if (!writer.isHeaderWritten()) {
if (!writer.writeHeader(msg.directType()))
return false;
@@ -256,7 +256,7 @@ public class TestMapMessageSerializer implements
MessageSerializer<TestMapMessag
}
/** */
- @Override public boolean readFrom(TestMapMessage msg, MessageReader
reader) {
+ @Override public final boolean readFrom(TestMapMessage msg, MessageReader
reader) {
switch (reader.state()) {
case 0:
msg.booleanArrayBoxedLongMap =
reader.readMap(booleanArrayBoxedLongMapCollDesc);
@@ -469,4 +469,9 @@ public class TestMapMessageSerializer implements
MessageSerializer<TestMapMessag
return true;
}
+
+ /** {@inheritDoc} */
+ @Override public final TestMapMessage createMessage() {
+ return new TestMapMessage();
+ }
}
\ No newline at end of file
diff --git
a/modules/core/src/test/resources/codegen/TestMarshallableMessageMarshaller.java
b/modules/core/src/test/resources/codegen/TestMarshallableMessageMarshaller.java
index 1b6000e40b4..689ecaa39d4 100644
---
a/modules/core/src/test/resources/codegen/TestMarshallableMessageMarshaller.java
+++
b/modules/core/src/test/resources/codegen/TestMarshallableMessageMarshaller.java
@@ -29,7 +29,7 @@ import
org.apache.ignite.plugin.extensions.communication.MessageMarshaller;
*
* @see org.apache.ignite.internal.MessageProcessor
*/
-public class TestMarshallableMessageMarshaller implements
MessageMarshaller<TestMarshallableMessage> {
+public final class TestMarshallableMessageMarshaller implements
MessageMarshaller<TestMarshallableMessage> {
/** */
private final Marshaller marshaller;
diff --git
a/modules/core/src/test/resources/codegen/TestMarshallableMessageSerializer.java
b/modules/core/src/test/resources/codegen/TestMarshallableMessageSerializer.java
index 04b0bbafe71..b48bc85b38b 100644
---
a/modules/core/src/test/resources/codegen/TestMarshallableMessageSerializer.java
+++
b/modules/core/src/test/resources/codegen/TestMarshallableMessageSerializer.java
@@ -27,9 +27,9 @@ import
org.apache.ignite.plugin.extensions.communication.MessageWriter;
*
* @see org.apache.ignite.internal.MessageProcessor
*/
-public class TestMarshallableMessageSerializer implements
MessageSerializer<TestMarshallableMessage> {
+public final class TestMarshallableMessageSerializer implements
MessageSerializer<TestMarshallableMessage> {
/** */
- @Override public boolean writeTo(TestMarshallableMessage msg,
MessageWriter writer) {
+ @Override public final boolean writeTo(TestMarshallableMessage msg,
MessageWriter writer) {
if (!writer.isHeaderWritten()) {
if (!writer.writeHeader(msg.directType()))
return false;
@@ -61,7 +61,7 @@ public class TestMarshallableMessageSerializer implements
MessageSerializer<Test
}
/** */
- @Override public boolean readFrom(TestMarshallableMessage msg,
MessageReader reader) {
+ @Override public final boolean readFrom(TestMarshallableMessage msg,
MessageReader reader) {
switch (reader.state()) {
case 0:
msg.iv = reader.readInt();
@@ -90,4 +90,9 @@ public class TestMarshallableMessageSerializer implements
MessageSerializer<Test
return true;
}
+
+ /** {@inheritDoc} */
+ @Override public final TestMarshallableMessage createMessage() {
+ return new TestMarshallableMessage();
+ }
}
diff --git
a/modules/core/src/test/resources/codegen/TestMarshalledArrayMapMessageMarshaller.java
b/modules/core/src/test/resources/codegen/TestMarshalledArrayMapMessageMarshaller.java
index 3fa9b77f4a5..529c2e22bdd 100644
---
a/modules/core/src/test/resources/codegen/TestMarshalledArrayMapMessageMarshaller.java
+++
b/modules/core/src/test/resources/codegen/TestMarshalledArrayMapMessageMarshaller.java
@@ -35,7 +35,7 @@ import
org.apache.ignite.plugin.extensions.communication.MessageMarshaller;
*
* @see org.apache.ignite.internal.MessageProcessor
*/
-public class TestMarshalledArrayMapMessageMarshaller implements
MessageMarshaller<TestMarshalledArrayMapMessage> {
+public final class TestMarshalledArrayMapMessageMarshaller implements
MessageMarshaller<TestMarshalledArrayMapMessage> {
/** */
@Override public void marshal(TestMarshalledArrayMapMessage msg,
GridKernalContext kctx, CacheObjectContext cacheObjCtx) throws
IgniteCheckedException {
IgniteMessageFactory msgFactory =
(IgniteMessageFactory)kctx.messageFactory();
diff --git
a/modules/core/src/test/resources/codegen/TestMarshalledArrayMapMessageSerializer.java
b/modules/core/src/test/resources/codegen/TestMarshalledArrayMapMessageSerializer.java
index 15f8c4992f2..bc59bc7d808 100644
---
a/modules/core/src/test/resources/codegen/TestMarshalledArrayMapMessageSerializer.java
+++
b/modules/core/src/test/resources/codegen/TestMarshalledArrayMapMessageSerializer.java
@@ -33,7 +33,7 @@ import
org.apache.ignite.plugin.extensions.communication.MessageWriter;
*
* @see org.apache.ignite.internal.MessageProcessor
*/
-public class TestMarshalledArrayMapMessageSerializer implements
MessageSerializer<TestMarshalledArrayMapMessage> {
+public final class TestMarshalledArrayMapMessageSerializer implements
MessageSerializer<TestMarshalledArrayMapMessage> {
/** */
private static final MessageArrayType fixedMapKeysCollDesc = new
MessageArrayType(new MessageItemType(MessageCollectionItemType.MSG),
GridTopicMessage.class);
/** */
@@ -44,7 +44,7 @@ public class TestMarshalledArrayMapMessageSerializer
implements MessageSerialize
private static final MessageArrayType mapValsCollDesc = new
MessageArrayType(new MessageCollectionType(new
MessageItemType(MessageCollectionItemType.MSG), false), List.class);
/** */
- @Override public boolean writeTo(TestMarshalledArrayMapMessage msg,
MessageWriter writer) {
+ @Override public final boolean writeTo(TestMarshalledArrayMapMessage msg,
MessageWriter writer) {
if (!writer.isHeaderWritten()) {
if (!writer.writeHeader(msg.directType()))
return false;
@@ -82,7 +82,7 @@ public class TestMarshalledArrayMapMessageSerializer
implements MessageSerialize
}
/** */
- @Override public boolean readFrom(TestMarshalledArrayMapMessage msg,
MessageReader reader) {
+ @Override public final boolean readFrom(TestMarshalledArrayMapMessage msg,
MessageReader reader) {
switch (reader.state()) {
case 0:
msg.mapKeys = reader.readObjectArray(mapKeysCollDesc);
@@ -119,4 +119,9 @@ public class TestMarshalledArrayMapMessageSerializer
implements MessageSerialize
return true;
}
+
+ /** {@inheritDoc} */
+ @Override public final TestMarshalledArrayMapMessage createMessage() {
+ return new TestMarshalledArrayMapMessage();
+ }
}
\ No newline at end of file
diff --git
a/modules/core/src/test/resources/codegen/TestMarshalledCollectionMessageMarshaller.java
b/modules/core/src/test/resources/codegen/TestMarshalledCollectionMessageMarshaller.java
index 2fc222b7f4a..ac0e941aba6 100644
---
a/modules/core/src/test/resources/codegen/TestMarshalledCollectionMessageMarshaller.java
+++
b/modules/core/src/test/resources/codegen/TestMarshalledCollectionMessageMarshaller.java
@@ -30,7 +30,7 @@ import
org.apache.ignite.plugin.extensions.communication.MessageMarshaller;
*
* @see org.apache.ignite.internal.MessageProcessor
*/
-public class TestMarshalledCollectionMessageMarshaller implements
MessageMarshaller<TestMarshalledCollectionMessage> {
+public final class TestMarshalledCollectionMessageMarshaller implements
MessageMarshaller<TestMarshalledCollectionMessage> {
/** */
@Override public void marshal(TestMarshalledCollectionMessage msg,
GridKernalContext kctx, CacheObjectContext cacheObjCtx) throws
IgniteCheckedException {
if (msg.keys != null && msg.keysArr == null)
diff --git
a/modules/core/src/test/resources/codegen/TestMarshalledCollectionMessageSerializer.java
b/modules/core/src/test/resources/codegen/TestMarshalledCollectionMessageSerializer.java
index c87f1bea77d..43f7bf2f2e9 100644
---
a/modules/core/src/test/resources/codegen/TestMarshalledCollectionMessageSerializer.java
+++
b/modules/core/src/test/resources/codegen/TestMarshalledCollectionMessageSerializer.java
@@ -31,12 +31,12 @@ import
org.apache.ignite.plugin.extensions.communication.MessageWriter;
*
* @see org.apache.ignite.internal.MessageProcessor
*/
-public class TestMarshalledCollectionMessageSerializer implements
MessageSerializer<TestMarshalledCollectionMessage> {
+public final class TestMarshalledCollectionMessageSerializer implements
MessageSerializer<TestMarshalledCollectionMessage> {
/** */
private static final MessageArrayType keysArrCollDesc = new
MessageArrayType(new
MessageItemType(MessageCollectionItemType.GRID_CACHE_VERSION),
GridCacheVersion.class);
/** */
- @Override public boolean writeTo(TestMarshalledCollectionMessage msg,
MessageWriter writer) {
+ @Override public final boolean writeTo(TestMarshalledCollectionMessage
msg, MessageWriter writer) {
if (!writer.isHeaderWritten()) {
if (!writer.writeHeader(msg.directType()))
return false;
@@ -56,7 +56,7 @@ public class TestMarshalledCollectionMessageSerializer
implements MessageSeriali
}
/** */
- @Override public boolean readFrom(TestMarshalledCollectionMessage msg,
MessageReader reader) {
+ @Override public final boolean readFrom(TestMarshalledCollectionMessage
msg, MessageReader reader) {
switch (reader.state()) {
case 0:
msg.keysArr = reader.readObjectArray(keysArrCollDesc);
@@ -69,4 +69,9 @@ public class TestMarshalledCollectionMessageSerializer
implements MessageSeriali
return true;
}
+
+ /** {@inheritDoc} */
+ @Override public final TestMarshalledCollectionMessage createMessage() {
+ return new TestMarshalledCollectionMessage();
+ }
}
\ No newline at end of file
diff --git
a/modules/core/src/test/resources/codegen/TestMarshalledMapMessageMarshaller.java
b/modules/core/src/test/resources/codegen/TestMarshalledMapMessageMarshaller.java
index 5aef2b06ced..a2f346a8f89 100644
---
a/modules/core/src/test/resources/codegen/TestMarshalledMapMessageMarshaller.java
+++
b/modules/core/src/test/resources/codegen/TestMarshalledMapMessageMarshaller.java
@@ -31,7 +31,7 @@ import
org.apache.ignite.plugin.extensions.communication.MessageMarshaller;
*
* @see org.apache.ignite.internal.MessageProcessor
*/
-public class TestMarshalledMapMessageMarshaller implements
MessageMarshaller<TestMarshalledMapMessage> {
+public final class TestMarshalledMapMessageMarshaller implements
MessageMarshaller<TestMarshalledMapMessage> {
/** */
@Override public void marshal(TestMarshalledMapMessage msg,
GridKernalContext kctx, CacheObjectContext cacheObjCtx) throws
IgniteCheckedException {
if (msg.theMap != null && msg.mapKeys == null) {
diff --git
a/modules/core/src/test/resources/codegen/TestMarshalledMapMessageSerializer.java
b/modules/core/src/test/resources/codegen/TestMarshalledMapMessageSerializer.java
index 8320b6e22b8..add9975d57b 100644
---
a/modules/core/src/test/resources/codegen/TestMarshalledMapMessageSerializer.java
+++
b/modules/core/src/test/resources/codegen/TestMarshalledMapMessageSerializer.java
@@ -30,14 +30,14 @@ import
org.apache.ignite.plugin.extensions.communication.MessageWriter;
*
* @see org.apache.ignite.internal.MessageProcessor
*/
-public class TestMarshalledMapMessageSerializer implements
MessageSerializer<TestMarshalledMapMessage> {
+public final class TestMarshalledMapMessageSerializer implements
MessageSerializer<TestMarshalledMapMessage> {
/** */
private static final MessageCollectionType mapKeysCollDesc = new
MessageCollectionType(new
MessageItemType(MessageCollectionItemType.GRID_CACHE_VERSION), false);
/** */
private static final MessageCollectionType mapValsCollDesc = new
MessageCollectionType(new
MessageItemType(MessageCollectionItemType.GRID_CACHE_VERSION), false);
/** */
- @Override public boolean writeTo(TestMarshalledMapMessage msg,
MessageWriter writer) {
+ @Override public final boolean writeTo(TestMarshalledMapMessage msg,
MessageWriter writer) {
if (!writer.isHeaderWritten()) {
if (!writer.writeHeader(msg.directType()))
return false;
@@ -63,7 +63,7 @@ public class TestMarshalledMapMessageSerializer implements
MessageSerializer<Tes
}
/** */
- @Override public boolean readFrom(TestMarshalledMapMessage msg,
MessageReader reader) {
+ @Override public final boolean readFrom(TestMarshalledMapMessage msg,
MessageReader reader) {
switch (reader.state()) {
case 0:
msg.mapKeys = reader.readCollection(mapKeysCollDesc);
@@ -84,4 +84,9 @@ public class TestMarshalledMapMessageSerializer implements
MessageSerializer<Tes
return true;
}
+
+ /** {@inheritDoc} */
+ @Override public final TestMarshalledMapMessage createMessage() {
+ return new TestMarshalledMapMessage();
+ }
}
\ No newline at end of file
diff --git
a/modules/core/src/test/resources/codegen/TestMarshalledMessageMarshaller.java
b/modules/core/src/test/resources/codegen/TestMarshalledMessageMarshaller.java
index 60de55497a9..77cc8daa382 100644
---
a/modules/core/src/test/resources/codegen/TestMarshalledMessageMarshaller.java
+++
b/modules/core/src/test/resources/codegen/TestMarshalledMessageMarshaller.java
@@ -30,7 +30,7 @@ import
org.apache.ignite.plugin.extensions.communication.MessageMarshaller;
*
* @see org.apache.ignite.internal.MessageProcessor
*/
-public class TestMarshalledMessageMarshaller implements
MessageMarshaller<TestMarshalledMessage> {
+public final class TestMarshalledMessageMarshaller implements
MessageMarshaller<TestMarshalledMessage> {
/** */
private final Marshaller marshaller;
diff --git
a/modules/core/src/test/resources/codegen/TestMarshalledMessageSerializer.java
b/modules/core/src/test/resources/codegen/TestMarshalledMessageSerializer.java
index 6315a468831..fa81057b604 100644
---
a/modules/core/src/test/resources/codegen/TestMarshalledMessageSerializer.java
+++
b/modules/core/src/test/resources/codegen/TestMarshalledMessageSerializer.java
@@ -27,9 +27,9 @@ import
org.apache.ignite.plugin.extensions.communication.MessageWriter;
*
* @see org.apache.ignite.internal.MessageProcessor
*/
-public class TestMarshalledMessageSerializer implements
MessageSerializer<TestMarshalledMessage> {
+public final class TestMarshalledMessageSerializer implements
MessageSerializer<TestMarshalledMessage> {
/** */
- @Override public boolean writeTo(TestMarshalledMessage msg, MessageWriter
writer) {
+ @Override public final boolean writeTo(TestMarshalledMessage msg,
MessageWriter writer) {
if (!writer.isHeaderWritten()) {
if (!writer.writeHeader(msg.directType()))
return false;
@@ -49,7 +49,7 @@ public class TestMarshalledMessageSerializer implements
MessageSerializer<TestMa
}
/** */
- @Override public boolean readFrom(TestMarshalledMessage msg, MessageReader
reader) {
+ @Override public final boolean readFrom(TestMarshalledMessage msg,
MessageReader reader) {
switch (reader.state()) {
case 0:
msg.dataBytes = reader.readByteArray();
@@ -62,4 +62,9 @@ public class TestMarshalledMessageSerializer implements
MessageSerializer<TestMa
return true;
}
+
+ /** {@inheritDoc} */
+ @Override public final TestMarshalledMessage createMessage() {
+ return new TestMarshalledMessage();
+ }
}
\ No newline at end of file
diff --git
a/modules/core/src/test/resources/codegen/TestMarshalledObjectsMessageMarshaller.java
b/modules/core/src/test/resources/codegen/TestMarshalledObjectsMessageMarshaller.java
index 4f1aa050e0a..5ebabc94f61 100644
---
a/modules/core/src/test/resources/codegen/TestMarshalledObjectsMessageMarshaller.java
+++
b/modules/core/src/test/resources/codegen/TestMarshalledObjectsMessageMarshaller.java
@@ -33,7 +33,7 @@ import
org.apache.ignite.plugin.extensions.communication.MessageMarshaller;
*
* @see org.apache.ignite.internal.MessageProcessor
*/
-public class TestMarshalledObjectsMessageMarshaller implements
MessageMarshaller<TestMarshalledObjectsMessage> {
+public final class TestMarshalledObjectsMessageMarshaller implements
MessageMarshaller<TestMarshalledObjectsMessage> {
/** */
private final Marshaller marshaller;
diff --git
a/modules/core/src/test/resources/codegen/TestMarshalledObjectsMessageSerializer.java
b/modules/core/src/test/resources/codegen/TestMarshalledObjectsMessageSerializer.java
index e5464b85916..a07b7011929 100644
---
a/modules/core/src/test/resources/codegen/TestMarshalledObjectsMessageSerializer.java
+++
b/modules/core/src/test/resources/codegen/TestMarshalledObjectsMessageSerializer.java
@@ -30,12 +30,12 @@ import
org.apache.ignite.plugin.extensions.communication.MessageWriter;
*
* @see org.apache.ignite.internal.MessageProcessor
*/
-public class TestMarshalledObjectsMessageSerializer implements
MessageSerializer<TestMarshalledObjectsMessage> {
+public final class TestMarshalledObjectsMessageSerializer implements
MessageSerializer<TestMarshalledObjectsMessage> {
/** */
private static final MessageCollectionType dataBytesCollDesc = new
MessageCollectionType(new MessageItemType(MessageCollectionItemType.BYTE_ARR),
false);
/** */
- @Override public boolean writeTo(TestMarshalledObjectsMessage msg,
MessageWriter writer) {
+ @Override public final boolean writeTo(TestMarshalledObjectsMessage msg,
MessageWriter writer) {
if (!writer.isHeaderWritten()) {
if (!writer.writeHeader(msg.directType()))
return false;
@@ -55,7 +55,7 @@ public class TestMarshalledObjectsMessageSerializer
implements MessageSerializer
}
/** */
- @Override public boolean readFrom(TestMarshalledObjectsMessage msg,
MessageReader reader) {
+ @Override public final boolean readFrom(TestMarshalledObjectsMessage msg,
MessageReader reader) {
switch (reader.state()) {
case 0:
msg.dataBytes = reader.readCollection(dataBytesCollDesc);
@@ -68,4 +68,9 @@ public class TestMarshalledObjectsMessageSerializer
implements MessageSerializer
return true;
}
+
+ /** {@inheritDoc} */
+ @Override public final TestMarshalledObjectsMessage createMessage() {
+ return new TestMarshalledObjectsMessage();
+ }
}
\ No newline at end of file
diff --git a/modules/core/src/test/resources/codegen/TestMessageMarshaller.java
b/modules/core/src/test/resources/codegen/TestMessageMarshaller.java
index 83f2af3624e..7402ff749fc 100644
--- a/modules/core/src/test/resources/codegen/TestMessageMarshaller.java
+++ b/modules/core/src/test/resources/codegen/TestMessageMarshaller.java
@@ -29,7 +29,7 @@ import
org.apache.ignite.plugin.extensions.communication.MessageMarshaller;
*
* @see org.apache.ignite.internal.MessageProcessor
*/
-public class TestMessageMarshaller implements MessageMarshaller<TestMessage> {
+public final class TestMessageMarshaller implements
MessageMarshaller<TestMessage> {
/** */
@Override public void marshal(TestMessage msg, GridKernalContext kctx,
CacheObjectContext cacheObjCtx) throws IgniteCheckedException {
CacheObjectContext ctx = cacheObjCtx;
diff --git a/modules/core/src/test/resources/codegen/TestMessageSerializer.java
b/modules/core/src/test/resources/codegen/TestMessageSerializer.java
index 4d42635468b..7aa0a054471 100644
--- a/modules/core/src/test/resources/codegen/TestMessageSerializer.java
+++ b/modules/core/src/test/resources/codegen/TestMessageSerializer.java
@@ -31,7 +31,7 @@ import
org.apache.ignite.plugin.extensions.communication.MessageWriter;
*
* @see org.apache.ignite.internal.MessageProcessor
*/
-public class TestMessageSerializer implements MessageSerializer<TestMessage> {
+public final class TestMessageSerializer implements
MessageSerializer<TestMessage> {
/** */
private static final MessageArrayType intMatrixCollDesc = new
MessageArrayType(new MessageItemType(MessageCollectionItemType.INT_ARR),
int[].class);
/** */
@@ -40,7 +40,7 @@ public class TestMessageSerializer implements
MessageSerializer<TestMessage> {
private static final MessageArrayType verArrCollDesc = new
MessageArrayType(new
MessageItemType(MessageCollectionItemType.GRID_CACHE_VERSION),
GridCacheVersion.class);
/** */
- @Override public boolean writeTo(TestMessage msg, MessageWriter writer) {
+ @Override public final boolean writeTo(TestMessage msg, MessageWriter
writer) {
if (!writer.isHeaderWritten()) {
if (!writer.writeHeader(msg.directType()))
return false;
@@ -150,7 +150,7 @@ public class TestMessageSerializer implements
MessageSerializer<TestMessage> {
}
/** */
- @Override public boolean readFrom(TestMessage msg, MessageReader reader) {
+ @Override public final boolean readFrom(TestMessage msg, MessageReader
reader) {
switch (reader.state()) {
case 0:
msg.id = reader.readInt();
@@ -283,4 +283,9 @@ public class TestMessageSerializer implements
MessageSerializer<TestMessage> {
return true;
}
+
+ /** {@inheritDoc} */
+ @Override public final TestMessage createMessage() {
+ return new TestMessage();
+ }
}
\ No newline at end of file
diff --git
a/modules/core/src/test/resources/codegen/TestNestedDeployMessageDeployer.java
b/modules/core/src/test/resources/codegen/TestNestedDeployMessageDeployer.java
index 3f75e24b49d..43a79476562 100644
---
a/modules/core/src/test/resources/codegen/TestNestedDeployMessageDeployer.java
+++
b/modules/core/src/test/resources/codegen/TestNestedDeployMessageDeployer.java
@@ -27,7 +27,7 @@ import
org.apache.ignite.internal.processors.cache.GridCacheSharedContext;
*
* @see org.apache.ignite.internal.MessageProcessor
*/
-public class TestNestedDeployMessageDeployer implements
GridCacheMessageDeployer<TestNestedDeployMessage> {
+public final class TestNestedDeployMessageDeployer implements
GridCacheMessageDeployer<TestNestedDeployMessage> {
/** */
@Override public void deploy(TestNestedDeployMessage msg,
GridCacheSharedContext<?, ?> ctx) throws IgniteCheckedException {
GridCacheMessageDeployer.deploy(ctx.kernalContext().messageFactory(),
msg.nested, ctx);
diff --git
a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/twostep/msg/GridH2Null.java
b/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/twostep/msg/GridH2Null.java
index 5fcdf6988fc..4eba0cad3e7 100644
---
a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/twostep/msg/GridH2Null.java
+++
b/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/twostep/msg/GridH2Null.java
@@ -26,7 +26,7 @@ import org.h2.value.ValueNull;
*/
public class GridH2Null extends GridH2ValueMessage {
/** */
- public static GridH2Null INSTANCE = new GridH2Null();
+ public static final GridH2Null INSTANCE = new GridH2Null();
/**
* Disallow new instance creation.
diff --git
a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/twostep/msg/GridH2ValueMessageFactory.java
b/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/twostep/msg/GridH2ValueMessageFactory.java
index 54063c9a5c8..15aa19e0f80 100644
---
a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/twostep/msg/GridH2ValueMessageFactory.java
+++
b/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/twostep/msg/GridH2ValueMessageFactory.java
@@ -24,7 +24,6 @@ import java.util.List;
import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.internal.GridKernalContext;
import org.apache.ignite.internal.managers.communication.IgniteMessageFactory;
-import org.apache.ignite.internal.processors.query.h2.QueryTable;
import org.apache.ignite.internal.processors.query.h2.QueryTableSerializer;
import
org.apache.ignite.internal.processors.query.h2.opt.GridH2ValueCacheObject;
import org.apache.ignite.plugin.extensions.communication.Message;
@@ -37,34 +36,34 @@ import org.h2.value.Value;
public class GridH2ValueMessageFactory implements MessageFactoryProvider {
/** {@inheritDoc} */
@Override public void registerAll(IgniteMessageFactory factory) {
- factory.register(-4, () -> GridH2Null.INSTANCE, new
GridH2NullSerializer());
- factory.register(-5, GridH2Boolean::new, new
GridH2BooleanSerializer());
- factory.register(-6, GridH2Byte::new, new GridH2ByteSerializer());
- factory.register(-7, GridH2Short::new, new GridH2ShortSerializer());
- factory.register(-8, GridH2Integer::new, new
GridH2IntegerSerializer());
- factory.register(-9, GridH2Long::new, new GridH2LongSerializer());
- factory.register(-10, GridH2Decimal::new, new
GridH2DecimalSerializer());
- factory.register(-11, GridH2Double::new, new GridH2DoubleSerializer());
- factory.register(-12, GridH2Float::new, new GridH2FloatSerializer());
- factory.register(-13, GridH2Time::new, new GridH2TimeSerializer());
- factory.register(-14, GridH2Date::new, new GridH2DateSerializer());
- factory.register(-15, GridH2Timestamp::new, new
GridH2TimestampSerializer());
- factory.register(-16, GridH2Bytes::new, new GridH2BytesSerializer());
- factory.register(-17, GridH2String::new, new GridH2StringSerializer());
- factory.register(-18, GridH2Array::new, new GridH2ArraySerializer());
- factory.register(-19, GridH2JavaObject::new, new
GridH2JavaObjectSerializer());
- factory.register(-20, GridH2Uuid::new, new GridH2UuidSerializer());
- factory.register(-21, GridH2Geometry::new, new
GridH2GeometrySerializer());
- factory.register(-22, GridH2CacheObject::new, new
GridH2CacheObjectSerializer());
- factory.register(-30, GridH2IndexRangeRequest::new, new
GridH2IndexRangeRequestSerializer());
- factory.register(-31, GridH2IndexRangeResponse::new, new
GridH2IndexRangeResponseSerializer());
- factory.register(-32, GridH2RowMessage::new, new
GridH2RowMessageSerializer());
- factory.register(-33, GridH2QueryRequest::new, new
GridH2QueryRequestSerializer());
- factory.register(-34, GridH2RowRange::new, new
GridH2RowRangeSerializer());
- factory.register(-35, GridH2RowRangeBounds::new, new
GridH2RowRangeBoundsSerializer());
- factory.register(-54, QueryTable::new, new QueryTableSerializer());
- factory.register(-55, GridH2DmlRequest::new, new
GridH2DmlRequestSerializer());
- factory.register(-56, GridH2DmlResponse::new, new
GridH2DmlResponseSerializer());
+ factory.register(-4, new GridH2NullSerializer());
+ factory.register(-5, new GridH2BooleanSerializer());
+ factory.register(-6, new GridH2ByteSerializer());
+ factory.register(-7, new GridH2ShortSerializer());
+ factory.register(-8, new GridH2IntegerSerializer());
+ factory.register(-9, new GridH2LongSerializer());
+ factory.register(-10, new GridH2DecimalSerializer());
+ factory.register(-11, new GridH2DoubleSerializer());
+ factory.register(-12, new GridH2FloatSerializer());
+ factory.register(-13, new GridH2TimeSerializer());
+ factory.register(-14, new GridH2DateSerializer());
+ factory.register(-15, new GridH2TimestampSerializer());
+ factory.register(-16, new GridH2BytesSerializer());
+ factory.register(-17, new GridH2StringSerializer());
+ factory.register(-18, new GridH2ArraySerializer());
+ factory.register(-19, new GridH2JavaObjectSerializer());
+ factory.register(-20, new GridH2UuidSerializer());
+ factory.register(-21, new GridH2GeometrySerializer());
+ factory.register(-22, new GridH2CacheObjectSerializer());
+ factory.register(-30, new GridH2IndexRangeRequestSerializer());
+ factory.register(-31, new GridH2IndexRangeResponseSerializer());
+ factory.register(-32, new GridH2RowMessageSerializer());
+ factory.register(-33, new GridH2QueryRequestSerializer());
+ factory.register(-34, new GridH2RowRangeSerializer());
+ factory.register(-35, new GridH2RowRangeBoundsSerializer());
+ factory.register(-54, new QueryTableSerializer());
+ factory.register(-55, new GridH2DmlRequestSerializer());
+ factory.register(-56, new GridH2DmlResponseSerializer());
}
/**
diff --git
a/modules/nio/src/main/java/org/apache/ignite/plugin/extensions/communication/MessageFactory.java
b/modules/nio/src/main/java/org/apache/ignite/plugin/extensions/communication/MessageFactory.java
index cea29ed62f0..c0e2061e57d 100644
---
a/modules/nio/src/main/java/org/apache/ignite/plugin/extensions/communication/MessageFactory.java
+++
b/modules/nio/src/main/java/org/apache/ignite/plugin/extensions/communication/MessageFactory.java
@@ -21,7 +21,7 @@ import java.util.function.Supplier;
import org.apache.ignite.IgniteException;
/**
- * Message factory for all communication messages registered using {@link
#register(short, Supplier, MessageSerializer)} method call.
+ * Message factory for all communication messages registered using {@link
#register(short, MessageSerializer)} method call.
*/
public interface MessageFactory<T extends Message> {
/**
@@ -34,7 +34,7 @@ public interface MessageFactory<T extends Message> {
* @throws IgniteException In case of attempt to register message with
direct type which is already registered.
* @throws IllegalStateException On any invocation of this method when
class which implements this interface
* is alredy constructed.
- * @deprecated Use {@link #register(short, Supplier, MessageSerializer)}
instead.
+ * @deprecated Use {@link #register(short, MessageSerializer)} instead.
*/
@Deprecated(forRemoval = true)
default void register(short directType, Supplier<T> supplier) throws
IgniteException {
@@ -51,7 +51,7 @@ public interface MessageFactory<T extends Message> {
* @throws IgniteException In case of attempt to register message with
direct type which is already registered.
* @throws IllegalStateException On any invocation of this method when
class which implements this interface
* is alredy constructed.
- * @deprecated Use {@link #register(int, Supplier, MessageSerializer)}
instead.
+ * @deprecated Use {@link #register(int, MessageSerializer)} instead.
*/
@Deprecated(forRemoval = true)
default void register(int directType, Supplier<T> supplier) throws
IgniteException {
@@ -64,13 +64,12 @@ public interface MessageFactory<T extends Message> {
* throw {@link IllegalStateException} exception.
*
* @param directType Direct type.
- * @param supplier Message factory.
* @param serializer Message serializer.
* @throws IgniteException In case of attempt to register message with
direct type which is already registered.
* @throws IllegalStateException On any invocation of this method when
class which implements this interface
* is alredy constructed.
*/
- public void register(short directType, Supplier<T> supplier,
MessageSerializer<T> serializer) throws IgniteException;
+ public void register(short directType, MessageSerializer<T> serializer)
throws IgniteException;
/**
* Register message factory with given direct type and serializer. The
direct type is also registered
@@ -82,14 +81,13 @@ public interface MessageFactory<T extends Message> {
* throw {@link IllegalStateException} exception.
*
* @param directType Direct type.
- * @param supplier Message factory.
* @param serializer Message serializer.
* @throws IgniteException In case of attempt to register message with
direct type which is already registered.
* @throws IllegalStateException On any invocation of this method when
class which implements this interface
* is already constructed.
*/
- default void register(int directType, Supplier<T> supplier,
MessageSerializer<T> serializer) throws IgniteException {
- register((short)directType, supplier, serializer);
+ default void register(int directType, MessageSerializer<T> serializer)
throws IgniteException {
+ register((short)directType, serializer);
}
/**
diff --git
a/modules/nio/src/main/java/org/apache/ignite/plugin/extensions/communication/MessageSerializer.java
b/modules/nio/src/main/java/org/apache/ignite/plugin/extensions/communication/MessageSerializer.java
index 98de5c04de5..86ce0d170a0 100644
---
a/modules/nio/src/main/java/org/apache/ignite/plugin/extensions/communication/MessageSerializer.java
+++
b/modules/nio/src/main/java/org/apache/ignite/plugin/extensions/communication/MessageSerializer.java
@@ -39,4 +39,9 @@ public interface MessageSerializer<M extends Message> {
* @return Whether message was fully read.
*/
public boolean readFrom(M msg, MessageReader reader);
+
+ /**
+ * @return New instance of message.
+ */
+ public M createMessage();
}
diff --git
a/modules/zookeeper/src/main/java/org/apache/ignite/spi/discovery/zk/internal/ZkMessageFactory.java
b/modules/zookeeper/src/main/java/org/apache/ignite/spi/discovery/zk/internal/ZkMessageFactory.java
index a121b807863..c7b32818666 100644
---
a/modules/zookeeper/src/main/java/org/apache/ignite/spi/discovery/zk/internal/ZkMessageFactory.java
+++
b/modules/zookeeper/src/main/java/org/apache/ignite/spi/discovery/zk/internal/ZkMessageFactory.java
@@ -24,11 +24,11 @@ import
org.apache.ignite.internal.plugin.AbstractMarshallableMessageFactoryProvi
public class ZkMessageFactory extends
AbstractMarshallableMessageFactoryProvider {
/** {@inheritDoc} */
@Override public void registerAll(IgniteMessageFactory factory) {
- register(factory, ZkCommunicationErrorResolveFinishMessage.class,
(short)400, ZkCommunicationErrorResolveFinishMessage::new);
- register(factory, ZkCommunicationErrorResolveStartMessage.class,
(short)401, ZkCommunicationErrorResolveStartMessage::new);
- register(factory, ZkForceNodeFailMessage.class, (short)402,
ZkForceNodeFailMessage::new);
- register(factory, ZkNoServersMessage.class, (short)403,
ZkNoServersMessage::new);
- register(factory, ZkDiscoDataBagWrapper.class, (short)404,
ZkDiscoDataBagWrapper::new);
- register(factory, ZkOperationContextAwareCustomMessage.class,
(short)405, ZkOperationContextAwareCustomMessage::new);
+ register(factory, ZkCommunicationErrorResolveFinishMessage.class,
(short)400);
+ register(factory, ZkCommunicationErrorResolveStartMessage.class,
(short)401);
+ register(factory, ZkForceNodeFailMessage.class, (short)402);
+ register(factory, ZkNoServersMessage.class, (short)403);
+ register(factory, ZkDiscoDataBagWrapper.class, (short)404);
+ register(factory, ZkOperationContextAwareCustomMessage.class,
(short)405);
}
}