package eu.dnetlib.actionmanager.set;

import java.io.Serializable;

import javax.xml.bind.annotation.XmlRootElement;

@XmlRootElement
public class ActionManagerSet implements Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = 7262893241919858735L;

	public enum ImpactTypes {
		ONLY_INSERT, INSERT_UPDATE
	}

	private String id;
	private String name;
	private ImpactTypes impact = ImpactTypes.INSERT_UPDATE;
	private String lastExecutionDate = null;

	public ActionManagerSet() {
	}

	public ActionManagerSet(String id, String name, ImpactTypes impact, String lastExecutionDate) {
		this.id = id;
		this.name = name;
		this.impact = impact;
		this.lastExecutionDate = lastExecutionDate;
	}

	public ActionManagerSet(String id, String name) {
		this(id, name, ImpactTypes.INSERT_UPDATE, null);
	}

	public String getId() {
		return id;
	}

	public void setId(String id) {
		this.id = id;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public ImpactTypes getImpact() {
		return impact;
	}

	public void setImpact(ImpactTypes impact) {
		this.impact = impact;
	}

	public String getLastExecutionDate() {
		return lastExecutionDate;
	}

	public void setLastExecutionDate(String lastExecutionDate) {
		this.lastExecutionDate = lastExecutionDate;
	}

	@Override
	public String toString() {
		return "[ id: " + id + ", name: " + name + ", impact: " + impact + ", lastExecutionDate: " + lastExecutionDate + " ]";
	}

}
