org.openstack4j.openstack.workflow.domain.MistralWorkflowEnvironment Maven / Gradle / Ivy
package org.openstack4j.openstack.workflow.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonProperty;
import org.openstack4j.model.workflow.Scope;
import org.openstack4j.model.workflow.WorkflowEnvironment;
import org.openstack4j.model.workflow.builder.WorkflowEnvironmentBuilder;
import org.openstack4j.openstack.common.ListResult;
import java.util.Date;
import java.util.List;
import java.util.Map;
/**
* Mistral workflow environment.
*
* @author Renat Akhmerov
*/
@JsonIgnoreProperties(ignoreUnknown = true)
public class MistralWorkflowEnvironment implements WorkflowEnvironment {
private static final long serialVersionUID = 1L;
private String id;
@JsonProperty("created_at")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date createdAt;
@JsonProperty("updated_at")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date updatedAt;
@JsonProperty("project_id")
private String projectId;
private Scope scope;
private String name;
private String description;
private Map variables;
public static MistralWorkflowEnvironmentBuilder builder() {
return new MistralWorkflowEnvironmentBuilder();
}
@Override
public MistralWorkflowEnvironmentBuilder toBuilder() {
return new MistralWorkflowEnvironmentBuilder(this);
}
@Override
public String getId() {
return id;
}
@Override
public Date getCreatedAt() {
return createdAt;
}
@Override
public Date getUpdatedAt() {
return updatedAt;
}
@Override
public String getProjectId() {
return projectId;
}
@Override
public Scope getScope() {
return scope;
}
@Override
public String getName() {
return name;
}
@Override
public String getDescription() {
return description;
}
@Override
public Map getVariables() {
return variables;
}
/**
* Mistral workflow environment builder.
*
* @author Renat Akhmerov
*/
public static class MistralWorkflowEnvironmentBuilder implements
WorkflowEnvironmentBuilder {
protected MistralWorkflowEnvironment model;
MistralWorkflowEnvironmentBuilder() {
this(new MistralWorkflowEnvironment());
}
MistralWorkflowEnvironmentBuilder(MistralWorkflowEnvironment model) {
this.model = model;
}
@Override
public MistralWorkflowEnvironment build() {
return model;
}
@Override
public MistralWorkflowEnvironmentBuilder from(MistralWorkflowEnvironment in) {
return null;
}
@Override
public MistralWorkflowEnvironmentBuilder id(String id) {
this.model.id = id;
return this;
}
@Override
public MistralWorkflowEnvironmentBuilder createdAt(Date createdAt) {
this.model.createdAt = createdAt;
return this;
}
@Override
public MistralWorkflowEnvironmentBuilder updatedAt(Date updatedAt) {
this.model.updatedAt = updatedAt;
return this;
}
@Override
public MistralWorkflowEnvironmentBuilder projectId(String projectId) {
this.model.projectId = projectId;
return this;
}
@Override
public MistralWorkflowEnvironmentBuilder scope(Scope scope) {
this.model.scope = scope;
return this;
}
@Override
public MistralWorkflowEnvironmentBuilder name(String name) {
this.model.name = name;
return this;
}
@Override
public MistralWorkflowEnvironmentBuilder description(String description) {
this.model.description = description;
return this;
}
@Override
public MistralWorkflowEnvironmentBuilder variables(Map variables) {
this.model.variables = variables;
return this;
}
}
public static class MistralWorkflowEnvironments extends ListResult {
private static final long serialVersionUID = 1L;
@JsonProperty("environments")
private List list;
@Override
protected List value() {
return this.list;
}
}
}