package com.dalab.policyengine.dto; import java.util.List; import java.util.Map; import com.dalab.policyengine.model.PolicyStatus; import jakarta.validation.Valid; import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotEmpty; import jakarta.validation.constraints.Size; public class PolicyInputDTO { @NotBlank @Size(max = 255) private String name; @Size(max = 1000) private String description; private PolicyStatus status = PolicyStatus.DISABLED; private String conditionLogic; // e.g., "rule1 && (rule2 || rule3)" @NotEmpty @Valid private List rules; private Map actions; // Policy-level actions // Getters and Setters public String getName() { return name; } public void setName(String name) { this.name = name; } public String getDescription() { return description; } public void setDescription(String description) { this.description = description; } public PolicyStatus getStatus() { return status; } public void setStatus(PolicyStatus status) { this.status = status; } public String getConditionLogic() { return conditionLogic; } public void setConditionLogic(String conditionLogic) { this.conditionLogic = conditionLogic; } public List getRules() { return rules; } public void setRules(List rules) { this.rules = rules; } public Map getActions() { return actions; } public void setActions(Map actions) { this.actions = actions; } }