You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

51 lines
1.4 KiB

package com.cm.demanderetraiteanticipe.service.mapper;
import com.cm.demanderetraiteanticipe.security.SecurityUtils;
import com.cm.demanderetraiteanticipe.service.dto.PersonneTitulaireDTO;
import org.springframework.http.HttpHeaders;
import org.springframework.http.MediaType;
import org.springframework.stereotype.Service;
import org.springframework.web.reactive.function.client.WebClient;
import reactor.core.publisher.Mono;
@Service
public class ConnectionService {
private static final String BASE_URL = "http://localhost:3001/services/";
public WebClient webClient() {
return WebClient.builder()
.baseUrl(BASE_URL)
.defaultHeader(HttpHeaders.CONTENT_TYPE, MediaType.APPLICATION_JSON_VALUE)
.defaultHeader(HttpHeaders.AUTHORIZATION, "Bearer " + SecurityUtils.getCurrentUserJWT().get())
.build();
}
public Mono<PersonneTitulaireDTO> getPersonne(Long id)
{
return this.webClient()
.get()
.uri("personnetitulaire/api/personne-titulaires/"+id)
.retrieve()
.bodyToMono(PersonneTitulaireDTO.class);
}
public Mono<PersonneTitulaireDTO> updatStatut(PersonneTitulaireDTO p)
{
return this.webClient()
.put()
.uri("personnetitulaire/api/personne-titulaires")
.body(Mono.just(p), PersonneTitulaireDTO.class)
.retrieve().bodyToMono(PersonneTitulaireDTO.class);
}
}