Example usage for org.springframework.web.reactive.function.server ServerRequest uriBuilder

List of usage examples for org.springframework.web.reactive.function.server ServerRequest uriBuilder

Introduction

In this page you can find the example usage for org.springframework.web.reactive.function.server ServerRequest uriBuilder.

Prototype

UriBuilder uriBuilder();

Source Link

Document

Get a UriBuilderComponents from the URI associated with this ServerRequest .

Usage

From source file:com.example.message.MessageEndpoint.java

private Mono<ServerResponse> createMessage(final ServerRequest request) {
    final Mono<Message> messageMono = request.principal().cast(UsernamePasswordAuthenticationToken.class)
            .map(UsernamePasswordAuthenticationToken::getPrincipal).cast(AuthenticatedUser.class)
            .map(AuthenticatedUser::getUser)
            .flatMap(user -> request.bodyToMono(TextMessage.class).map(message -> message.toMessage(user)))
            .flatMap(messageRepository::save);
    return messageMono
            .map(message -> request.uriBuilder().path("/messages/{message_id}").build(message.getId()))
            .map(ServerResponse::created).flatMap(res -> res.body(messageMono, Message.class));
}