package com.hubspot.singularity;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonSubTypes;
import com.fasterxml.jackson.annotation.JsonSubTypes.Type;
import com.fasterxml.jackson.annotation.JsonTypeInfo;
import com.fasterxml.jackson.annotation.JsonTypeInfo.As;
import com.fasterxml.jackson.annotation.JsonTypeInfo.Id;
@JsonIgnoreProperties(ignoreUnknown = true)
@JsonTypeInfo(use = Id.MINIMAL_CLASS, include = As.PROPERTY, property = "@class", defaultImpl = SingularityTaskShellCommandRequest.class)
@JsonSubTypes({
@Type(value = SingularityTaskShellCommandRequest.class, name = "SHELL_COMMAND"),
@Type(value = SingularityTaskDestroyFrameworkMessage.class, name = "TASK_KILL")
})
public abstract class SingularityFrameworkMessage {
public abstract SingularityTaskId getTaskId();
}