package com.dalab.autocompliance.dto; import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; import lombok.AllArgsConstructor; import jakarta.validation.constraints.NotEmpty; import java.util.Map; /** * DTO for requesting the generation of a specific compliance report. */ @Data @Builder @NoArgsConstructor @AllArgsConstructor public class ReportGenerationRequestDTO { // Parameters required for this specific report type, matching those defined in ComplianceReportDefinitionDTO.generationParameters // For example, {"gcpProjectId": "my-gcp-project", "targetRegions": ["us-central1", "us-east1"]} @NotEmpty(message = "Generation parameters cannot be empty.") private Map parameters; private String triggeredBy; // Optional: User or system that triggered the generation private String notificationEmail; // Optional: Email to notify upon completion/failure }