package com.xxl.job.admin.core.scheduler;

import com.xxl.job.admin.core.util.I18nUtil;

/**
 * @author xuxueli 2020-10-29 21:11:23
 */
public enum ScheduleTypeEnum {

	NONE(I18nUtil.getString("schedule_type_none")),

	/**
	 * schedule by cron
	 */
	CRON(I18nUtil.getString("schedule_type_cron")),

	/**
	 * schedule by fixed rate (in seconds)
	 */
	FIX_RATE(I18nUtil.getString("schedule_type_fix_rate")),

	/**
	 * schedule by fix delay (in seconds)， after the last time
	 */
	/* FIX_DELAY(I18nUtil.getString("schedule_type_fix_delay")) */;

	private String title;

	ScheduleTypeEnum(String title) {
		this.title = title;
	}

	public String getTitle() {
		return title;
	}

	public static ScheduleTypeEnum match(String name, ScheduleTypeEnum defaultItem) {
		for (ScheduleTypeEnum item : ScheduleTypeEnum.values()) {
			if (item.name().equals(name)) {
				return item;
			}
		}
		return defaultItem;
	}

}
