io.github.primelib.jira4j.restv3.model.CreateWorkflowTransitionDetailsRules Maven / Gradle / Ivy
Show all versions of jira4j-rest-v3 Show documentation
package io.github.primelib.jira4j.restv3.model;
import java.util.function.Consumer;
import org.jetbrains.annotations.ApiStatus;
import javax.annotation.processing.Generated;
import lombok.AccessLevel;
import lombok.Builder;
import lombok.Getter;
import lombok.Setter;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import java.util.List;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
import com.fasterxml.jackson.annotation.JsonTypeName;
import com.fasterxml.jackson.annotation.JsonProperty;
/**
* CreateWorkflowTransitionDetailsRules
*
*/
@Getter
@Setter
@EqualsAndHashCode
@ToString
@Accessors(fluent = true, chain = true)
@NoArgsConstructor(access = AccessLevel.PROTECTED, force = true)
@Builder
@JsonPropertyOrder({
"conditions",
"postFunctions",
"validators"
})
@JsonTypeName("CreateWorkflowTransitionDetails_rules")
@Generated(value = "io.github.primelib.primecodegen.javafeign.JavaFeignGenerator")
public class CreateWorkflowTransitionDetailsRules {
@JsonProperty("conditions")
protected CreateWorkflowTransitionRulesDetailsConditions conditions;
/**
* The workflow post functions.
* **Note:** The default post functions are always added to the *initial* transition, as in:
*
*
* "postFunctions": [
*
*
*
* {
*
*
*
*
*
* "type": "IssueCreateFunction"
*
*
*
* },
*
*
*
* {
*
*
*
*
*
* "type": "IssueReindexFunction"
*
*
*
* },
*
*
*
* {
*
*
*
*
*
* "type": "FireIssueEventFunction",
*
*
*
*
*
* "configuration": {
*
*
*
*
*
*
*
* "event": {
*
*
*
*
*
*
*
*
*
* "id": "1",
*
*
*
*
*
*
*
*
*
* "name": "issue_created"
*
*
*
*
*
*
*
* }
*
*
*
*
*
* }
*
*
*
* }
*
* ]
* **Note:** The default post functions are always added to the *global* and *directed* transitions, as in:
*
*
* "postFunctions": [
*
*
*
* {
*
*
*
*
*
* "type": "UpdateIssueStatusFunction"
*
*
*
* },
*
*
*
* {
*
*
*
*
*
* "type": "CreateCommentFunction"
*
*
*
* },
*
*
*
* {
*
*
*
*
*
* "type": "GenerateChangeHistoryFunction"
*
*
*
* },
*
*
*
* {
*
*
*
*
*
* "type": "IssueReindexFunction"
*
*
*
* },
*
*
*
* {
*
*
*
*
*
* "type": "FireIssueEventFunction",
*
*
*
*
*
* "configuration": {
*
*
*
*
*
*
*
* "event": {
*
*
*
*
*
*
*
*
*
* "id": "13",
*
*
*
*
*
*
*
*
*
* "name": "issue_generic"
*
*
*
*
*
*
*
* }
*
*
*
*
*
* }
*
*
*
* }
*
* ]
*/
@JsonProperty("postFunctions")
protected List postFunctions;
/**
* The workflow validators.
* **Note:** The default permission validator is always added to the *initial* transition, as in:
*
*
* "validators": [
*
*
*
* {
*
*
*
*
*
* "type": "PermissionValidator",
*
*
*
*
*
* "configuration": {
*
*
*
*
*
*
*
* "permissionKey": "CREATE_ISSUES"
*
*
*
*
*
* }
*
*
*
* }
*
* ]
*/
@JsonProperty("validators")
protected List validators;
/**
* Constructs a validated instance of {@link CreateWorkflowTransitionDetailsRules}.
*
* @param spec the specification to process
*/
public CreateWorkflowTransitionDetailsRules(Consumer spec) {
spec.accept(this);
}
/**
* Constructs a validated instance of {@link CreateWorkflowTransitionDetailsRules}.
*
* NOTE: This constructor is not considered stable and may change if the model is updated. Consider using {@link #CreateWorkflowTransitionDetailsRules(Consumer)} instead.
* @param conditions conditions
* @param postFunctions The workflow post functions. **Note:** The default post functions are always added to the *initial* transition, as in: "postFunctions": [ { "type": "IssueCreateFunction" }, { "type": "IssueReindexFunction" }, { "type": "FireIssueEventFunction", "configuration": { "event": { "id": "1", "name": "issue_created" } } } ] **Note:** The default post functions are always added to the *global* and *directed* transitions, as in: "postFunctions": [ { "type": "UpdateIssueStatusFunction" }, { "type": "CreateCommentFunction" }, { "type": "GenerateChangeHistoryFunction" }, { "type": "IssueReindexFunction" }, { "type": "FireIssueEventFunction", "configuration": { "event": { "id": "13", "name": "issue_generic" } } } ]
* @param validators The workflow validators. **Note:** The default permission validator is always added to the *initial* transition, as in: "validators": [ { "type": "PermissionValidator", "configuration": { "permissionKey": "CREATE_ISSUES" } } ]
*/
@ApiStatus.Internal
public CreateWorkflowTransitionDetailsRules(CreateWorkflowTransitionRulesDetailsConditions conditions, List postFunctions, List validators) {
this.conditions = conditions;
this.postFunctions = postFunctions;
this.validators = validators;
}
}