package com.iqser.red.service.persistence.service.v1.api.internal.resources;

import org.springframework.http.HttpStatus;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.ResponseStatus;

import com.iqser.red.service.persistence.service.v1.api.shared.model.DigitalSignatureKms;
import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.configuration.DigitalSignature;
import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.configuration.DigitalSignatureType;

@ResponseStatus(value = HttpStatus.OK)
public interface DigitalSignatureResource {

    String DIGITAL_SIGNATURE_PATH = "/digital-signature";
    String DIGITAL_SIGNATURE_TYPE_PATH = DIGITAL_SIGNATURE_PATH + "/type";
    String DIGITAL_SIGNATURE_KMS_PATH = DIGITAL_SIGNATURE_PATH + "/kms";


    @GetMapping(value = InternalApi.BASE_PATH+DIGITAL_SIGNATURE_TYPE_PATH, produces = MediaType.APPLICATION_JSON_VALUE)
    DigitalSignatureType getActiveDigitalSignatureType();


    @GetMapping(value = InternalApi.BASE_PATH+DIGITAL_SIGNATURE_PATH, produces = MediaType.APPLICATION_JSON_VALUE)
    DigitalSignature getDigitalSignature();


    @GetMapping(value = InternalApi.BASE_PATH+DIGITAL_SIGNATURE_KMS_PATH, produces = MediaType.APPLICATION_JSON_VALUE)
    DigitalSignatureKms getDigitalSignatureKms();

}
