Skip to content

Commit 1290c9b

Browse files
gateway and tutorial modules
1 parent 5b955db commit 1290c9b

30 files changed

+98
-78
lines changed
File renamed without changes.

reactive-lab-edge/src/main/java/io/reactivex/lab/edge/APIServiceLayer.java reactive-lab-gateway/src/main/java/io/reactivex/lab/gateway/APIServiceLayer.java

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
package io.reactivex.lab.edge;
1+
package io.reactivex.lab.gateway;
22

3-
import io.reactivex.lab.edge.clients.UserCommand;
4-
import io.reactivex.lab.edge.clients.UserCommand.User;
3+
import io.reactivex.lab.gateway.clients.UserCommand;
4+
import io.reactivex.lab.gateway.clients.UserCommand.User;
55

66
import java.util.Arrays;
77

reactive-lab-edge/src/main/java/io/reactivex/lab/edge/EdgeServer.java reactive-lab-gateway/src/main/java/io/reactivex/lab/gateway/StartGatewayServer.java

+6-6
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
1-
package io.reactivex.lab.edge;
1+
package io.reactivex.lab.gateway;
22

33
import io.netty.buffer.ByteBuf;
44
import io.netty.handler.codec.http.HttpResponseStatus;
5-
import io.reactivex.lab.edge.routes.RouteForDeviceHome;
6-
import io.reactivex.lab.edge.routes.mock.TestRouteBasic;
7-
import io.reactivex.lab.edge.routes.mock.TestRouteWithHystrix;
8-
import io.reactivex.lab.edge.routes.mock.TestRouteWithSimpleFaultTolerance;
5+
import io.reactivex.lab.gateway.routes.RouteForDeviceHome;
6+
import io.reactivex.lab.gateway.routes.mock.TestRouteBasic;
7+
import io.reactivex.lab.gateway.routes.mock.TestRouteWithHystrix;
8+
import io.reactivex.lab.gateway.routes.mock.TestRouteWithSimpleFaultTolerance;
99
import io.reactivex.netty.RxNetty;
1010
import io.reactivex.netty.pipeline.PipelineConfigurators;
1111
import io.reactivex.netty.protocol.http.server.HttpServerRequest;
@@ -21,7 +21,7 @@
2121
import com.netflix.hystrix.contrib.metrics.eventstream.HystrixMetricsPoller;
2222
import com.netflix.hystrix.strategy.concurrency.HystrixRequestContext;
2323

24-
public class EdgeServer {
24+
public class StartGatewayServer {
2525

2626
public static void main(String... args) {
2727
// hystrix stream => http://localhost:9999

reactive-lab-edge/src/main/java/io/reactivex/lab/edge/clients/BookmarkCommand.java reactive-lab-gateway/src/main/java/io/reactivex/lab/gateway/clients/BookmarkCommand.java

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
package io.reactivex.lab.edge.clients;
1+
package io.reactivex.lab.gateway.clients;
22

3-
import io.reactivex.lab.edge.clients.BookmarksCommand.Bookmark;
4-
import io.reactivex.lab.edge.clients.PersonalizedCatalogCommand.Video;
3+
import io.reactivex.lab.gateway.clients.BookmarksCommand.Bookmark;
4+
import io.reactivex.lab.gateway.clients.PersonalizedCatalogCommand.Video;
55

66
import java.util.*;
77

reactive-lab-edge/src/main/java/io/reactivex/lab/edge/clients/BookmarksCommand.java reactive-lab-gateway/src/main/java/io/reactivex/lab/gateway/clients/BookmarksCommand.java

+5-5
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
package io.reactivex.lab.edge.clients;
1+
package io.reactivex.lab.gateway.clients;
22

3-
import io.reactivex.lab.edge.clients.BookmarksCommand.Bookmark;
4-
import io.reactivex.lab.edge.clients.PersonalizedCatalogCommand.Video;
5-
import io.reactivex.lab.edge.common.RxNettySSE;
6-
import io.reactivex.lab.edge.common.SimpleJson;
3+
import io.reactivex.lab.gateway.clients.BookmarksCommand.Bookmark;
4+
import io.reactivex.lab.gateway.clients.PersonalizedCatalogCommand.Video;
5+
import io.reactivex.lab.gateway.common.RxNettySSE;
6+
import io.reactivex.lab.gateway.common.SimpleJson;
77
import io.reactivex.netty.protocol.http.client.HttpClientRequest;
88

99
import java.util.ArrayList;

reactive-lab-edge/src/main/java/io/reactivex/lab/edge/clients/GeoCommand.java reactive-lab-gateway/src/main/java/io/reactivex/lab/gateway/clients/GeoCommand.java

+4-4
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
package io.reactivex.lab.edge.clients;
1+
package io.reactivex.lab.gateway.clients;
22

3-
import io.reactivex.lab.edge.clients.GeoCommand.GeoIP;
4-
import io.reactivex.lab.edge.common.RxNettySSE;
5-
import io.reactivex.lab.edge.common.SimpleJson;
3+
import io.reactivex.lab.gateway.clients.GeoCommand.GeoIP;
4+
import io.reactivex.lab.gateway.common.RxNettySSE;
5+
import io.reactivex.lab.gateway.common.SimpleJson;
66
import io.reactivex.netty.protocol.http.client.HttpClientRequest;
77

88
import java.util.List;

reactive-lab-edge/src/main/java/io/reactivex/lab/edge/clients/ID.java reactive-lab-gateway/src/main/java/io/reactivex/lab/gateway/clients/ID.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package io.reactivex.lab.edge.clients;
1+
package io.reactivex.lab.gateway.clients;
22

33
public interface ID {
44

reactive-lab-edge/src/main/java/io/reactivex/lab/edge/clients/MockServiceCommand.java reactive-lab-gateway/src/main/java/io/reactivex/lab/gateway/clients/MockServiceCommand.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
package io.reactivex.lab.edge.clients;
1+
package io.reactivex.lab.gateway.clients;
22

33
import io.netty.buffer.ByteBuf;
44
import io.netty.buffer.ByteBufInputStream;
5-
import io.reactivex.lab.edge.routes.mock.BackendResponse;
5+
import io.reactivex.lab.gateway.routes.mock.BackendResponse;
66
import io.reactivex.netty.RxNetty;
77
import io.reactivex.netty.protocol.http.client.HttpClientRequest;
88
import io.reactivex.netty.protocol.http.client.HttpClientResponse;

reactive-lab-edge/src/main/java/io/reactivex/lab/edge/clients/PersonalizedCatalogCommand.java reactive-lab-gateway/src/main/java/io/reactivex/lab/gateway/clients/PersonalizedCatalogCommand.java

+5-5
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
package io.reactivex.lab.edge.clients;
1+
package io.reactivex.lab.gateway.clients;
22

3-
import io.reactivex.lab.edge.clients.PersonalizedCatalogCommand.Catalog;
4-
import io.reactivex.lab.edge.clients.UserCommand.User;
5-
import io.reactivex.lab.edge.common.RxNettySSE;
6-
import io.reactivex.lab.edge.common.SimpleJson;
3+
import io.reactivex.lab.gateway.clients.PersonalizedCatalogCommand.Catalog;
4+
import io.reactivex.lab.gateway.clients.UserCommand.User;
5+
import io.reactivex.lab.gateway.common.RxNettySSE;
6+
import io.reactivex.lab.gateway.common.SimpleJson;
77
import io.reactivex.netty.protocol.http.client.HttpClientRequest;
88

99
import java.util.Arrays;

reactive-lab-edge/src/main/java/io/reactivex/lab/edge/clients/RatingsCommand.java reactive-lab-gateway/src/main/java/io/reactivex/lab/gateway/clients/RatingsCommand.java

+5-5
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
package io.reactivex.lab.edge.clients;
1+
package io.reactivex.lab.gateway.clients;
22

3-
import io.reactivex.lab.edge.clients.PersonalizedCatalogCommand.Video;
4-
import io.reactivex.lab.edge.clients.RatingsCommand.Rating;
5-
import io.reactivex.lab.edge.common.RxNettySSE;
6-
import io.reactivex.lab.edge.common.SimpleJson;
3+
import io.reactivex.lab.gateway.clients.PersonalizedCatalogCommand.Video;
4+
import io.reactivex.lab.gateway.clients.RatingsCommand.Rating;
5+
import io.reactivex.lab.gateway.common.RxNettySSE;
6+
import io.reactivex.lab.gateway.common.SimpleJson;
77
import io.reactivex.netty.protocol.http.client.HttpClientRequest;
88

99
import java.util.Arrays;

reactive-lab-edge/src/main/java/io/reactivex/lab/edge/clients/SocialCommand.java reactive-lab-gateway/src/main/java/io/reactivex/lab/gateway/clients/SocialCommand.java

+5-5
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
package io.reactivex.lab.edge.clients;
1+
package io.reactivex.lab.gateway.clients;
22

3-
import io.reactivex.lab.edge.clients.SocialCommand.Social;
4-
import io.reactivex.lab.edge.clients.UserCommand.User;
5-
import io.reactivex.lab.edge.common.RxNettySSE;
6-
import io.reactivex.lab.edge.common.SimpleJson;
3+
import io.reactivex.lab.gateway.clients.SocialCommand.Social;
4+
import io.reactivex.lab.gateway.clients.UserCommand.User;
5+
import io.reactivex.lab.gateway.common.RxNettySSE;
6+
import io.reactivex.lab.gateway.common.SimpleJson;
77
import io.reactivex.netty.protocol.http.client.HttpClientRequest;
88

99
import java.util.Arrays;

reactive-lab-edge/src/main/java/io/reactivex/lab/edge/clients/UrlGenerator.java reactive-lab-gateway/src/main/java/io/reactivex/lab/gateway/clients/UrlGenerator.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package io.reactivex.lab.edge.clients;
1+
package io.reactivex.lab.gateway.clients;
22

33
import java.util.List;
44

reactive-lab-edge/src/main/java/io/reactivex/lab/edge/clients/UserCommand.java reactive-lab-gateway/src/main/java/io/reactivex/lab/gateway/clients/UserCommand.java

+4-4
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
package io.reactivex.lab.edge.clients;
1+
package io.reactivex.lab.gateway.clients;
22

3-
import io.reactivex.lab.edge.clients.UserCommand.User;
4-
import io.reactivex.lab.edge.common.RxNettySSE;
5-
import io.reactivex.lab.edge.common.SimpleJson;
3+
import io.reactivex.lab.gateway.clients.UserCommand.User;
4+
import io.reactivex.lab.gateway.common.RxNettySSE;
5+
import io.reactivex.lab.gateway.common.SimpleJson;
66
import io.reactivex.netty.protocol.http.client.HttpClientRequest;
77

88
import java.util.List;

reactive-lab-edge/src/main/java/io/reactivex/lab/edge/clients/VideoMetadataCommand.java reactive-lab-gateway/src/main/java/io/reactivex/lab/gateway/clients/VideoMetadataCommand.java

+5-5
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
package io.reactivex.lab.edge.clients;
1+
package io.reactivex.lab.gateway.clients;
22

3-
import io.reactivex.lab.edge.clients.PersonalizedCatalogCommand.Video;
4-
import io.reactivex.lab.edge.clients.VideoMetadataCommand.VideoMetadata;
5-
import io.reactivex.lab.edge.common.RxNettySSE;
6-
import io.reactivex.lab.edge.common.SimpleJson;
3+
import io.reactivex.lab.gateway.clients.PersonalizedCatalogCommand.Video;
4+
import io.reactivex.lab.gateway.clients.VideoMetadataCommand.VideoMetadata;
5+
import io.reactivex.lab.gateway.common.RxNettySSE;
6+
import io.reactivex.lab.gateway.common.SimpleJson;
77
import io.reactivex.netty.protocol.http.client.HttpClientRequest;
88

99
import java.util.Arrays;

reactive-lab-edge/src/main/java/io/reactivex/lab/edge/common/RxNettyResponseWriter.java reactive-lab-gateway/src/main/java/io/reactivex/lab/gateway/common/RxNettyResponseWriter.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package io.reactivex.lab.edge.common;
1+
package io.reactivex.lab.gateway.common;
22

33
import io.netty.buffer.ByteBuf;
44
import io.netty.buffer.Unpooled;

reactive-lab-edge/src/main/java/io/reactivex/lab/edge/common/RxNettySSE.java reactive-lab-gateway/src/main/java/io/reactivex/lab/gateway/common/RxNettySSE.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package io.reactivex.lab.edge.common;
1+
package io.reactivex.lab.gateway.common;
22

33
import io.netty.buffer.ByteBuf;
44
import io.netty.channel.EventLoopGroup;

reactive-lab-edge/src/main/java/io/reactivex/lab/edge/common/SimpleJson.java reactive-lab-gateway/src/main/java/io/reactivex/lab/gateway/common/SimpleJson.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package io.reactivex.lab.edge.common;
1+
package io.reactivex.lab.gateway.common;
22

33
import java.io.IOException;
44
import java.util.Map;

reactive-lab-edge/src/main/java/io/reactivex/lab/edge/routes/RouteForDeviceHome.java reactive-lab-gateway/src/main/java/io/reactivex/lab/gateway/routes/RouteForDeviceHome.java

+14-14
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,18 @@
1-
package io.reactivex.lab.edge.routes;
1+
package io.reactivex.lab.gateway.routes;
22

33
import io.netty.buffer.ByteBuf;
4-
import io.reactivex.lab.edge.EdgeServer;
5-
import io.reactivex.lab.edge.clients.BookmarkCommand;
6-
import io.reactivex.lab.edge.clients.BookmarksCommand.Bookmark;
7-
import io.reactivex.lab.edge.clients.PersonalizedCatalogCommand;
8-
import io.reactivex.lab.edge.clients.PersonalizedCatalogCommand.Video;
9-
import io.reactivex.lab.edge.clients.RatingsCommand;
10-
import io.reactivex.lab.edge.clients.RatingsCommand.Rating;
11-
import io.reactivex.lab.edge.clients.SocialCommand;
12-
import io.reactivex.lab.edge.clients.UserCommand;
13-
import io.reactivex.lab.edge.clients.VideoMetadataCommand;
14-
import io.reactivex.lab.edge.clients.VideoMetadataCommand.VideoMetadata;
15-
import io.reactivex.lab.edge.common.SimpleJson;
4+
import io.reactivex.lab.gateway.StartGatewayServer;
5+
import io.reactivex.lab.gateway.clients.BookmarkCommand;
6+
import io.reactivex.lab.gateway.clients.PersonalizedCatalogCommand;
7+
import io.reactivex.lab.gateway.clients.RatingsCommand;
8+
import io.reactivex.lab.gateway.clients.SocialCommand;
9+
import io.reactivex.lab.gateway.clients.UserCommand;
10+
import io.reactivex.lab.gateway.clients.VideoMetadataCommand;
11+
import io.reactivex.lab.gateway.clients.BookmarksCommand.Bookmark;
12+
import io.reactivex.lab.gateway.clients.PersonalizedCatalogCommand.Video;
13+
import io.reactivex.lab.gateway.clients.RatingsCommand.Rating;
14+
import io.reactivex.lab.gateway.clients.VideoMetadataCommand.VideoMetadata;
15+
import io.reactivex.lab.gateway.common.SimpleJson;
1616
import io.reactivex.netty.protocol.http.server.HttpServerRequest;
1717
import io.reactivex.netty.protocol.http.server.HttpServerResponse;
1818

@@ -37,7 +37,7 @@ public static RouteForDeviceHome getInstance() {
3737
public Observable<Void> handle(HttpServerRequest<ByteBuf> request, HttpServerResponse<ByteBuf> response) {
3838
List<String> userId = request.getQueryParameters().get("userId");
3939
if (userId == null || userId.size() != 1) {
40-
return EdgeServer.writeError(request, response, "A single 'userId' is required.");
40+
return StartGatewayServer.writeError(request, response, "A single 'userId' is required.");
4141
}
4242

4343
return new UserCommand(userId).observe().flatMap(user -> {

reactive-lab-edge/src/main/java/io/reactivex/lab/edge/routes/mock/BackendResponse.java reactive-lab-gateway/src/main/java/io/reactivex/lab/gateway/routes/mock/BackendResponse.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package io.reactivex.lab.edge.routes.mock;
1+
package io.reactivex.lab.gateway.routes.mock;
22

33
import java.io.IOException;
44
import java.io.InputStream;

reactive-lab-edge/src/main/java/io/reactivex/lab/edge/routes/mock/ResponseBuilder.java reactive-lab-gateway/src/main/java/io/reactivex/lab/gateway/routes/mock/ResponseBuilder.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package io.reactivex.lab.edge.routes.mock;
1+
package io.reactivex.lab.gateway.routes.mock;
22

33
import io.reactivex.netty.protocol.http.server.HttpServerResponse;
44

reactive-lab-edge/src/main/java/io/reactivex/lab/edge/routes/mock/TestRouteBasic.java reactive-lab-gateway/src/main/java/io/reactivex/lab/gateway/routes/mock/TestRouteBasic.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
package io.reactivex.lab.edge.routes.mock;
1+
package io.reactivex.lab.gateway.routes.mock;
22

33
import io.netty.buffer.ByteBuf;
44
import io.netty.buffer.ByteBufInputStream;
55
import io.netty.handler.codec.http.HttpResponseStatus;
6-
import io.reactivex.lab.edge.common.RxNettyResponseWriter;
6+
import io.reactivex.lab.gateway.common.RxNettyResponseWriter;
77
import io.reactivex.netty.RxNetty;
88
import io.reactivex.netty.protocol.http.client.HttpClientRequest;
99
import io.reactivex.netty.protocol.http.client.HttpClientResponse;

reactive-lab-edge/src/main/java/io/reactivex/lab/edge/routes/mock/TestRouteWithHystrix.java reactive-lab-gateway/src/main/java/io/reactivex/lab/gateway/routes/mock/TestRouteWithHystrix.java

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
package io.reactivex.lab.edge.routes.mock;
1+
package io.reactivex.lab.gateway.routes.mock;
22

33
import io.netty.buffer.ByteBuf;
44
import io.netty.handler.codec.http.HttpResponseStatus;
5-
import io.reactivex.lab.edge.clients.MockServiceCommand;
6-
import io.reactivex.lab.edge.common.RxNettyResponseWriter;
5+
import io.reactivex.lab.gateway.clients.MockServiceCommand;
6+
import io.reactivex.lab.gateway.common.RxNettyResponseWriter;
77
import io.reactivex.netty.protocol.http.server.HttpServerRequest;
88
import io.reactivex.netty.protocol.http.server.HttpServerResponse;
99

reactive-lab-edge/src/main/java/io/reactivex/lab/edge/routes/mock/TestRouteWithSimpleFaultTolerance.java reactive-lab-gateway/src/main/java/io/reactivex/lab/gateway/routes/mock/TestRouteWithSimpleFaultTolerance.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
package io.reactivex.lab.edge.routes.mock;
1+
package io.reactivex.lab.gateway.routes.mock;
22

33
import io.netty.buffer.ByteBuf;
44
import io.netty.buffer.ByteBufInputStream;
55
import io.netty.handler.codec.http.HttpResponseStatus;
6-
import io.reactivex.lab.edge.common.RxNettyResponseWriter;
6+
import io.reactivex.lab.gateway.common.RxNettyResponseWriter;
77
import io.reactivex.netty.RxNetty;
88
import io.reactivex.netty.protocol.http.client.HttpClientRequest;
99
import io.reactivex.netty.protocol.http.client.HttpClientResponse;

reactive-lab-edge/src/test/java/io/reactivex/lab/edge/mock/BackendResponseTest.java reactive-lab-gateway/src/test/java/io/reactivex/lab/gateway/mock/BackendResponseTest.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
package io.reactivex.lab.edge.mock;
1+
package io.reactivex.lab.gateway.mock;
22

33
import static junit.framework.Assert.assertEquals;
4-
import io.reactivex.lab.edge.routes.mock.BackendResponse;
4+
import io.reactivex.lab.gateway.routes.mock.BackendResponse;
55

66
import org.junit.Test;
77

File renamed without changes.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
package io.reactivex.lab.tutorial;
2+
3+
public class ClientServer {
4+
5+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
package io.reactivex.lab.tutorial;
2+
3+
public class ClientServerWithDiscovery {
4+
5+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
package io.reactivex.lab.tutorial;
2+
3+
public class ClientServerWithLoadBalancer {
4+
5+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
package io.reactivex.lab.tutorial;
2+
3+
public class ClientServerWithResiliencePatterns {
4+
5+
}

settings.gradle

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
rootProject.name='ReactiveLab'
2-
include 'reactive-lab-services', 'reactive-lab-edge'
2+
include 'reactive-lab-services', 'reactive-lab-gateway', 'reactive-lab-tutorial'

0 commit comments

Comments
 (0)