Skip to content

Commit ee2559c

Browse files
committed
handler implementation started
1 parent ab8e0ad commit ee2559c

File tree

3 files changed

+14
-2
lines changed

3 files changed

+14
-2
lines changed
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,29 @@
11
package spring.znevzz.reactive.controller;
22

3+
import lombok.AllArgsConstructor;
34
import org.springframework.web.bind.annotation.GetMapping;
45
import org.springframework.web.bind.annotation.PostMapping;
56
import org.springframework.web.bind.annotation.RequestBody;
67
import org.springframework.web.bind.annotation.RestController;
78
import reactor.core.publisher.Flux;
8-
import spring.znevzz.reactive.bean.ICacheRequest;
99
import spring.znevzz.reactive.bean.ICacheResponse;
1010
import spring.znevzz.reactive.bean.SimpleCacheRequest;
11+
import spring.znevzz.reactive.handler.IRequestHandler;
1112

13+
@AllArgsConstructor
1214
@RestController
1315
public class CacheController {
1416

17+
private final IRequestHandler handler;
18+
1519
@GetMapping("/")
1620
public String welcome() {
1721
return "welcome";
1822
}
1923

2024
@PostMapping("/cache")
2125
public Flux<ICacheResponse> fromCache(@RequestBody SimpleCacheRequest request) {
22-
return Flux.empty();
26+
return handler.getFromCache(request);
2327
}
2428

2529
}

src/main/java/spring/znevzz/reactive/handler/CacheRequestHandler.java

+6
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
import org.springframework.stereotype.Component;
44
import org.springframework.web.reactive.function.server.ServerRequest;
5+
import reactor.core.publisher.Flux;
56
import reactor.core.publisher.Mono;
67
import spring.znevzz.reactive.bean.ICacheRequest;
78
import spring.znevzz.reactive.bean.ICacheResponse;
@@ -18,4 +19,9 @@ public Mono handle(ServerRequest serverRequest) {
1819
public Mono<ICacheResponse> get(ICacheRequest iCacheRequest) {
1920
return Mono.empty();
2021
}
22+
23+
@Override
24+
public Flux<ICacheResponse> getFromCache(ICacheRequest request) {
25+
return Flux.empty();
26+
}
2127
}

src/main/java/spring/znevzz/reactive/handler/IRequestHandler.java

+2
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@ public interface IRequestHandler<T,R> extends HandlerFunction {
1414

1515
Mono<R> get(T t);
1616

17+
Flux<R> getFromCache(T t);
18+
1719
default <T extends ServerResponse> Mono<T> welcome(ServerRequest serverRequest) {
1820
Mono welcomeMessage = Mono.empty();
1921
Mono<String> responseMessage = Mono.just("welcome");

0 commit comments

Comments
 (0)