This is an automated email from the ASF dual-hosted git repository.
shishkovilja 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 a686b8ebbb8 IGNITE-26399 Use MessageSerializer for
AtomicApplicationAttributesAwareRequest (#12326)
a686b8ebbb8 is described below
commit a686b8ebbb8052b9974ccb80f5c1501125d1b7ee
Author: Dmitry Werner <[email protected]>
AuthorDate: Fri Sep 19 17:09:35 2025 +0500
IGNITE-26399 Use MessageSerializer for
AtomicApplicationAttributesAwareRequest (#12326)
---
.../communication/GridIoMessageFactory.java | 3 +-
.../AtomicApplicationAttributesAwareRequest.java | 80 ++++------------------
2 files changed, 15 insertions(+), 68 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 26eb674fec1..74275da5382 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
@@ -25,6 +25,7 @@ import org.apache.ignite.internal.GridJobSiblingsResponse;
import org.apache.ignite.internal.GridTaskCancelRequest;
import org.apache.ignite.internal.GridTaskSessionRequest;
import org.apache.ignite.internal.IgniteDiagnosticMessage;
+import
org.apache.ignite.internal.codegen.AtomicApplicationAttributesAwareRequestSerializer;
import org.apache.ignite.internal.codegen.CacheEvictionEntrySerializer;
import org.apache.ignite.internal.codegen.CacheGroupAffinityMessageSerializer;
import org.apache.ignite.internal.codegen.CacheVersionedValueSerializer;
@@ -366,7 +367,7 @@ public class GridIoMessageFactory implements
MessageFactoryProvider {
new SnapshotFilesRequestMessageSerializer());
factory.register(SnapshotFilesFailureMessage.TYPE_CODE,
SnapshotFilesFailureMessage::new,
new SnapshotFilesFailureMessageSerializer());
- factory.register((short)180,
AtomicApplicationAttributesAwareRequest::new);
+ factory.register((short)180,
AtomicApplicationAttributesAwareRequest::new, new
AtomicApplicationAttributesAwareRequestSerializer());
factory.register((short)181, TransactionAttributesAwareRequest::new,
new TransactionAttributesAwareRequestSerializer());
// Incremental snapshot.
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/AtomicApplicationAttributesAwareRequest.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/AtomicApplicationAttributesAwareRequest.java
index 91154fee573..3e95da81011 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/AtomicApplicationAttributesAwareRequest.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/AtomicApplicationAttributesAwareRequest.java
@@ -17,15 +17,11 @@
package org.apache.ignite.internal.processors.cache.distributed.dht.atomic;
-import java.nio.ByteBuffer;
import java.util.Map;
import org.apache.ignite.IgniteCheckedException;
-import org.apache.ignite.internal.GridDirectMap;
+import org.apache.ignite.internal.Order;
import org.apache.ignite.internal.processors.cache.GridCacheIdMessage;
import org.apache.ignite.internal.processors.cache.GridCacheSharedContext;
-import
org.apache.ignite.plugin.extensions.communication.MessageCollectionItemType;
-import org.apache.ignite.plugin.extensions.communication.MessageReader;
-import org.apache.ignite.plugin.extensions.communication.MessageWriter;
/** Wraps atomic updates with application attributes. */
public class AtomicApplicationAttributesAwareRequest extends
GridCacheIdMessage {
@@ -33,10 +29,11 @@ public class AtomicApplicationAttributesAwareRequest
extends GridCacheIdMessage
public static final short TYPE_CODE = 180;
/** Original update message. */
+ @Order(4)
private GridNearAtomicAbstractUpdateRequest payload;
/** Application attributes. */
- @GridDirectMap(keyType = String.class, valueType = String.class)
+ @Order(value = 5, method = "applicationAttributes")
private Map<String, String> appAttrs;
/** */
@@ -58,11 +55,21 @@ public class AtomicApplicationAttributesAwareRequest
extends GridCacheIdMessage
return payload;
}
+ /** @param payload Original update message. */
+ public void payload(GridNearAtomicAbstractUpdateRequest payload) {
+ this.payload = payload;
+ }
+
/** @return Application attributes. */
public Map<String, String> applicationAttributes() {
return appAttrs;
}
+ /** @param appAttrs Application attributes. */
+ public void applicationAttributes(Map<String, String> appAttrs) {
+ this.appAttrs = appAttrs;
+ }
+
/** {@inheritDoc} */
@Override public void prepareMarshal(GridCacheSharedContext<?, ?> ctx)
throws IgniteCheckedException {
payload.prepareMarshal(ctx);
@@ -73,67 +80,6 @@ public class AtomicApplicationAttributesAwareRequest extends
GridCacheIdMessage
payload.finishUnmarshal(ctx, ldr);
}
- /** {@inheritDoc} */
- @Override public boolean writeTo(ByteBuffer buf, MessageWriter writer) {
- writer.setBuffer(buf);
-
- if (!super.writeTo(buf, writer))
- return false;
-
- if (!writer.isHeaderWritten()) {
- if (!writer.writeHeader(directType()))
- return false;
-
- writer.onHeaderWritten();
- }
-
- switch (writer.state()) {
- case 4:
- if (!writer.writeMap(appAttrs,
MessageCollectionItemType.STRING, MessageCollectionItemType.STRING))
- return false;
-
- writer.incrementState();
-
- case 5:
- if (!writer.writeMessage(payload))
- return false;
-
- writer.incrementState();
-
- }
-
- return true;
- }
-
- /** {@inheritDoc} */
- @Override public boolean readFrom(ByteBuffer buf, MessageReader reader) {
- reader.setBuffer(buf);
-
- if (!super.readFrom(buf, reader))
- return false;
-
- switch (reader.state()) {
- case 4:
- appAttrs = reader.readMap(MessageCollectionItemType.STRING,
MessageCollectionItemType.STRING, false);
-
- if (!reader.isLastRead())
- return false;
-
- reader.incrementState();
-
- case 5:
- payload = reader.readMessage();
-
- if (!reader.isLastRead())
- return false;
-
- reader.incrementState();
-
- }
-
- return true;
- }
-
/** {@inheritDoc} */
@Override public boolean addDeploymentInfo() {
return false;