
com.hubspot.singularity.api.SingularityDeployRequest Maven / Gradle / Ivy
The newest version!
package com.hubspot.singularity.api;
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.singularity.SingularityDeploy;
import com.hubspot.singularity.SingularityRequest;
import com.wordnik.swagger.annotations.ApiModelProperty;
public class SingularityDeployRequest {
private final Optional unpauseOnSuccessfulDeploy;
private final SingularityDeploy deploy;
private final Optional message;
private final Optional updatedRequest;
@JsonCreator
public SingularityDeployRequest(
@JsonProperty("deploy") SingularityDeploy deploy,
@JsonProperty("unpauseOnSuccessfulDeploy") Optional unpauseOnSuccessfulDeploy,
@JsonProperty("message") Optional message,
@JsonProperty("updatedRequest") Optional updatedRequest) {
this.deploy = deploy;
this.unpauseOnSuccessfulDeploy = unpauseOnSuccessfulDeploy;
this.message = message;
this.updatedRequest = updatedRequest;
}
public SingularityDeployRequest(SingularityDeploy deploy, Optional unpauseOnSuccessfulDeploy, Optional message) {
this(deploy, unpauseOnSuccessfulDeploy, message, Optional.absent());
}
@ApiModelProperty(required=false, value="If deploy is successful, also unpause the request")
public Optional getUnpauseOnSuccessfulDeploy() {
return unpauseOnSuccessfulDeploy;
}
@ApiModelProperty(required=true, value="The Singularity deploy object, containing all the required details about the Deploy")
public SingularityDeploy getDeploy() {
return deploy;
}
@ApiModelProperty(required=false, value="A message to show users about this deploy (metadata)")
public Optional getMessage() {
return message;
}
@ApiModelProperty(required=false, value="use this request data for this deploy, and update the request on successful deploy")
public Optional getUpdatedRequest() {
return updatedRequest;
}
@JsonIgnore
public boolean isUnpauseOnSuccessfulDeploy() {
return unpauseOnSuccessfulDeploy.or(Boolean.FALSE);
}
@Override
public String toString() {
return "SingularityDeployRequest [unpauseOnSuccessfulDeploy=" + unpauseOnSuccessfulDeploy + ", deploy=" + deploy + ", message=" + message + ", updatedRequest=" + updatedRequest + "]";
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy