package com.iqser.red.service.persistence.service.v1.api.shared.mongo.document;

import org.springframework.data.annotation.Id;
import org.springframework.data.mongodb.core.index.Indexed;
import org.springframework.data.mongodb.core.mapping.Document;

import lombok.AllArgsConstructor;
import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.ToString;

@Getter
@Setter
@AllArgsConstructor
@NoArgsConstructor
@EqualsAndHashCode(onlyExplicitlyIncluded = true)
@ToString
@Document(collection = "images")
public class ImageDocument {

    @Indexed
    private double[] featureVector;

    private String label;

    @Id
    @EqualsAndHashCode.Include
    private String imageId;

    private String templateId;

    private String dossierId;

    private String fileId;

    private Byte thumbnail;

}
