From 3efd7984b37b6c0244dd642d0d7f89284bb78a00 Mon Sep 17 00:00:00 2001 From: Martin Date: Sun, 6 May 2018 12:34:46 +0200 Subject: [PATCH] Rename mongo repository to reactive mongo repository --- .../webfluxdemo/WebfluxDemoApplication.java | 8 ++++---- .../webfluxdemo/controller/PersonController.java | 14 +++++++------- ...epository.java => ReactiveMongoRepository.java} | 4 +--- src/main/resources/application.properties | 4 ++-- 4 files changed, 14 insertions(+), 16 deletions(-) rename src/main/java/com/example/webfluxdemo/repository/{MongoRepository.java => ReactiveMongoRepository.java} (52%) diff --git a/src/main/java/com/example/webfluxdemo/WebfluxDemoApplication.java b/src/main/java/com/example/webfluxdemo/WebfluxDemoApplication.java index 5377dbf..f9d16f7 100644 --- a/src/main/java/com/example/webfluxdemo/WebfluxDemoApplication.java +++ b/src/main/java/com/example/webfluxdemo/WebfluxDemoApplication.java @@ -1,7 +1,7 @@ package com.example.webfluxdemo; import com.example.webfluxdemo.model.Person; -import com.example.webfluxdemo.repository.MongoRepository; +import com.example.webfluxdemo.repository.ReactiveMongoRepository; import lombok.extern.slf4j.Slf4j; import org.springframework.boot.CommandLineRunner; import org.springframework.boot.SpringApplication; @@ -45,11 +45,11 @@ public CommandLineRunner initRedis(ReactiveRedisTemplate reactiv } @Bean - public CommandLineRunner savePeopleToMongo(MongoRepository mongoRepository) + public CommandLineRunner savePeopleToMongo(ReactiveMongoRepository reactiveMongoRepository) { return args -> { - mongoRepository.deleteAll().thenMany(mongoRepository.saveAll(Set.of( + reactiveMongoRepository.deleteAll().thenMany(reactiveMongoRepository.saveAll(Set.of( new Person(1, "Jack", 45, "Oklahoma"), new Person(2, "John", 24, "Chicago"), new Person(6, "Smith", 11, "London"), @@ -57,7 +57,7 @@ public CommandLineRunner savePeopleToMongo(MongoRepository mongoRepository) new Person(7, "Alexander", 44, "Amsterdam"), new Person(3, "Jane", 32, "Brian"), new Person(4, "Brian", 48, "New York")))) - .subscribe(person -> log.info("Saved person: " + person)); + .subscribe(person -> log.info("Saved person: " + person)); }; } diff --git a/src/main/java/com/example/webfluxdemo/controller/PersonController.java b/src/main/java/com/example/webfluxdemo/controller/PersonController.java index 5d0f99e..7d3a820 100644 --- a/src/main/java/com/example/webfluxdemo/controller/PersonController.java +++ b/src/main/java/com/example/webfluxdemo/controller/PersonController.java @@ -1,7 +1,7 @@ package com.example.webfluxdemo.controller; import com.example.webfluxdemo.model.Person; -import com.example.webfluxdemo.repository.MongoRepository; +import com.example.webfluxdemo.repository.ReactiveMongoRepository; import lombok.extern.slf4j.Slf4j; import org.springframework.data.redis.core.ReactiveRedisTemplate; import org.springframework.http.HttpStatus; @@ -22,12 +22,12 @@ public class PersonController { private final ReactiveRedisTemplate reactiveRedisTemplate; - private final MongoRepository mongoRepository; + private final ReactiveMongoRepository reactiveMongoRepository; - public PersonController(ReactiveRedisTemplate reactiveRedisTemplate, MongoRepository mongoRepository) + public PersonController(ReactiveRedisTemplate reactiveRedisTemplate, ReactiveMongoRepository reactiveMongoRepository) { this.reactiveRedisTemplate = reactiveRedisTemplate; - this.mongoRepository = mongoRepository; + this.reactiveMongoRepository = reactiveMongoRepository; } @GetMapping(value = "/slow") @@ -44,14 +44,14 @@ public Flux getPersonsByStringNumber(@RequestParam Set numbers) return Flux.fromIterable(numbers) .flatMap(number -> reactiveRedisTemplate.opsForValue().get(number).doOnNext(log::info)) .map(Integer::valueOf) - .flatMap(id -> mongoRepository.findById(id).doOnNext(person -> log.info(person.toString()))) + .flatMap(id -> reactiveMongoRepository.findById(id).doOnNext(person -> log.info(person.toString()))) .switchIfEmpty(Mono.error(new IllegalArgumentException("Not found person."))); } - @GetMapping(value = "/people-stream", produces = MediaType.TEXT_EVENT_STREAM_VALUE) + @GetMapping(value = "/people-stream", produces = MediaType.TEXT_EVENT_STREAM_VALUE) // Server Sent Events (SSE) public Flux getAllAsStream() { - return mongoRepository.findAll().delayElements(Duration.ofMillis(1000)); + return reactiveMongoRepository.findAll().delayElements(Duration.ofMillis(1000)); } @ExceptionHandler(IllegalArgumentException.class) diff --git a/src/main/java/com/example/webfluxdemo/repository/MongoRepository.java b/src/main/java/com/example/webfluxdemo/repository/ReactiveMongoRepository.java similarity index 52% rename from src/main/java/com/example/webfluxdemo/repository/MongoRepository.java rename to src/main/java/com/example/webfluxdemo/repository/ReactiveMongoRepository.java index 5bbc5d8..5c49e88 100644 --- a/src/main/java/com/example/webfluxdemo/repository/MongoRepository.java +++ b/src/main/java/com/example/webfluxdemo/repository/ReactiveMongoRepository.java @@ -2,9 +2,7 @@ import com.example.webfluxdemo.model.Person; import org.springframework.data.repository.reactive.ReactiveCrudRepository; -import reactor.core.publisher.Mono; -public interface MongoRepository extends ReactiveCrudRepository +public interface ReactiveMongoRepository extends ReactiveCrudRepository { - Mono findById(int id); } diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties index 3770ca9..25a0604 100644 --- a/src/main/resources/application.properties +++ b/src/main/resources/application.properties @@ -1,2 +1,2 @@ -spring.data.mongodb.host=localhost -spring.redis.host=localhost +spring.data.mongodb.host=192.168.99.100 +spring.redis.host=192.168.99.100