2024-10-08 09:38:54 +08:00
|
|
|
|
/**
|
|
|
|
|
|
* 抖音关注:程序员三丙
|
|
|
|
|
|
* 知识星球:https://t.zsxq.com/j9b21
|
|
|
|
|
|
*/
|
|
|
|
|
|
package sanbing.jcpp.infrastructure.queue;
|
|
|
|
|
|
|
2024-10-23 17:07:57 +08:00
|
|
|
|
import com.google.protobuf.GeneratedMessage;
|
2024-10-08 09:38:54 +08:00
|
|
|
|
import lombok.Data;
|
|
|
|
|
|
|
|
|
|
|
|
@Data
|
2024-10-23 17:07:57 +08:00
|
|
|
|
public class ProtoQueueMsg<T extends GeneratedMessage> implements QueueMsg {
|
2024-10-08 09:38:54 +08:00
|
|
|
|
|
|
|
|
|
|
private final String key;
|
|
|
|
|
|
protected final T value;
|
|
|
|
|
|
private final QueueMsgHeaders headers;
|
|
|
|
|
|
|
|
|
|
|
|
public ProtoQueueMsg(String key, T value) {
|
|
|
|
|
|
this(key, value, new DefaultQueueMsgHeaders());
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public ProtoQueueMsg(String key, T value, QueueMsgHeaders headers) {
|
|
|
|
|
|
this.key = key;
|
|
|
|
|
|
this.value = value;
|
|
|
|
|
|
this.headers = headers;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
|
public String getKey() {
|
|
|
|
|
|
return key;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
|
public QueueMsgHeaders getHeaders() {
|
|
|
|
|
|
return headers;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
|
public byte[] getData() {
|
|
|
|
|
|
return value.toByteArray();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|