package com.tashow.cloud.mq.core;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
import java.util.UUID;
/**
 * MQ消息基类，
 *
 *
 * @author tashow
 */
@Data
public class BaseMqMessage implements Serializable {

    private static final long serialVersionUID = 1L;
    /**
     * 消息ID，默认为UUID
     */
    private Integer id = UUID.randomUUID().hashCode();
    /**
     * 消息状态码
     */
    private Integer statusCode;

    /**
     * 消息重试次数
     */
    private Integer retryCount = 0;

    /**
     * 消息错误信息
     */
    private String errorMessage;

    /**
     * 消息创建时间
     */
    private Date createTime = new Date();

    /**
     * 扩展数据
     */
    private Map<String, Object> extraData = new HashMap<>();
} 