package fr.titionfire.ffsaf.rest.client;

import fr.titionfire.ffsaf.rest.data.UniteLegaleRoot;
import io.quarkus.cache.CacheResult;
import io.smallrye.mutiny.Uni;
import jakarta.ws.rs.GET;
import jakarta.ws.rs.Path;
import jakarta.ws.rs.PathParam;
import org.eclipse.microprofile.rest.client.annotation.ClientHeaderParam;
import org.eclipse.microprofile.rest.client.inject.RegisterRestClient;

@Path("/")
@RegisterRestClient
@ClientHeaderParam(name = "X-Client-Secret", value = "${siren-api.key}")
public interface SirenService {

    @GET
    @Path("/v3/unites_legales/{SIREN}")
    @CacheResult(cacheName = "AssoData_siren")
    Uni<UniteLegaleRoot> get_unite(@PathParam("SIREN") String siren);
}