MqInit.java 1.18 KB
package com.yanzuoguang.util.vo;

/**
 * mq初始化对象,用于判断是否继续执行
 *
 * @param <T>
 * @author 颜佐光
 */
public class MqInit<T> {

    /**
     * 对象初始化时间系统时间搓,相当于版本号
     */
    private long now = System.currentTimeMillis();

    /**
     * 数据
     */
    private T data;

    public MqInit() {
    }

    public MqInit(T data) {
        this.data = data;
    }

    /**
     * 对象初始化时间
     * @return
     */
    public long getNow() {
        return now;
    }

    /**
     * 对象初始化时间
     * @return
     */
    public void setNow(long now) {
        this.now = now;
    }

    /**
     * 当前数据
     *
     * @return
     */
    public T getData() {
        return data;
    }

    /**
     * 设置数据
     *
     * @param data
     */
    public void setData(T data) {
        this.data = data;
    }

    /**
     * 判断是否能够执行
     *
     * @param that
     * @return
     */
    public boolean next(MqInit<T> that) {
        if (that.now < this.now) {
            return false;
        }
        this.now = that.now;
        this.data = that.data;
        return true;
    }


}