This is an automated email from the ASF dual-hosted git repository.

av 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 1adad688583 IGNITE-27927 Use MessageSerializer for GridIoUserMessage 
(#12781)
1adad688583 is described below

commit 1adad688583b4d194d6cbb32e5da76b15dc6faa3
Author: Dmitry Werner <[email protected]>
AuthorDate: Tue Feb 24 12:40:30 2026 +0500

    IGNITE-27927 Use MessageSerializer for GridIoUserMessage (#12781)
---
 .../communication/GridIoMessageFactory.java        |   2 +-
 .../managers/communication/GridIoUserMessage.java  | 161 ++-------------------
 2 files changed, 16 insertions(+), 147 deletions(-)

diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessageFactory.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessageFactory.java
index 35602626a15..82782d56a74 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessageFactory.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessageFactory.java
@@ -369,7 +369,7 @@ public class GridIoMessageFactory implements 
MessageFactoryProvider {
         factory.register((short)6, GridTaskSessionRequest::new, new 
GridTaskSessionRequestSerializer());
         factory.register((short)7, GridCheckpointRequest::new, new 
GridCheckpointRequestSerializer());
         factory.register((short)8, GridIoMessage::new, new 
GridIoMessageSerializer());
-        factory.register((short)9, GridIoUserMessage::new);
+        factory.register((short)9, GridIoUserMessage::new, new 
GridIoUserMessageSerializer());
         factory.register((short)10, GridDeploymentInfoBean::new);
         factory.register((short)11, GridDeploymentRequest::new, new 
GridDeploymentRequestSerializer());
         factory.register((short)12, GridDeploymentResponse::new, new 
GridDeploymentResponseSerializer());
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoUserMessage.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoUserMessage.java
index 89cca69737d..46338092b34 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoUserMessage.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoUserMessage.java
@@ -17,21 +17,16 @@
 
 package org.apache.ignite.internal.managers.communication;
 
-import java.nio.ByteBuffer;
 import java.util.Collections;
 import java.util.Map;
 import java.util.UUID;
 import org.apache.ignite.configuration.DeploymentMode;
-import org.apache.ignite.internal.GridDirectMap;
-import org.apache.ignite.internal.GridDirectTransient;
+import org.apache.ignite.internal.Order;
 import org.apache.ignite.internal.managers.deployment.GridDeployment;
 import org.apache.ignite.internal.util.tostring.GridToStringInclude;
 import org.apache.ignite.internal.util.typedef.internal.S;
 import org.apache.ignite.lang.IgniteUuid;
 import org.apache.ignite.plugin.extensions.communication.Message;
-import 
org.apache.ignite.plugin.extensions.communication.MessageCollectionItemType;
-import org.apache.ignite.plugin.extensions.communication.MessageReader;
-import org.apache.ignite.plugin.extensions.communication.MessageWriter;
 import org.jetbrains.annotations.Nullable;
 
 /**
@@ -39,38 +34,41 @@ import org.jetbrains.annotations.Nullable;
  */
 public class GridIoUserMessage implements Message {
     /** Message body. */
-    @GridDirectTransient
     private Object body;
 
     /** Serialized message body. */
-    private byte[] bodyBytes;
+    @Order(0)
+    byte[] bodyBytes;
 
     /** Class loader ID. */
-    private IgniteUuid clsLdrId;
+    @Order(1)
+    IgniteUuid clsLdrId;
 
     /** Message topic. */
-    @GridDirectTransient
     private Object topic;
 
     /** Serialized message topic. */
-    private byte[] topicBytes;
+    @Order(2)
+    byte[] topicBytes;
 
     /** Deployment mode. */
-    private DeploymentMode depMode;
+    @Order(3)
+    DeploymentMode depMode;
 
     /** Deployment class name. */
-    private String depClsName;
+    @Order(4)
+    String depClsName;
 
     /** User version. */
-    private String userVer;
+    @Order(5)
+    String userVer;
 
     /** Node class loader participants. */
+    @Order(6)
     @GridToStringInclude
-    @GridDirectMap(keyType = UUID.class, valueType = IgniteUuid.class)
-    private Map<UUID, IgniteUuid> ldrParties;
+    Map<UUID, IgniteUuid> ldrParties;
 
     /** Message deployment. */
-    @GridDirectTransient
     private GridDeployment dep;
 
     /**
@@ -203,135 +201,6 @@ public class GridIoUserMessage implements Message {
         return dep;
     }
 
-    /** {@inheritDoc} */
-    @Override public boolean writeTo(ByteBuffer buf, MessageWriter writer) {
-        writer.setBuffer(buf);
-
-        if (!writer.isHeaderWritten()) {
-            if (!writer.writeHeader(directType()))
-                return false;
-
-            writer.onHeaderWritten();
-        }
-
-        switch (writer.state()) {
-            case 0:
-                if (!writer.writeByteArray(bodyBytes))
-                    return false;
-
-                writer.incrementState();
-
-            case 1:
-                if (!writer.writeIgniteUuid(clsLdrId))
-                    return false;
-
-                writer.incrementState();
-
-            case 2:
-                if (!writer.writeString(depClsName))
-                    return false;
-
-                writer.incrementState();
-
-            case 3:
-                if (!writer.writeByte(depMode != null ? 
(byte)depMode.ordinal() : -1))
-                    return false;
-
-                writer.incrementState();
-
-            case 4:
-                if (!writer.writeMap(ldrParties, 
MessageCollectionItemType.UUID, MessageCollectionItemType.IGNITE_UUID))
-                    return false;
-
-                writer.incrementState();
-
-            case 5:
-                if (!writer.writeByteArray(topicBytes))
-                    return false;
-
-                writer.incrementState();
-
-            case 6:
-                if (!writer.writeString(userVer))
-                    return false;
-
-                writer.incrementState();
-
-        }
-
-        return true;
-    }
-
-    /** {@inheritDoc} */
-    @Override public boolean readFrom(ByteBuffer buf, MessageReader reader) {
-        reader.setBuffer(buf);
-
-        switch (reader.state()) {
-            case 0:
-                bodyBytes = reader.readByteArray();
-
-                if (!reader.isLastRead())
-                    return false;
-
-                reader.incrementState();
-
-            case 1:
-                clsLdrId = reader.readIgniteUuid();
-
-                if (!reader.isLastRead())
-                    return false;
-
-                reader.incrementState();
-
-            case 2:
-                depClsName = reader.readString();
-
-                if (!reader.isLastRead())
-                    return false;
-
-                reader.incrementState();
-
-            case 3:
-                byte depModeOrd;
-
-                depModeOrd = reader.readByte();
-
-                if (!reader.isLastRead())
-                    return false;
-
-                depMode = DeploymentMode.fromOrdinal(depModeOrd);
-
-                reader.incrementState();
-
-            case 4:
-                ldrParties = reader.readMap(MessageCollectionItemType.UUID, 
MessageCollectionItemType.IGNITE_UUID, false);
-
-                if (!reader.isLastRead())
-                    return false;
-
-                reader.incrementState();
-
-            case 5:
-                topicBytes = reader.readByteArray();
-
-                if (!reader.isLastRead())
-                    return false;
-
-                reader.incrementState();
-
-            case 6:
-                userVer = reader.readString();
-
-                if (!reader.isLastRead())
-                    return false;
-
-                reader.incrementState();
-
-        }
-
-        return true;
-    }
-
     /** {@inheritDoc} */
     @Override public short directType() {
         return 9;

Reply via email to