package com.iqser.red.service.persistence.service.v1.api.shared.model;

import java.time.OffsetDateTime;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;

import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.ManualRedactions;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class AnalyzeRequest {

    private MessageType messageType;

    private String dossierId;
    private String fileId;
    private String dossierTemplateId;
    private ManualRedactions manualRedactions;
    private OffsetDateTime lastProcessed;
    private int analysisNumber;

    @Builder.Default
    private Set<Integer> excludedPages = new HashSet<>();
    @Builder.Default
    private Set<Integer> sectionsToReanalyse = new HashSet<>();

    @Builder.Default
    private List<FileAttribute> fileAttributes = new ArrayList<>();

}

