Skip to content

Commit b5aeb98

Browse files
committed
Use MessagePack ObjectMapper in listener E2E test
1 parent dd3b6e4 commit b5aeb98

2 files changed

Lines changed: 11 additions & 26 deletions

File tree

rqueue-spring-boot-starter/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ dependencies {
6868
testImplementation "org.springframework.boot:spring-boot-starter-data-redis-reactive:${springBootVersion}"
6969
testImplementation "org.springframework.boot:spring-boot-starter-data-jpa:${springBootVersion}"
7070
testImplementation "org.springframework.boot:spring-boot-devtools:${springBootVersion}"
71-
testImplementation "org.msgpack:msgpack-core:0.9.9"
71+
testImplementation "org.msgpack:jackson-dataformat-msgpack:0.9.12"
7272
testImplementation "org.testcontainers:testcontainers:${testcontainersVersion}"
7373
testImplementation "org.testcontainers:junit-jupiter:${testcontainersVersion}"
7474
}

rqueue-spring-boot-starter/src/test/java/com/github/sonus21/rqueue/spring/boot/integration/MsgPackMessageConverterProvider.java

Lines changed: 10 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -15,12 +15,12 @@
1515
*/
1616
package com.github.sonus21.rqueue.spring.boot.integration;
1717

18+
import com.fasterxml.jackson.core.JsonProcessingException;
19+
import com.fasterxml.jackson.databind.ObjectMapper;
1820
import com.github.sonus21.rqueue.converter.MessageConverterProvider;
1921
import java.io.IOException;
2022
import java.util.Base64;
21-
import org.msgpack.core.MessageBufferPacker;
22-
import org.msgpack.core.MessagePack;
23-
import org.msgpack.core.MessageUnpacker;
23+
import org.msgpack.jackson.dataformat.MessagePackFactory;
2424
import org.springframework.messaging.Message;
2525
import org.springframework.messaging.MessageHeaders;
2626
import org.springframework.messaging.converter.MessageConversionException;
@@ -77,36 +77,21 @@ public Message<?> toMessage(Object payload, MessageHeaders headers) {
7777

7878
private static final class MsgPackCodec {
7979

80+
private static final ObjectMapper MAPPER = new ObjectMapper(new MessagePackFactory());
81+
8082
private MsgPackCodec() {}
8183

8284
static byte[] encode(MessagePackageListenerTest.ListenerPayload payload) {
83-
try (MessageBufferPacker packer = MessagePack.newDefaultBufferPacker()) {
84-
packer.packMapHeader(2);
85-
packer.packString("backend");
86-
packer.packString(payload.getBackend());
87-
packer.packString("body");
88-
packer.packString(payload.getBody());
89-
return packer.toByteArray();
90-
} catch (IOException e) {
85+
try {
86+
return MAPPER.writeValueAsBytes(payload);
87+
} catch (JsonProcessingException e) {
9188
throw new MessageConversionException("MsgPack encoding failed", e);
9289
}
9390
}
9491

9592
static MessagePackageListenerTest.ListenerPayload decode(byte[] bytes) {
96-
try (MessageUnpacker unpacker = MessagePack.newDefaultUnpacker(bytes)) {
97-
int entries = unpacker.unpackMapHeader();
98-
String backend = null;
99-
String body = null;
100-
for (int i = 0; i < entries; i++) {
101-
String key = unpacker.unpackString();
102-
String value = unpacker.unpackString();
103-
if ("backend".equals(key)) {
104-
backend = value;
105-
} else if ("body".equals(key)) {
106-
body = value;
107-
}
108-
}
109-
return new MessagePackageListenerTest.ListenerPayload(backend, body);
93+
try {
94+
return MAPPER.readValue(bytes, MessagePackageListenerTest.ListenerPayload.class);
11095
} catch (IOException e) {
11196
throw new MessageConversionException("MsgPack decoding failed", e);
11297
}

0 commit comments

Comments
 (0)