ExperimentOptions.java 947 Bytes
package com.example.mina.client.base;

import java.time.ZonedDateTime;
import java.util.List;
import lombok.Data;

@Data
public abstract class ExperimentOptions {

    protected String experimentId;

    protected String experimentType;

    protected Integer startAttn;

    protected Integer endAttn;

    protected Integer step;

    /**
     * 每次发送指令的 时间间隔
     */
    protected Integer period;

    /**
     * 单次从 start --> end 一个周期后的 暂停时间
     */
    protected Integer pause;

    /**
     * 最大循环次数
     */
    protected Integer iterations;

    protected ZonedDateTime finishAt;


    protected boolean checkOptions(){
        if(startAttn<0 || endAttn<0 || startAttn>endAttn || step<=0
            || pause<0 || period<=0 || iterations<=0 || finishAt==null ||
            finishAt.isBefore(ZonedDateTime.now())) {
            return false;
        }
        return true;
    }
}