package com.sequenceiq.cloudbreak.api.model; import java.util.Set; import javax.validation.Valid; import javax.validation.constraints.NotNull; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.sequenceiq.cloudbreak.doc.ModelDescriptions; import com.sequenceiq.cloudbreak.doc.ModelDescriptions.HostGroupModelDescription; import io.swagger.annotations.ApiModelProperty; @JsonIgnoreProperties(ignoreUnknown = true) public abstract class HostGroupBase { @NotNull @ApiModelProperty(value = ModelDescriptions.NAME, required = true) private String name; @Valid @NotNull @ApiModelProperty(value = ModelDescriptions.HostGroupModelDescription.CONSTRAINT, required = true) private ConstraintJson constraint; @ApiModelProperty(value = HostGroupModelDescription.RECIPE_IDS) private Set<Long> recipeIds; @ApiModelProperty(value = ModelDescriptions.HostGroupModelDescription.RECOVERY_MODE) private RecoveryMode recoveryMode = RecoveryMode.MANUAL; public String getName() { return name; } public void setName(String name) { this.name = name; } public ConstraintJson getConstraint() { return constraint; } public void setConstraint(ConstraintJson constraint) { this.constraint = constraint; } public Set<Long> getRecipeIds() { return recipeIds; } public void setRecipeIds(Set<Long> recipeIds) { this.recipeIds = recipeIds; } public RecoveryMode getRecoveryMode() { return recoveryMode; } public void setRecoveryMode(RecoveryMode recoveryMode) { this.recoveryMode = recoveryMode; } }