Skip to content
Snippets Groups Projects
Commit 7350aa0b authored by Christopher Cottier's avatar Christopher Cottier
Browse files

filled in WebClient methods to test API

parent ea81d1ef
No related merge requests found
......@@ -2,11 +2,49 @@ package com.nisum.webfluxday2;
import com.nisum.webfluxday2.model.Product;
import org.springframework.web.reactive.function.client.WebClient;
import reactor.core.publisher.Flux;
import reactor.core.publisher.Mono;
public class WebClientTest {
public static void main(String[] args) {
WebClient webClient = WebClient.create("http://localhost:8080/products/608347c698dbca1113ceb613");
Mono<Product> mono = webClient.get().retrieve().bodyToMono(Product.class);
public static Flux<Product> findAllProducts() {
return WebClient.create("http://localhost:8080/products")
.get()
.retrieve()
.bodyToFlux(Product.class);
}
public static Mono<Product> findProduct(String id){
return WebClient.create("http://localhost:8080/products/" + id)
.get()
.retrieve()
.bodyToMono(Product.class);
}
public static Mono<Product> postProduct (Product product){
return WebClient.create("http://localhost:8080/products/")
.post()
.body(Mono.just(product), Product.class)
.retrieve()
.bodyToMono(Product.class);
}
public static Mono<Product> putProduct (Product product, String id){
return WebClient.create("http://localhost:8080/products/" + id)
.put()
.body(Mono.just(product), Product.class)
.retrieve()
.bodyToMono(Product.class);
}
public static Mono<Void> deleteProduct (String id){
return WebClient.create("http://localhost:8080/products/" + id)
.delete()
.retrieve()
.bodyToMono(Void.class);
}
}
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment