Skip to content

Commit edfc743

Browse files
authored
IGNITE-27975 Use MessageSerializer for IgniteIoTestMessage (#12988)
1 parent c1aa788 commit edfc743

5 files changed

Lines changed: 40 additions & 298 deletions

File tree

modules/core/src/main/java/org/apache/ignite/internal/IgniteCodeGeneratingFail.java

Lines changed: 0 additions & 34 deletions
This file was deleted.

modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessageFactory.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -385,7 +385,7 @@ public GridIoMessageFactory(Marshaller marsh, ClassLoader clsLdr) {
385385
factory.register(-49, UpdateErrors::new, new UpdateErrorsSerializer());
386386
factory.register(-48, GridDhtAtomicNearResponse::new, new GridDhtAtomicNearResponseSerializer());
387387
factory.register(-45, GridChangeGlobalStateMessageResponse::new, new GridChangeGlobalStateMessageResponseSerializer());
388-
factory.register((short)-43, IgniteIoTestMessage::new);
388+
factory.register(-43, IgniteIoTestMessage::new, new IgniteIoTestMessageMarshallableSerializer(marsh, clsLdr));
389389
factory.register(-36, GridDhtAtomicSingleUpdateRequest::new, new GridDhtAtomicSingleUpdateRequestSerializer());
390390
factory.register(-27, GridDhtTxOnePhaseCommitAckRequest::new, new GridDhtTxOnePhaseCommitAckRequestSerializer());
391391
factory.register(-25, TxLock::new, new TxLockSerializer());

modules/core/src/main/java/org/apache/ignite/internal/managers/communication/IgniteIoTestMessage.java

Lines changed: 37 additions & 258 deletions
Original file line numberDiff line numberDiff line change
@@ -17,70 +17,81 @@
1717

1818
package org.apache.ignite.internal.managers.communication;
1919

20-
import java.nio.ByteBuffer;
2120
import java.util.UUID;
22-
import org.apache.ignite.internal.GridDirectTransient;
23-
import org.apache.ignite.internal.IgniteCodeGeneratingFail;
21+
import org.apache.ignite.IgniteCheckedException;
22+
import org.apache.ignite.internal.Order;
2423
import org.apache.ignite.internal.util.typedef.internal.S;
25-
import org.apache.ignite.plugin.extensions.communication.Message;
26-
import org.apache.ignite.plugin.extensions.communication.MessageReader;
27-
import org.apache.ignite.plugin.extensions.communication.MessageWriter;
24+
import org.apache.ignite.marshaller.Marshaller;
25+
import org.apache.ignite.plugin.extensions.communication.MarshallableMessage;
2826

2927
/**
3028
*
3129
*/
32-
@IgniteCodeGeneratingFail
33-
public class IgniteIoTestMessage implements Message {
30+
public class IgniteIoTestMessage implements MarshallableMessage {
3431
/** */
3532
private static final byte FLAG_PROC_FROM_NIO = 1;
3633

3734
/** */
38-
private long id;
35+
@Order(0)
36+
long id;
3937

4038
/** */
41-
private byte flags;
39+
@Order(1)
40+
byte flags;
4241

4342
/** */
44-
private boolean req;
43+
@Order(2)
44+
boolean req;
4545

4646
/** */
47-
private byte[] payload;
47+
@Order(3)
48+
byte[] payload;
4849

4950
/** */
50-
private long reqCreateTs;
51+
@Order(4)
52+
long reqCreateTs;
5153

5254
/** */
53-
private long reqSndTs;
55+
@Order(5)
56+
long reqSndTs;
5457

5558
/** */
56-
private long reqSndTsMillis;
59+
@Order(6)
60+
long reqSndTsMillis;
5761

5862
/** */
59-
private long reqRcvTs;
63+
@Order(7)
64+
long reqRcvTs;
6065

6166
/** */
62-
private long reqRcvTsMillis;
67+
@Order(8)
68+
long reqRcvTsMillis;
6369

6470
/** */
65-
private long reqProcTs;
71+
@Order(9)
72+
long reqProcTs;
6673

6774
/** */
68-
private long resSndTs;
75+
@Order(10)
76+
long resSndTs;
6977

7078
/** */
71-
private long resSndTsMillis;
79+
@Order(11)
80+
long resSndTsMillis;
7281

7382
/** */
74-
private long resRcvTs;
83+
@Order(12)
84+
long resRcvTs;
7585

7686
/** */
77-
private long resRcvTsMillis;
87+
@Order(13)
88+
long resRcvTsMillis;
7889

7990
/** */
80-
private long resProcTs;
91+
@Order(14)
92+
long resProcTs;
8193

8294
/** */
83-
@GridDirectTransient
8495
private UUID sndNodeId;
8596

8697
/**
@@ -314,247 +325,15 @@ public void senderNodeId(UUID sndNodeId) {
314325
}
315326

316327
/** {@inheritDoc} */
317-
@Override public boolean writeTo(ByteBuffer buf, MessageWriter writer) {
318-
writer.setBuffer(buf);
319-
328+
@Override public void prepareMarshal(Marshaller marsh) throws IgniteCheckedException {
320329
onBeforeWrite();
321-
322-
if (!writer.isHeaderWritten()) {
323-
if (!writer.writeHeader(directType()))
324-
return false;
325-
326-
writer.onHeaderWritten();
327-
}
328-
329-
switch (writer.state()) {
330-
case 0:
331-
if (!writer.writeByte(flags))
332-
return false;
333-
334-
writer.incrementState();
335-
336-
case 1:
337-
if (!writer.writeLong(id))
338-
return false;
339-
340-
writer.incrementState();
341-
342-
case 2:
343-
if (!writer.writeByteArray(payload))
344-
return false;
345-
346-
writer.incrementState();
347-
348-
case 3:
349-
if (!writer.writeBoolean(req))
350-
return false;
351-
352-
writer.incrementState();
353-
354-
case 4:
355-
if (!writer.writeLong(reqCreateTs))
356-
return false;
357-
358-
writer.incrementState();
359-
360-
case 5:
361-
if (!writer.writeLong(reqProcTs))
362-
return false;
363-
364-
writer.incrementState();
365-
366-
case 6:
367-
if (!writer.writeLong(reqRcvTs))
368-
return false;
369-
370-
writer.incrementState();
371-
372-
case 7:
373-
if (!writer.writeLong(reqRcvTsMillis))
374-
return false;
375-
376-
writer.incrementState();
377-
378-
case 8:
379-
if (!writer.writeLong(reqSndTs))
380-
return false;
381-
382-
writer.incrementState();
383-
384-
case 9:
385-
if (!writer.writeLong(reqSndTsMillis))
386-
return false;
387-
388-
writer.incrementState();
389-
390-
case 10:
391-
if (!writer.writeLong(resProcTs))
392-
return false;
393-
394-
writer.incrementState();
395-
396-
case 11:
397-
if (!writer.writeLong(resRcvTs))
398-
return false;
399-
400-
writer.incrementState();
401-
402-
case 12:
403-
if (!writer.writeLong(resRcvTsMillis))
404-
return false;
405-
406-
writer.incrementState();
407-
408-
case 13:
409-
if (!writer.writeLong(resSndTs))
410-
return false;
411-
412-
writer.incrementState();
413-
414-
case 14:
415-
if (!writer.writeLong(resSndTsMillis))
416-
return false;
417-
418-
writer.incrementState();
419-
420-
}
421-
422-
return true;
423330
}
424331

425332
/** {@inheritDoc} */
426-
@Override public boolean readFrom(ByteBuffer buf, MessageReader reader) {
427-
reader.setBuffer(buf);
428-
429-
switch (reader.state()) {
430-
case 0:
431-
flags = reader.readByte();
432-
433-
if (!reader.isLastRead())
434-
return false;
435-
436-
reader.incrementState();
437-
438-
case 1:
439-
id = reader.readLong();
440-
441-
if (!reader.isLastRead())
442-
return false;
443-
444-
reader.incrementState();
445-
446-
case 2:
447-
payload = reader.readByteArray();
448-
449-
if (!reader.isLastRead())
450-
return false;
451-
452-
reader.incrementState();
453-
454-
case 3:
455-
req = reader.readBoolean();
456-
457-
if (!reader.isLastRead())
458-
return false;
459-
460-
reader.incrementState();
461-
462-
case 4:
463-
reqCreateTs = reader.readLong();
464-
465-
if (!reader.isLastRead())
466-
return false;
467-
468-
reader.incrementState();
469-
470-
case 5:
471-
reqProcTs = reader.readLong();
472-
473-
if (!reader.isLastRead())
474-
return false;
475-
476-
reader.incrementState();
477-
478-
case 6:
479-
reqRcvTs = reader.readLong();
480-
481-
if (!reader.isLastRead())
482-
return false;
483-
484-
reader.incrementState();
485-
486-
case 7:
487-
reqRcvTsMillis = reader.readLong();
488-
489-
if (!reader.isLastRead())
490-
return false;
491-
492-
reader.incrementState();
493-
494-
case 8:
495-
reqSndTs = reader.readLong();
496-
497-
if (!reader.isLastRead())
498-
return false;
499-
500-
reader.incrementState();
501-
502-
case 9:
503-
reqSndTsMillis = reader.readLong();
504-
505-
if (!reader.isLastRead())
506-
return false;
507-
508-
reader.incrementState();
509-
510-
case 10:
511-
resProcTs = reader.readLong();
512-
513-
if (!reader.isLastRead())
514-
return false;
515-
516-
reader.incrementState();
517-
518-
case 11:
519-
resRcvTs = reader.readLong();
520-
521-
if (!reader.isLastRead())
522-
return false;
523-
524-
reader.incrementState();
525-
526-
case 12:
527-
resRcvTsMillis = reader.readLong();
528-
529-
if (!reader.isLastRead())
530-
return false;
531-
532-
reader.incrementState();
533-
534-
case 13:
535-
resSndTs = reader.readLong();
536-
537-
if (!reader.isLastRead())
538-
return false;
539-
540-
reader.incrementState();
541-
542-
case 14:
543-
resSndTsMillis = reader.readLong();
544-
545-
if (!reader.isLastRead())
546-
return false;
547-
548-
reader.incrementState();
549-
550-
}
551-
333+
@Override public void finishUnmarshal(Marshaller marsh, ClassLoader clsLdr) throws IgniteCheckedException {
552334
onAfterRead();
553-
554-
return true;
555335
}
556336

557-
558337
/** {@inheritDoc} */
559338
@Override public String toString() {
560339
return S.toString(IgniteIoTestMessage.class, this);

0 commit comments

Comments
 (0)