@Bean public RouterFunction<ServerResponse> testWhenMetricPathIsNotMeet() { RouterFunction<ServerResponse> route = RouterFunctions.route( RequestPredicates.path("/actuator/metrics/gateway.requests"), request -> ServerResponse.ok().body(BodyInserters.fromObject(HELLO_FROM_FAKE_ACTUATOR_METRICS_GATEWAY_REQUESTS))); return route; }
public Mono<ServerResponse> route(ServerRequest request) { assertThat((ServiceRequestContext) RequestContext.current()).isNotNull(); return ServerResponse.ok().contentType(MediaType.TEXT_PLAIN) .body(BodyInserters.fromObject("route")); }
@Test public void routeMatch() { HandlerFunction<ServerResponse> handlerFunction = request -> ServerResponse.ok().build(); MockServerRequest request = MockServerRequest.builder().build(); RequestPredicate requestPredicate = mock(RequestPredicate.class); when(requestPredicate.test(request)).thenReturn(true); RouterFunction<ServerResponse> result = RouterFunctions.route(requestPredicate, handlerFunction); assertNotNull(result); Mono<HandlerFunction<ServerResponse>> resultHandlerFunction = result.route(request); StepVerifier.create(resultHandlerFunction) .expectNext(handlerFunction) .expectComplete() .verify(); }
public Mono<ServerResponse> saveUser(final ServerRequest request) { return ServerResponse.ok() .contentType(APPLICATION_STREAM_JSON) .body(request.bodyToFlux(User.class) .flatMap(users::saveOne), User.class); } }
public Mono<ServerResponse> getTime(ServerRequest serverRequest) { String timeType = serverRequest.queryParam("time").orElse("Now"); return getTimeByType(timeType).flatMap(s -> ServerResponse.ok() .contentType(MediaType.TEXT_PLAIN).syncBody(s)) .onErrorResume(e -> Mono.just("Error: " + e.getMessage()).flatMap(s -> ServerResponse.ok().contentType(MediaType.TEXT_PLAIN).syncBody(s))); }
static RouterFunction getRouter() { HandlerFunction<ServerResponse> hello = request -> ok().body(fromObject("Hello")); return route( GET("/"), hello) .andRoute( GET("/json"), req -> ok().contentType(APPLICATION_JSON).body(fromObject(new Hello("world")))); }
public Mono<ServerResponse> findAll(ServerRequest request) { Flux<Restaurant> result = restaurantRepository.findAll(); return ok().contentType(APPLICATION_JSON_UTF8).body(result, Restaurant.class); }
public Mono<ServerResponse> listPeople(ServerRequest request) { Flux<Person> people = this.repository.allPeople(); return ServerResponse.ok().contentType(APPLICATION_JSON).body(people, Person.class); }
public Mono<ServerResponse> listUsersReactive(ServerRequest request) { Flux<User> userFlux = userReactiveRepository.findAll().repeat(30000); ReactiveDataDriverContextVariable users = new ReactiveDataDriverContextVariable(userFlux, 1000); Map<String,Object> data = new HashMap<>(); data.put("users", users); return ServerResponse.ok().contentType(MediaType.TEXT_HTML).render("users", data); } }
private Mono<ServerResponse> handleException(ServerRequest request) { Map<String, Object> errorPropertiesMap = getErrorAttributes(request, false); errorPropertiesMap.put("error", "报错啦"); return ServerResponse.status(HttpStatus.BAD_REQUEST) .contentType(MediaType.APPLICATION_JSON_UTF8) .body(BodyInserters.fromObject(errorPropertiesMap)); }
public Mono<ServerResponse> create(ServerRequest request) { Flux<Restaurant> restaurants = request.bodyToFlux(Restaurant.class); Flux<Restaurant> result = restaurants .buffer(10000) .flatMap(rs -> reactiveMongoTemplate.insert(rs, Restaurant.class)); return ok().contentType(APPLICATION_JSON_UTF8).body(result, Restaurant.class); }
public Mono<ServerResponse> get(ServerRequest request) { String id = request.pathVariable("id"); Mono<Restaurant> result = restaurantRepository.findById(id); return ok().contentType(APPLICATION_JSON_UTF8).body(result, Restaurant.class); }
public Mono<ServerResponse> forZone(ServerRequest request) { String id = request.pathVariable("id"); return ServerResponse.ok().contentType(MediaType.APPLICATION_STREAM_JSON) .body(this.content.get(id), ElectricityMeasure.class); }
@Bean HandlerFunction<ServerResponse> getOrdersHandler() { return request -> ok().contentType(APPLICATION_JSON_UTF8) .body(Flux.fromIterable(orderRepository.findAll()), Order.class); }
public Mono<ServerResponse> state(ServerRequest request) { String appId = request.pathVariable("id"); PregelGraphAlgorithm<Long, ?, ?, ?> algorithm = algorithms.get(appId); return ServerResponse.ok() .contentType(MediaType.APPLICATION_JSON) .body(Mono.just(new GraphAlgorithmStatus(algorithm.state())), GraphAlgorithmStatus.class); }
public Mono<ServerResponse> getAllUsers(ServerRequest request) { Flux<User> allUsers = userReactiveRepository.findAll(); return ServerResponse.ok().contentType(MediaType.APPLICATION_JSON_UTF8) .body(allUsers, User.class); }
public Mono<ServerResponse> saveUser(final ServerRequest request) { return ServerResponse.ok() .contentType(APPLICATION_STREAM_JSON) .body(request.bodyToFlux(User.class) .flatMap(users::save), User.class); } }
@Bean HandlerFunction<ServerResponse> getCountQueryHandler() { return request -> ok().contentType(APPLICATION_JSON_UTF8) .body(Flux.fromIterable(orderRepository.findAllPrices()), Price.class); }
public Mono<ServerResponse> sendTimePerSec(ServerRequest serverRequest) { return ok().contentType(MediaType.TEXT_EVENT_STREAM).body( // 1 Flux.interval(Duration.ofSeconds(1)). // 2 map(l -> new SimpleDateFormat("HH:mm:ss").format(new Date())), String.class); } }
public Mono<ServerResponse> hello(ServerRequest request) { return ServerResponse .ok() .contentType(MediaType.TEXT_PLAIN) .body(BodyInserters.fromObject("Hello, World")); }