
com.hubspot.singularity.SingularityTaskHistory Maven / Gradle / Ivy
The newest version!
package com.hubspot.singularity;
import java.util.List;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.google.common.base.Optional;
import com.hubspot.mesos.JavaUtils;
public class SingularityTaskHistory {
private final List taskUpdates;
private final Optional directory;
private final SingularityTask task;
private final List healthcheckResults;
private final List loadBalancerUpdates;
private final List shellCommandHistory;
private final List taskMetadata;
@JsonCreator
public SingularityTaskHistory(@JsonProperty("taskUpdates") List taskUpdates, @JsonProperty("directory") Optional directory,
@JsonProperty("healthcheckResults") List healthcheckResults, @JsonProperty("task") SingularityTask task,
@JsonProperty("loadBalancerUpdates") List loadBalancerUpdates,
@JsonProperty("shellCommandHistory") List shellCommandHistory,
@JsonProperty("taskMetadata") List taskMetadata) {
this.directory = directory;
this.task = task;
this.taskUpdates = JavaUtils.nonNullImmutable(taskUpdates);
this.healthcheckResults = JavaUtils.nonNullImmutable(healthcheckResults);
this.loadBalancerUpdates = JavaUtils.nonNullImmutable(loadBalancerUpdates);
this.shellCommandHistory = JavaUtils.nonNullImmutable(shellCommandHistory);
this.taskMetadata = JavaUtils.nonNullImmutable(taskMetadata);
}
public List getTaskUpdates() {
return taskUpdates;
}
public Optional getDirectory() {
return directory;
}
public SingularityTask getTask() {
return task;
}
public List getTaskMetadata() {
return taskMetadata;
}
public List getHealthcheckResults() {
return healthcheckResults;
}
public List getLoadBalancerUpdates() {
return loadBalancerUpdates;
}
public List getShellCommandHistory() {
return shellCommandHistory;
}
@JsonIgnore
public Optional getLastTaskUpdate() {
return JavaUtils.getLast(getTaskUpdates());
}
@Override
public String toString() {
return "SingularityTaskHistory [taskUpdates=" + taskUpdates + ", directory=" + directory + ", task=" + task + ", healthcheckResults=" + healthcheckResults + ", loadBalancerUpdates="
+ loadBalancerUpdates + ", shellCommandHistory=" + shellCommandHistory + ", taskMetadata=" + taskMetadata + "]";
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy