package com.megatim.apifdxweb.service.ifaces.dataproduction; import com.megatim.apifdxweb.model.request.UpdateRequest; import com.megatim.fdxcommons.core.ifaces.interceptor.LoggingInterceptorBinding; import com.megatim.fdxcommons.model.pojo.CriteriaEntityFromView; import java.util.LinkedHashMap; import java.util.List; import javax.annotation.security.PermitAll; import javax.ws.rs.Consumes; import javax.ws.rs.POST; import javax.ws.rs.PUT; import javax.ws.rs.Path; import javax.ws.rs.PathParam; import javax.ws.rs.Produces; import javax.ws.rs.core.Context; import javax.ws.rs.core.HttpHeaders; import javax.ws.rs.core.MediaType; import javax.ws.rs.core.Response; /** * * @author lenovo */ public interface DataProductionRS { @POST @Consumes({MediaType.APPLICATION_JSON}) @Produces({MediaType.APPLICATION_JSON}) @PermitAll @Path("add-all/{code_type_fichier}") @LoggingInterceptorBinding(message = "Production de plusieurs lignes de données du typefichier {code_type_fichier}", shouldCopyData = false) public Response saveAll(@Context HttpHeaders headers, @PathParam("code_type_fichier") String codeTypeFichier, List> datas); @POST @Consumes({MediaType.APPLICATION_JSON}) @Produces({MediaType.APPLICATION_JSON}) @PermitAll @Path("add-one/{code_type_fichier}") @LoggingInterceptorBinding(message = "Production d'une ligne de donnée du typefichier {code_type_fichier}") public Response save(@Context HttpHeaders headers, @PathParam("code_type_fichier") String codeTypeFichier, LinkedHashMap datas); @PUT @Produces({MediaType.APPLICATION_JSON}) @Consumes({MediaType.APPLICATION_JSON}) @PermitAll @Path("update-all/{code_type_fichier}") @LoggingInterceptorBinding(message = "Modification de plusieurs lignes du typefichier {code_type_fichier}") public Response updateAll(@Context HttpHeaders headers, @PathParam("code_type_fichier") String codeTypeFichier, UpdateRequest updateRequest); @PUT @Produces({MediaType.APPLICATION_JSON}) @Consumes({MediaType.APPLICATION_JSON}) @PermitAll @Path("update-one/{code_type_fichier}") @LoggingInterceptorBinding(message = "Modification d'une ligne du typefichier {code_type_fichier}") public Response updateOne(@Context HttpHeaders headers, @PathParam("code_type_fichier") String codeTypeFichier, UpdateRequest updateRequest); @POST @Produces({MediaType.APPLICATION_JSON}) @Consumes({MediaType.APPLICATION_JSON}) @PermitAll @Path("delete-all/{code_type_fichier}") @LoggingInterceptorBinding(message = "Supppression des lignes du typefichier {code_type_fichier}") public Response deleteAll(@Context HttpHeaders headers, @PathParam("code_type_fichier") String codeTypeFichier, CriteriaEntityFromView criterion); @POST @Produces({MediaType.APPLICATION_JSON}) @Consumes({MediaType.APPLICATION_JSON}) @PermitAll @Path("delete-one/{code_type_fichier}") @LoggingInterceptorBinding(message = "Supppression des lignes du typefichier {code_type_fichier}") public Response deleteOne(@Context HttpHeaders headers, @PathParam("code_type_fichier") String codeTypeFichier, CriteriaEntityFromView criterion); }