package at.ac.tuwien.lsdc.types;

public class SchedulerEvent {

	public enum EventType {
		startApplication, endApplication, startOutsourcedApplication, endOutsourcedApplication, startInsourcedApplication, endInsourcedApplication
	};

	final private long timestamp;
	final private EventType type;
	final private Application app;

	public SchedulerEvent(long timestamp, EventType type, Application app) {
		this.timestamp = timestamp;
		this.type = type;
		this.app = app;
	}

	public long getTimestamp() {
		return timestamp;
	}

	public EventType getType() {
		return type;
	}

	public Application getApp() {
		return app;
	}

	@Override
	public String toString() {
		return "SchedulerEvent [timestamp=" + timestamp + ", type=" + type + ", app=" + app + "]";
	}

}