From 390358d7a4236639dec56e5efbfc29385b6a390d Mon Sep 17 00:00:00 2001 From: Dev Narula <dev.narula@sap.com> Date: Sun, 16 Feb 2025 16:07:25 +0530 Subject: [PATCH] remote-procedure-call --- pom.xml | 1 + remote-procedure-call/README.md | 147 ++++++++++++++ .../cart-service/etc/cart-service.urm.png | Bin 0 -> 121381 bytes .../cart-service/etc/cart-service.urm.puml | 70 +++++++ remote-procedure-call/cart-service/pom.xml | 42 ++++ .../main/java/com/iluwatar/rpc/cart/Main.java | 74 +++++++ .../rpc/cart/model/ProductInCart.java | 46 +++++ .../rpc/cart/service/CartService.java | 61 ++++++ .../rpc/cart/service/CartServiceImpl.java | 132 ++++++++++++ .../src/main/resources/logback.xml | 12 ++ .../CartServiceImplIntegrationTest.java | 96 +++++++++ .../rpc/cart/service/CartServiceImplTest.java | 168 +++++++++++++++ .../org.mockito.plugins.MockMaker | 1 + .../etc/remote-procedure-call.urm.puml | 2 + remote-procedure-call/pom.xml | 131 ++++++++++++ .../etc/product-service.urm.png | Bin 0 -> 155055 bytes .../etc/product-service.urm.puml | 80 ++++++++ remote-procedure-call/product-service/pom.xml | 42 ++++ .../java/com/iluwatar/rpc/product/Main.java | 72 +++++++ .../rpc/product/mocks/ProductMocks.java | 54 +++++ .../iluwatar/rpc/product/model/Product.java | 44 ++++ .../rpc/product/service/ProductService.java | 55 +++++ .../service/ProductServiceGrpcImpl.java | 147 ++++++++++++++ .../product/service/ProductServiceImpl.java | 78 +++++++ .../src/main/resources/logback.xml | 12 ++ .../service/ProductServiceGrpcImplTest.java | 192 ++++++++++++++++++ .../service/ProductServiceImplTest.java | 92 +++++++++ .../ProductServiceIntegrationTest.java | 102 ++++++++++ .../org.mockito.plugins.MockMaker | 1 + remote-procedure-call/proto/shopping.proto | 52 +++++ 30 files changed, 2006 insertions(+) create mode 100644 remote-procedure-call/README.md create mode 100644 remote-procedure-call/cart-service/etc/cart-service.urm.png create mode 100644 remote-procedure-call/cart-service/etc/cart-service.urm.puml create mode 100644 remote-procedure-call/cart-service/pom.xml create mode 100644 remote-procedure-call/cart-service/src/main/java/com/iluwatar/rpc/cart/Main.java create mode 100644 remote-procedure-call/cart-service/src/main/java/com/iluwatar/rpc/cart/model/ProductInCart.java create mode 100644 remote-procedure-call/cart-service/src/main/java/com/iluwatar/rpc/cart/service/CartService.java create mode 100644 remote-procedure-call/cart-service/src/main/java/com/iluwatar/rpc/cart/service/CartServiceImpl.java create mode 100644 remote-procedure-call/cart-service/src/main/resources/logback.xml create mode 100644 remote-procedure-call/cart-service/src/test/java/com/iluwatar/rpc/cart/service/CartServiceImplIntegrationTest.java create mode 100644 remote-procedure-call/cart-service/src/test/java/com/iluwatar/rpc/cart/service/CartServiceImplTest.java create mode 100644 remote-procedure-call/cart-service/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker create mode 100644 remote-procedure-call/etc/remote-procedure-call.urm.puml create mode 100644 remote-procedure-call/pom.xml create mode 100644 remote-procedure-call/product-service/etc/product-service.urm.png create mode 100644 remote-procedure-call/product-service/etc/product-service.urm.puml create mode 100644 remote-procedure-call/product-service/pom.xml create mode 100644 remote-procedure-call/product-service/src/main/java/com/iluwatar/rpc/product/Main.java create mode 100644 remote-procedure-call/product-service/src/main/java/com/iluwatar/rpc/product/mocks/ProductMocks.java create mode 100644 remote-procedure-call/product-service/src/main/java/com/iluwatar/rpc/product/model/Product.java create mode 100644 remote-procedure-call/product-service/src/main/java/com/iluwatar/rpc/product/service/ProductService.java create mode 100644 remote-procedure-call/product-service/src/main/java/com/iluwatar/rpc/product/service/ProductServiceGrpcImpl.java create mode 100644 remote-procedure-call/product-service/src/main/java/com/iluwatar/rpc/product/service/ProductServiceImpl.java create mode 100644 remote-procedure-call/product-service/src/main/resources/logback.xml create mode 100644 remote-procedure-call/product-service/src/test/java/com/iluwatar/rpc/product/service/ProductServiceGrpcImplTest.java create mode 100644 remote-procedure-call/product-service/src/test/java/com/iluwatar/rpc/product/service/ProductServiceImplTest.java create mode 100644 remote-procedure-call/product-service/src/test/java/com/iluwatar/rpc/product/service/ProductServiceIntegrationTest.java create mode 100644 remote-procedure-call/product-service/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker create mode 100644 remote-procedure-call/proto/shopping.proto diff --git a/pom.xml b/pom.xml index 5ac889f7f24f..989d5d436f90 100644 --- a/pom.xml +++ b/pom.xml @@ -225,6 +225,7 @@ <module>money</module> <module>table-inheritance</module> <module>bloc</module> + <module>remote-procedure-call</module> </modules> <repositories> <repository> diff --git a/remote-procedure-call/README.md b/remote-procedure-call/README.md new file mode 100644 index 000000000000..58c2b7eb3a9d --- /dev/null +++ b/remote-procedure-call/README.md @@ -0,0 +1,147 @@ +--- +title: Remote Procedure Call in Java using gRPC +shortTitle: gRPC in Java +description: Remote Procedure Call in Java using gRPC communicating between 2 microservices product and cart application +category: Data Transfer +language: en +tag: +- Behavioral +- Integration +- Messaging +- Client-Server +- Data Transfer +- Microservices +- Remote Procedure Call +- Remote Method Invocation +--- +# Remote Method Invocation / Remote Procedure Call +Remote Method Invocation has various different aliases, Remote Procedure Call / Remote Method Invocation or RPC for short. Is a protocol +that one program can use to request a service from a different program located in same or another computer in a network without having to understand network details. + +RMI can be implemented in various different languages and frameworks. Technologies like REST, gRPC and Thrift can be used for RMI. In this example we +will be using gRPC to implement Remote Procedure Call in Java. + +## Terminologies +- Client: The client is the application that sends a request to the server. +- Server: The server is the application that receives the request from the client and sends a response back to the client. +- Stub: The client-side proxy for the server. +- Skeleton: The server-side proxy for the client. +- Protocol: The set of rules that the client and server follow to communicate with each other. +- Stream: The sequence of messages that are sent between the client and server, understand it as list of objects. + +## What is gRPC? +[gRPC](https://grpc.io/docs/what-is-grpc/introduction/) is a high-performance, open-source and universal RPC framework. gRPC was developed by Google but is now open-source +and is based on the HTTP/2 protocol. + +A gRPC client can call a method on a gRPC server similar to if it was calling a method on a local object. +This allows client and server to communicate with each other by just using method calls. gRPC internally uses [protobuf](https://protobuf.dev/) to serialize the data for communication. + +## When to use gRPC? +gRPC should be used when you need high performance communication between client and server. It is mostly used in micro-service architecture when one +service needs to communicate with another service. + +For communication you need to define contract / interfaces denoting the method signature, data types and parameters along with return type. +These methods can be called by client service just like a method call, when using gRPC, a gRPC service is created which will in-turn call the +implementation of the RPC method in the server and return the response (if any). + +Start by creating a .proto file which should have all the methods and data types you need for communication between the services. +When you compile your code `maven/gradle gRPC` plugin will in return create objects and interfaces which you need to implement / extend in your +server side. The client will then call the method defined in .proto file using the generated stubs by gPRC. In return inside the server the +implementation of the method will be called and the response will be sent back to the client. + +### In this example +We will be using 2 different micro-services +- product-service +- cart-service + +Along with a shopping.proto file to define the contract between the services. +- ShoppingService + +This is a basic e-commerce simulation. + +In this simple example the `product-service` has data related to products and is used a source of truth. The `cart-service` +needs the product data that is available in `product-service`. Certain number of products in turn may be bought by a customer, +inside the cart service at which point the product quantity needs to be decreased in `product-service`, hence the need for bidirectional +communication from `product-service` -> `cart-service` and vice versa they both communicate via gRPC. + +- getAllProducts() - gets all the product from state in `product-service` and stores it in `cart-service` +- reduceProductQuantity() - reduces the quantity of a product by `id` fetched by `getAllProducts` and stored in `cart-service` + when the method is hit, it reduces the quantity of product with same `id` in `product-service` + +## How to implement gRPC in Java? +### .proto file +- Create a [.proto](https://protobuf.dev/programming-guides/proto2/) file [example](./proto/shopping.proto) defining the service and message contracts +- Define service interfaces, method signatures and data types in your .proto file +### At the server end +- Add gRPC and protobuf dependencies in your `pom.xml` +- Include gRPC and protobuf plugins in `mvn build plugins`, for it to generate interfaces from your `.proto` during compilation +- Include the .proto file directory in mvn build plugins to generate the interfaces +- Build the project via `mvn clean install` +- gRPC will generate the stubs and skeletons for you +- Implement the service logic for the generated methods of skeleton in your service classes +- Start the gRPC server at server's side on a specific port and attach the gRPC Implementation service to it +### At the client end +- Add gRPC and protobuf dependencies in your `pom.xml` +- Include gRPC and protobuf plugins in `mvn build plugins`, for it to generate interfaces from your `.proto` during compilation +- Include the .proto file directory in mvn build plugins to generate the interfaces +- Build the project via `mvn clean install` +- gRPC will generate the stubs and skeletons for you +- A stub will expose the available methods to be called by the client, call the methods you need on server via the stub +- Create Channel with server's host and port at client's end to communicate between server and client +- Start client, and you are good to go + +## gRPC in action +### Product Service +#### Service +- ProductService - API Interface for Internal logic in `product-service` +- ProductServiceImpl - Implementation of ProductService, saves product data in memory for simplicity, exposes getter(s) for the same. + Houses Composition of ProductService to store state. +- ProductServiceGrpcImpl - gRPC contract implementation, methods to retrieve all products and reduce quantity of a product. +This file implements the logic that should be executed when gRPC methods are called + +#### Model +- Product - Product POJO Model +#### Mocks +- ProductMocks - Mock data of Product for testing and state initialization. + +### Cart Service +#### Service +- CartService - API Interface for Internal logic in `cart-service`, +- CartServiceImpl - Implementation of CartService, methods to call the stub to populate data in cart and reduce quantities. + This file calls the gRPC method to communicate with `product-service`. +#### Model +- ProductInCart - Cut from Product POJO in `product-service` + +### proto +Proto folder contains all the proto files which define contract for the services. +proto files end with .proto and contain the types, methods and services that are to be used in gRPC communication. + +### Good practise +- Keep types / method names in PascalCase in .proto file + +### How to run this project +- Clone the project +- navigate to 'remote-procedure-call' directory via +```shell +cd java-design-patterns/remote-procedure-call +``` +- build the project with, this will download dependencies, compile .proto to java interface and classes and create final jar +```shell +mvn clean install +``` +- Start the `product-service` before `cart-service` as `cart-service` depends on product-service +```shell +mvn exec:java -Dexec.mainClass="com.iluwatar.rpc.product.Main" -pl product-service +``` +- Start a new terminal session +- navigate to 'remote-procedure-call' directory +- Start the `cart-service` +```shell +mvn exec:java -Dexec.mainClass="com.iluwatar.rpc.cart.Main" -pl cart-service +``` +- `cart-service` on startup will hit a gRPC call to `product-service` to get all products and populate the cart. +- `cart-service` will then reduce the quantity of a product in `product-service` when a product is bought. +- `cart-service` will then shut-down gracefully. +- all the operations will be logged in the console. +- `product-service` will continue to run and can be used for further operations by running `cart-service` again. +- To stop the services, press `ctrl+c` in the terminal. diff --git a/remote-procedure-call/cart-service/etc/cart-service.urm.png b/remote-procedure-call/cart-service/etc/cart-service.urm.png new file mode 100644 index 0000000000000000000000000000000000000000..ab374fa9732bd0f9076a55f51ad0e9df1831ed94 GIT binary patch literal 121381 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%0Dnx?a<8%= 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%0ANw2wPs-5#7$FyfL<pS(x^e&XXbKpsK=-C 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 literal 0 HcmV?d00001 diff --git a/remote-procedure-call/cart-service/etc/cart-service.urm.puml b/remote-procedure-call/cart-service/etc/cart-service.urm.puml new file mode 100644 index 000000000000..b49796603e31 --- /dev/null +++ b/remote-procedure-call/cart-service/etc/cart-service.urm.puml @@ -0,0 +1,70 @@ +@startuml +skinparam dpi 300 +scale 0.3 + +package com.iluwatar.rpc.cart.model { + class ProductInCart { + - id : Long + - name : String + - price : double + - quantityToReduce : int + - type : String + } +} + +package com.iluwatar.rpc.cart.service { + interface CartService { + + getAllProducts() {abstract} + + getRandomProductFromCart() : ProductInCart {abstract} + + reduceCartQuantityFromProduct(ProductInCart) {abstract} + } + + class CartServiceImpl { + - log : Logger {static} + - productsInCart : List<ProductInCart> + - shoppingServiceBlockingStub : ShoppingServiceBlockingStub + + CartServiceImpl(shoppingStub : ShoppingServiceBlockingStub) + + getAllProducts() + + getRandomProductFromCart() : ProductInCart + + reduceCartQuantityFromProduct(product : ProductInCart) + } +} + +package com.iluwatar.rpc.proto { + class Empty {} + + class ProductResponse { + - id : long + - name : String + - price : double + - type : String + } + + class ReduceProductRequest { + - productId : long + - quantity : int + } + + class ReduceProductResponse { + - message : String + - status : boolean + } + + class ShoppingServiceImplBase { + - getAllProducts(request: Empty, responseStreamObserver: StreamObserver<ProductResponse>) + - reduceProductQuantity(request: ReduceProductRequest, responseStreamObserver : StreamObserver<ReduceProductResponse>) + } + +} +package com.iluwatar.rpc.cart { + class Main { + - HOST : String {static} + - SERVER_PORT : int {static} + - log : Logger {static} + + main(args : String[]) {static} + } +} + +CartServiceImpl --> "-productsInCart" ProductInCart +CartServiceImpl ..|> CartService +@enduml \ No newline at end of file diff --git a/remote-procedure-call/cart-service/pom.xml b/remote-procedure-call/cart-service/pom.xml new file mode 100644 index 000000000000..7fad34a3edb6 --- /dev/null +++ b/remote-procedure-call/cart-service/pom.xml @@ -0,0 +1,42 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + + This project is licensed under the MIT license. Module model-view-viewmodel is using ZK framework licensed under LGPL (see lgpl-3.0.txt). + + The MIT License + Copyright © 2014-2022 Ilkka Seppälä + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + +--> +<project xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + + <parent> + <artifactId>remote-procedure-call</artifactId> + <groupId>com.iluwatar</groupId> + <version>1.26.0-SNAPSHOT</version> + </parent> + + <modelVersion>4.0.0</modelVersion> + <artifactId>cart-service</artifactId> + <packaging>jar</packaging> + +</project> \ No newline at end of file diff --git a/remote-procedure-call/cart-service/src/main/java/com/iluwatar/rpc/cart/Main.java b/remote-procedure-call/cart-service/src/main/java/com/iluwatar/rpc/cart/Main.java new file mode 100644 index 000000000000..db8bd1738ee5 --- /dev/null +++ b/remote-procedure-call/cart-service/src/main/java/com/iluwatar/rpc/cart/Main.java @@ -0,0 +1,74 @@ +/* + * This project is licensed under the MIT license. Module model-view-viewmodel is using ZK framework licensed under LGPL (see lgpl-3.0.txt). + * + * The MIT License + * Copyright © 2014-2022 Ilkka Seppälä + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ +package com.iluwatar.rpc.cart; + +import com.iluwatar.rpc.cart.service.CartServiceImpl; +import com.iluwatar.rpc.proto.ShoppingServiceGrpc; +import com.iluwatar.rpc.proto.ShoppingServiceGrpc.ShoppingServiceBlockingStub; +import io.grpc.ManagedChannel; +import io.grpc.ManagedChannelBuilder; +import java.util.concurrent.TimeUnit; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +/** + * Main class for the cart service. + * Initializes the shopping channel and the cart service. + * + * @author CoderSleek + * @version 1.0 + */ +public class Main { + private static final int SERVER_PORT = 8080; + private static final String HOST = "localhost"; + private static final Logger log = LoggerFactory.getLogger(Main.class); + /** + * Main method to initialize the cart service and channel for RPC connection + * initializes blocking stub and passes it to CartServiceImpl for constructor initialization. + * Initializes data fetching from product-service. + * shuts down after 1 request + */ + public static void main(String[] args) { + ManagedChannel productChannel = ManagedChannelBuilder + .forAddress(HOST, SERVER_PORT) + .usePlaintext() + .enableRetry() + .keepAliveTime(10, TimeUnit.SECONDS) + .build(); + + ShoppingServiceBlockingStub blockingStub = ShoppingServiceGrpc.newBlockingStub(productChannel); + log.info("cart-service started"); + + var cartService = new CartServiceImpl(blockingStub); + cartService.getAllProducts(); + + var productInCart = cartService.getRandomProductFromCart(); + productInCart.setQuantityToReduce(10); + + cartService.reduceCartQuantityFromProduct(productInCart); + productChannel.shutdown(); + log.info("cart-service execution successful, shutting down"); + } +} \ No newline at end of file diff --git a/remote-procedure-call/cart-service/src/main/java/com/iluwatar/rpc/cart/model/ProductInCart.java b/remote-procedure-call/cart-service/src/main/java/com/iluwatar/rpc/cart/model/ProductInCart.java new file mode 100644 index 000000000000..522dce357f5d --- /dev/null +++ b/remote-procedure-call/cart-service/src/main/java/com/iluwatar/rpc/cart/model/ProductInCart.java @@ -0,0 +1,46 @@ +/* + * This project is licensed under the MIT license. Module model-view-viewmodel is using ZK framework licensed under LGPL (see lgpl-3.0.txt). + * + * The MIT License + * Copyright © 2014-2022 Ilkka Seppälä + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ +package com.iluwatar.rpc.cart.model; + +import lombok.Builder; +import lombok.Data; + +/** + * ProductInCart is a POJO model class for product in cart. + * ProductInCart is a cut from Product class in product-service + * + * @link com.iluwatar.rpc.product.model.Product + * @author CoderSleek + * @version 1.0 + */ +@Data +@Builder(toBuilder = true) +public class ProductInCart { + private Long id; + private String name; + private String type; + private double price; + private int quantityToReduce; +} diff --git a/remote-procedure-call/cart-service/src/main/java/com/iluwatar/rpc/cart/service/CartService.java b/remote-procedure-call/cart-service/src/main/java/com/iluwatar/rpc/cart/service/CartService.java new file mode 100644 index 000000000000..e6720f439cd4 --- /dev/null +++ b/remote-procedure-call/cart-service/src/main/java/com/iluwatar/rpc/cart/service/CartService.java @@ -0,0 +1,61 @@ +/* + * This project is licensed under the MIT license. Module model-view-viewmodel is using ZK framework licensed under LGPL (see lgpl-3.0.txt). + * + * The MIT License + * Copyright © 2014-2022 Ilkka Seppälä + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ +package com.iluwatar.rpc.cart.service; + +import com.iluwatar.rpc.cart.model.ProductInCart; + +/** + * API Contract for Cart service, which can be exposed. + * Includes contract method for grpc stub as well. + * Thread safety is not guaranteed. + * @link com.iluwatar.rpc.cart.model.ProductInCart + * @author CoderSleek + * @version 1.0 + */ +public interface CartService { + /** + * returns a random product from cart, if cart is empty throws IllegalStateException. + * randomized just for demonstration purposes. + * + * @return randomly chosen ProductInCart from List of ProductInCart + * @throws IllegalStateException if cart is empty + */ + ProductInCart getRandomProductFromCart() throws IllegalStateException; + + /** + * reduces the quantity of a product from cart by doing a RPC call to product service. + * + * @param product product whose quantity needs to be reduced in product-service + * @throws IllegalArgumentException if product is null or id invalid + * @throws IllegalStateException if product is not found in cart or cart is null + */ + void reduceCartQuantityFromProduct(ProductInCart product) + throws IllegalStateException, IllegalArgumentException; + + /** + * RPC call to get all the products from product-service and add them to cart. + */ + void getAllProducts(); +} diff --git a/remote-procedure-call/cart-service/src/main/java/com/iluwatar/rpc/cart/service/CartServiceImpl.java b/remote-procedure-call/cart-service/src/main/java/com/iluwatar/rpc/cart/service/CartServiceImpl.java new file mode 100644 index 000000000000..c647bde3110d --- /dev/null +++ b/remote-procedure-call/cart-service/src/main/java/com/iluwatar/rpc/cart/service/CartServiceImpl.java @@ -0,0 +1,132 @@ +/* + * This project is licensed under the MIT license. Module model-view-viewmodel is using ZK framework licensed under LGPL (see lgpl-3.0.txt). + * + * The MIT License + * Copyright © 2014-2022 Ilkka Seppälä + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ +package com.iluwatar.rpc.cart.service; + +import com.iluwatar.rpc.cart.model.ProductInCart; +import com.iluwatar.rpc.proto.Shopping.ReduceProductRequest; +import com.iluwatar.rpc.proto.Shopping.ReduceProductResponse; +import com.iluwatar.rpc.proto.ShoppingServiceGrpc.ShoppingServiceBlockingStub; +import java.util.ArrayList; +import java.util.List; +import java.util.Random; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +/** + * Implementation of cart-service Contract exposed by gRPC proto. + * Thread safety is not guaranteed. + * @link com.iluwatar.rpc.cart.model.ProductInCart + * @link com.iluwatar.rpc.cart.service.CartService + * @author CoderSleek + * @version 1.0 + */ +public class CartServiceImpl implements CartService { + private final ShoppingServiceBlockingStub shoppingServiceBlockingStub; + private final List<ProductInCart> productsInCart = new ArrayList<>(); + private static final Logger log = LoggerFactory.getLogger(CartServiceImpl.class); + + /** + * Constructor to initialize CartServiceImpl with ProductServiceBlockingStub. + * blocking-stub is initialized in Main + * @param shoppingStub ProductServiceBlockingStub + * @throws IllegalArgumentException if ProductServiceBlockingStub is null + */ + public CartServiceImpl(ShoppingServiceBlockingStub shoppingStub) { + if (shoppingStub == null) { + throw new IllegalArgumentException("ShoppingServiceBlockingStub is null"); + } + this.shoppingServiceBlockingStub = shoppingStub; + } + + @Override + public void reduceCartQuantityFromProduct(ProductInCart product) + throws IllegalArgumentException, IllegalStateException { + log.info("Started Request for reducing product quantity from cart in product-service"); + if (product == null) { + throw new IllegalArgumentException("Product state is null"); + } + if (product.getId() <= 0) { + throw new IllegalArgumentException("Invalid Product id"); + } + if (productsInCart.isEmpty()) { + throw new IllegalStateException("Products In cart array empty, populate cart first"); + } + + // type exposed and maintained in gRPC proto + ReduceProductRequest request = ReduceProductRequest + .newBuilder() + .setProductId(product.getId()) + .setQuantity(product.getQuantityToReduce()) + .build(); + + log.info("Initiating RPC call to reduce quantity of product with id: {}", product.getId()); + ReduceProductResponse response = shoppingServiceBlockingStub.reduceProductQuantity(request); + log.info("Completed RPC call reduce quantity with status: {}", response.getStatus()); + log.info("RPC call response message: {}", response.getMessage()); + log.info("Completed Request for reducing product quantity from cart in product-service"); + } + + @Override + public void getAllProducts() { + log.info("Started request to fetch all products from product-service"); + // stream of products / multiple products + try { + shoppingServiceBlockingStub.getAllProducts(null) + .forEachRemaining(product -> + productsInCart.add(ProductInCart.builder() + .name(product.getName()) + .id(product.getId()) + .price(product.getPrice()) + .type(product.getType()) + .quantityToReduce(0) + .build()) + ); + } catch (Exception e) { + log.error("Error occurred while fetching products: ", e); + throw new IllegalStateException("Failed to fetch products from ProductService", e); + } + log.info("Fetching of products completed"); + } + + /** + * returns a random product from cart, if cart is empty throws IllegalStateException. + * randomized just for demonstration purposes. + * returns a new instance of ProductInCart to avoid mutation of quantityToReduce in original object. + * + * @return randomly chosen ProductInCart from List of ProductInCart + * @throws IllegalStateException if cart is empty + */ + @Override + public ProductInCart getRandomProductFromCart() throws IllegalStateException { + if (productsInCart.isEmpty()) { + throw new IllegalStateException("Products In cart array empty"); + } + + // randomly choose a product for dynamic results + int randInt = new Random().nextInt(productsInCart.size()); + // to builder is used to return a copy of the object to avoid mutation of original object + return productsInCart.get(randInt).toBuilder().build(); + } +} diff --git a/remote-procedure-call/cart-service/src/main/resources/logback.xml b/remote-procedure-call/cart-service/src/main/resources/logback.xml new file mode 100644 index 000000000000..ed930c512e7e --- /dev/null +++ b/remote-procedure-call/cart-service/src/main/resources/logback.xml @@ -0,0 +1,12 @@ +<!-- to ensure only info and error logging --> +<configuration> + <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender"> + <encoder> + <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern> + </encoder> + </appender> + + <root level="INFO"> + <appender-ref ref="CONSOLE" /> + </root> +</configuration> \ No newline at end of file diff --git a/remote-procedure-call/cart-service/src/test/java/com/iluwatar/rpc/cart/service/CartServiceImplIntegrationTest.java b/remote-procedure-call/cart-service/src/test/java/com/iluwatar/rpc/cart/service/CartServiceImplIntegrationTest.java new file mode 100644 index 000000000000..64bdbe46eb20 --- /dev/null +++ b/remote-procedure-call/cart-service/src/test/java/com/iluwatar/rpc/cart/service/CartServiceImplIntegrationTest.java @@ -0,0 +1,96 @@ +/* + * This project is licensed under the MIT license. Module model-view-viewmodel is using ZK framework licensed under LGPL (see lgpl-3.0.txt). + * + * The MIT License + * Copyright © 2014-2022 Ilkka Seppälä + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ +package com.iluwatar.rpc.cart.service; + +import com.iluwatar.rpc.cart.model.ProductInCart; +import com.iluwatar.rpc.proto.ShoppingServiceGrpc.ShoppingServiceBlockingStub; +import com.iluwatar.rpc.proto.Shopping.ProductResponse; +import com.iluwatar.rpc.proto.Shopping.ReduceProductRequest; +import com.iluwatar.rpc.proto.Shopping.ReduceProductResponse; +import java.util.ArrayList; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.InjectMocks; +import org.mockito.Mock; +import org.mockito.junit.jupiter.MockitoExtension; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNotNull; +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.Mockito.times; +import static org.mockito.Mockito.verify; +import static org.mockito.Mockito.when; + +@ExtendWith(MockitoExtension.class) +class CartServiceImplIntegrationTest { + + @Mock + private ShoppingServiceBlockingStub productServiceBlockingStub; + + @InjectMocks + private CartServiceImpl cartService; + + private ProductResponse product; + + @BeforeEach + public void setUp() { + product = ProductResponse.newBuilder() + .setId(1) + .setName("Test") + .setPrice(100) + .setType("Test") + .build(); + + ArrayList<ProductResponse> productList = new ArrayList<>(); + + productList.add(product); + when(productServiceBlockingStub.getAllProducts(null)).thenReturn(productList.iterator()); + cartService.getAllProducts(); + } + + @Test + void testGetRandomProductFromCartAndReduceQuantity_Success() { + ProductInCart randomProduct = cartService.getRandomProductFromCart(); + + assertNotNull(randomProduct); + assertEquals(product.getId(), randomProduct.getId()); + assertEquals(product.getName(), randomProduct.getName()); + randomProduct.setQuantityToReduce(100); + + ReduceProductResponse response = ReduceProductResponse.newBuilder() + .setStatus(true) + .setMessage("Success") + .build(); + + when(productServiceBlockingStub.reduceProductQuantity( + any(ReduceProductRequest.class) + )).thenReturn(response); + cartService.reduceCartQuantityFromProduct(randomProduct); + + verify(productServiceBlockingStub, times(1)).reduceProductQuantity( + any(ReduceProductRequest.class)); + } +} \ No newline at end of file diff --git a/remote-procedure-call/cart-service/src/test/java/com/iluwatar/rpc/cart/service/CartServiceImplTest.java b/remote-procedure-call/cart-service/src/test/java/com/iluwatar/rpc/cart/service/CartServiceImplTest.java new file mode 100644 index 000000000000..6cd2ccdd627c --- /dev/null +++ b/remote-procedure-call/cart-service/src/test/java/com/iluwatar/rpc/cart/service/CartServiceImplTest.java @@ -0,0 +1,168 @@ +/* + * This project is licensed under the MIT license. Module model-view-viewmodel is using ZK framework licensed under LGPL (see lgpl-3.0.txt). + * + * The MIT License + * Copyright © 2014-2022 Ilkka Seppälä + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ +package com.iluwatar.rpc.cart.service; + +import com.iluwatar.rpc.cart.model.ProductInCart; +import com.iluwatar.rpc.proto.ShoppingServiceGrpc.ShoppingServiceBlockingStub; +import com.iluwatar.rpc.proto.Shopping; +import com.iluwatar.rpc.proto.Shopping.ReduceProductRequest; +import com.iluwatar.rpc.proto.Shopping.ReduceProductResponse; +import java.util.ArrayList; +import java.util.List; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.InjectMocks; +import org.mockito.Mock; +import org.mockito.junit.jupiter.MockitoExtension; + +import static org.junit.jupiter.api.Assertions.*; +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.Mockito.*; + +@ExtendWith(MockitoExtension.class) +class CartServiceImplTest { + @Mock + private ShoppingServiceBlockingStub productServiceBlockingStub; + @InjectMocks + private CartServiceImpl cartService; + + private static List<Shopping.ProductResponse> products; + + @BeforeEach + public void setUp() { + products = new ArrayList<>(); + var product = productInCartProvider(); + products.add(Shopping.ProductResponse.newBuilder() + .setId(product.getId()) + .setPrice(product.getPrice()) + .setType(product.getType()) + .setName(product.getName()) + .build()); + } + + @Test + void testReduceCartQuantityFromProduct_NullProduct() { + IllegalArgumentException exception = assertThrows(IllegalArgumentException.class, () -> { + cartService.reduceCartQuantityFromProduct(null); + }); + assertEquals("Product state is null", exception.getMessage()); + } + + @Test + void testReduceCartQuantityFromProduct_InvalidProductProperties() { + ProductInCart invalidProduct = productInCartProvider(); + invalidProduct.setId(-1L); + IllegalArgumentException exception = assertThrows(IllegalArgumentException.class, () -> { + cartService.reduceCartQuantityFromProduct(invalidProduct); + }); + assertEquals("Invalid Product id", exception.getMessage()); + } + + @Test + void testReduceCartQuantityFromProduct_EmptyCart() { + ProductInCart product = productInCartProvider(); + + IllegalStateException exception = assertThrows(IllegalStateException.class, () -> { + cartService.reduceCartQuantityFromProduct(product); + }); + assertEquals("Products In cart array empty, populate cart first", exception.getMessage()); + } + + @Test + void testReduceCartQuantityFromProduct_Success() { + when(productServiceBlockingStub.getAllProducts(null)).thenReturn(products.iterator()); + + ProductInCart product = productInCartProvider(); + product.setId(3L); + + ReduceProductResponse response = + ReduceProductResponse.newBuilder().setStatus(true).setMessage("Success").build(); + when(productServiceBlockingStub.reduceProductQuantity( + any(ReduceProductRequest.class))).thenReturn(response); + + cartService.getAllProducts(); + cartService.reduceCartQuantityFromProduct(product); + verify(productServiceBlockingStub, times(1)).reduceProductQuantity( + any(ReduceProductRequest.class)); + } + + @Test + void testGetAllProducts_Success() { + when(productServiceBlockingStub.getAllProducts(null)).thenReturn(products.iterator()); + + List<Shopping.ProductResponse> products = new ArrayList<>(); + var productInCart = productInCartProvider(); + products.add(Shopping.ProductResponse.newBuilder() + .setId(productInCart.getId()) + .setName(productInCart.getName()) + .setType(productInCart.getType()) + .setPrice(productInCart.getPrice() + 10) + .build()); + + when(productServiceBlockingStub.getAllProducts(null)).thenReturn(products.iterator()); + + cartService.getAllProducts(); + assertDoesNotThrow(() -> cartService.getRandomProductFromCart()); + } + + @Test + void testGetAllProducts_Exception() { + when(productServiceBlockingStub.getAllProducts(null)).thenThrow( + new RuntimeException("Service error")); + + IllegalStateException exception = assertThrows(IllegalStateException.class, () -> { + cartService.getAllProducts(); + }); + assertEquals("Failed to fetch products from ProductService", exception.getMessage()); + } + + @Test + void testGetRandomProductFromCart_EmptyCart() { + IllegalStateException exception = assertThrows(IllegalStateException.class, () -> { + cartService.getRandomProductFromCart(); + }); + assertEquals("Products In cart array empty", exception.getMessage()); + } + + @Test + void testGetRandomProductFromCart_Success() { + when(productServiceBlockingStub.getAllProducts(null)).thenReturn(products.iterator()); + + cartService.getAllProducts(); + ProductInCart randomProduct = cartService.getRandomProductFromCart(); + assertNotNull(randomProduct); + } + + private ProductInCart productInCartProvider() { + return ProductInCart.builder() + .id(1L) + .name("Test") + .type("Test type") + .price(0.0) + .quantityToReduce(10) + .build(); + } +} \ No newline at end of file diff --git a/remote-procedure-call/cart-service/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker b/remote-procedure-call/cart-service/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker new file mode 100644 index 000000000000..ca6ee9cea8ec --- /dev/null +++ b/remote-procedure-call/cart-service/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker @@ -0,0 +1 @@ +mock-maker-inline \ No newline at end of file diff --git a/remote-procedure-call/etc/remote-procedure-call.urm.puml b/remote-procedure-call/etc/remote-procedure-call.urm.puml new file mode 100644 index 000000000000..02af47ddf261 --- /dev/null +++ b/remote-procedure-call/etc/remote-procedure-call.urm.puml @@ -0,0 +1,2 @@ +@startuml +@enduml \ No newline at end of file diff --git a/remote-procedure-call/pom.xml b/remote-procedure-call/pom.xml new file mode 100644 index 000000000000..a9c8761191a9 --- /dev/null +++ b/remote-procedure-call/pom.xml @@ -0,0 +1,131 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + + This project is licensed under the MIT license. Module model-view-viewmodel is using ZK framework licensed under LGPL (see lgpl-3.0.txt). + + The MIT License + Copyright © 2014-2022 Ilkka Seppälä + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + +--> +<project xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + <parent> + <artifactId>java-design-patterns</artifactId> + <groupId>com.iluwatar</groupId> + <version>1.26.0-SNAPSHOT</version> + </parent> + + <properties> + <grpc-version>1.68.0</grpc-version> + <protobuf-version>4.28.2</protobuf-version> + <jakarta-annotation-version>3.0.0</jakarta-annotation-version> + <mockito-version>5.14.2</mockito-version> + <maven-compiler-plugin-version>3.11.0</maven-compiler-plugin-version> + <protobuf-maven-plugin-version>0.6.1</protobuf-maven-plugin-version> + </properties> + + <modelVersion>4.0.0</modelVersion> + <artifactId>remote-procedure-call</artifactId> + <version>1.26.0-SNAPSHOT</version> + <packaging>pom</packaging> + + <modules> + <module>cart-service</module> + <module>product-service</module> + </modules> + + <dependencies> + <dependency> + <groupId>io.grpc</groupId> + <artifactId>grpc-netty-shaded</artifactId> + <version>${grpc-version}</version> + <scope>runtime</scope> + </dependency> + <dependency> + <groupId>io.grpc</groupId> + <artifactId>grpc-protobuf</artifactId> + <version>${grpc-version}</version> + </dependency> + <dependency> + <groupId>io.grpc</groupId> + <artifactId>grpc-stub</artifactId> + <version>${grpc-version}</version> + </dependency> + <dependency> + <groupId>com.google.protobuf</groupId> + <artifactId>protobuf-java</artifactId> + <version>${protobuf-version}</version> + </dependency> + + <dependency> + <groupId>org.junit.jupiter</groupId> + <artifactId>junit-jupiter-engine</artifactId> + <scope>test</scope> + </dependency> + <dependency> + <groupId>org.mockito</groupId> + <artifactId>mockito-junit-jupiter</artifactId> + <version>${mockito-version}</version> + <scope>test</scope> + </dependency> + </dependencies> + + <build> + <extensions> + <extension> + <groupId>kr.motd.maven</groupId> + <artifactId>os-maven-plugin</artifactId> + <version>1.7.1</version> + </extension> + </extensions> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-compiler-plugin</artifactId> + <version>${maven-compiler-plugin-version}</version> + </plugin> + <plugin> + <groupId>org.xolstice.maven.plugins</groupId> + <artifactId>protobuf-maven-plugin</artifactId> + <version>${protobuf-maven-plugin-version}</version> + <configuration> + <protoSourceRoot>${project.basedir}/../proto</protoSourceRoot> + <protocArtifact>com.google.protobuf:protoc:4.28.2:exe:${os.detected.classifier}</protocArtifact> + <pluginId>grpc-java</pluginId> + <pluginArtifact>io.grpc:protoc-gen-grpc-java:1.68.0:exe:${os.detected.classifier}</pluginArtifact> + </configuration> + <executions> + <execution> + <configuration> + <pluginParameter>@generated=omit</pluginParameter> + </configuration> + <goals> + <goal>compile</goal> + <goal>compile-custom</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + +</project> \ No newline at end of file diff --git a/remote-procedure-call/product-service/etc/product-service.urm.png b/remote-procedure-call/product-service/etc/product-service.urm.png new file mode 100644 index 0000000000000000000000000000000000000000..948b3d5273be3b5dbd7f3c89ca1b7320a7ca7a3f GIT binary patch literal 155055 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 b+}XbcwHY(d-um#Id~TnL+U~TShcEswIqaHd literal 0 HcmV?d00001 diff --git a/remote-procedure-call/product-service/etc/product-service.urm.puml b/remote-procedure-call/product-service/etc/product-service.urm.puml new file mode 100644 index 000000000000..799192b93d2e --- /dev/null +++ b/remote-procedure-call/product-service/etc/product-service.urm.puml @@ -0,0 +1,80 @@ +@startuml +skinparam dpi 300 +scale 0.3 + +package com.iluwatar.rpc.product { + class Main { + - SERVER_PORT : int {static} + - log : Logger {static} + + main(args : String[]) {static} + } +} + +package com.iluwatar.rpc.product.model { + class Product { + - id : Long + - name : String + - price : double + - quantity : int + - type : String + } +} + +package com.iluwatar.rpc.product.mocks { + class ProductMocks { + + ProductMocks() + + getMockProducts() : List<Product> {static} + } +} + +package com.iluwatar.rpc.product.service { + interface ProductService { + + getAllProducts() : List<Product> {abstract} + + getProduct(Long) : Optional<Product> {abstract} + } + class ProductServiceGrpcImpl { + - log : Logger {static} + - productService : ProductService + + ProductServiceGrpcImpl(productService : ProductService) + + getAllProducts(request : Empty, responseStreamObserver : StreamObserver<ProductResponse>) + + reduceProductQuantity(request : ReduceProductRequest, responseStreamObserver : StreamObserver<ReduceProductResponse>) + } + class ProductServiceImpl { + - products : List<Product> + + ProductServiceImpl(products : List<Product>) + + getAllProducts() : List<Product> + + getProduct(id : Long) : Optional<Product> + } +} + +package com.iluwatar.rpc.proto { + class Empty {} + + class ProductResponse { + - id : long + - name : String + - price : double + - type : String + } + + class ReduceProductRequest { + - productId : long + - quantity : int + } + + class ReduceProductResponse { + - message : String + - status : boolean + } + + class ShoppingServiceImplBase { + - getAllProducts(request: Empty, responseStreamObserver: StreamObserver<ProductResponse>) + - reduceProductQuantity(request: ReduceProductRequest, responseStreamObserver : StreamObserver<ReduceProductResponse>) + } +} + +ProductServiceImpl --> "-products" Product +ProductServiceGrpcImpl --> "-productService" ProductService +ProductServiceGrpcImpl --|> ShoppingServiceImplBase +ProductServiceImpl ..|> ProductService +@enduml \ No newline at end of file diff --git a/remote-procedure-call/product-service/pom.xml b/remote-procedure-call/product-service/pom.xml new file mode 100644 index 000000000000..bf54b0e75413 --- /dev/null +++ b/remote-procedure-call/product-service/pom.xml @@ -0,0 +1,42 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + + This project is licensed under the MIT license. Module model-view-viewmodel is using ZK framework licensed under LGPL (see lgpl-3.0.txt). + + The MIT License + Copyright © 2014-2022 Ilkka Seppälä + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + +--> +<project xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + + <parent> + <artifactId>remote-procedure-call</artifactId> + <groupId>com.iluwatar</groupId> + <version>1.26.0-SNAPSHOT</version> + </parent> + + <modelVersion>4.0.0</modelVersion> + <artifactId>product-service</artifactId> + <packaging>jar</packaging> + +</project> \ No newline at end of file diff --git a/remote-procedure-call/product-service/src/main/java/com/iluwatar/rpc/product/Main.java b/remote-procedure-call/product-service/src/main/java/com/iluwatar/rpc/product/Main.java new file mode 100644 index 000000000000..bd1c958cbb20 --- /dev/null +++ b/remote-procedure-call/product-service/src/main/java/com/iluwatar/rpc/product/Main.java @@ -0,0 +1,72 @@ +/* + * This project is licensed under the MIT license. Module model-view-viewmodel is using ZK framework licensed under LGPL (see lgpl-3.0.txt). + * + * The MIT License + * Copyright © 2014-2022 Ilkka Seppälä + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ +package com.iluwatar.rpc.product; + +import com.iluwatar.rpc.product.mocks.ProductMocks; +import com.iluwatar.rpc.product.model.Product; +import com.iluwatar.rpc.product.service.ProductServiceGrpcImpl; +import com.iluwatar.rpc.product.service.ProductServiceImpl; +import io.grpc.Server; +import io.grpc.ServerBuilder; +import java.io.IOException; +import java.util.List; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +/** + * Main class to start the product service. + * + * @author CoderSleek + * @version 1.0 + */ +public class Main { + private static final int SERVER_PORT = 8080; + private static final Logger log = LoggerFactory.getLogger(Main.class); + /** + * Main method to start the product service. + * instantiates product mock data and starts the gRPC server. + * constructor injects ProductService into ProductServiceGrpcImpl + * listens on default server port 8080 + * + * @param args the input arguments + * @throws IOException the io exception + * @throws InterruptedException the interrupted exception + */ + public static void main(String[] args) throws IOException, InterruptedException { + List<Product> products = ProductMocks.getMockProducts(); + var productServiceImpl = new ProductServiceImpl(products); + var productServiceGrpcImpl = new ProductServiceGrpcImpl(productServiceImpl); + + Server server = ServerBuilder + .forPort(SERVER_PORT) + .addService(productServiceGrpcImpl) + .build(); + + log.info("Starting server on port: " + SERVER_PORT); + log.info("Waiting for request---------"); + server.start(); + server.awaitTermination(); + } +} \ No newline at end of file diff --git a/remote-procedure-call/product-service/src/main/java/com/iluwatar/rpc/product/mocks/ProductMocks.java b/remote-procedure-call/product-service/src/main/java/com/iluwatar/rpc/product/mocks/ProductMocks.java new file mode 100644 index 000000000000..68b5cd036fa2 --- /dev/null +++ b/remote-procedure-call/product-service/src/main/java/com/iluwatar/rpc/product/mocks/ProductMocks.java @@ -0,0 +1,54 @@ +/* + * This project is licensed under the MIT license. Module model-view-viewmodel is using ZK framework licensed under LGPL (see lgpl-3.0.txt). + * + * The MIT License + * Copyright © 2014-2022 Ilkka Seppälä + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ +package com.iluwatar.rpc.product.mocks; + +import com.iluwatar.rpc.product.model.Product; +import java.util.ArrayList; +import java.util.List; + +/** + * Mocks data for product POJO, used for testing and in memory store. + * Thread safety is not guaranteed. + * @link com.iluwatar.rpc.product.model.Product + * @author CoderSleek + * @version 1.0 + */ +public class ProductMocks { + /** + * Returns new Mock product ArrayList on each call, to reset state. + * + * @return the mock products + */ + public static List<Product> getMockProducts() { + return new ArrayList<>() {{ + add(new Product(1L, "Product 1", "Type 1", 50.0, 10)); + add(new Product(2L, "Product 2", "Type 2", 40.0, 20)); + add(new Product(3L, "Product 3", "Type 3", 30.0, 30)); + add(new Product(4L, "Product 4", "Type 4", 20.0, 40)); + add(new Product(5L, "Product 5", "Type 5", 10.0, 50)); + } + }; + } +} \ No newline at end of file diff --git a/remote-procedure-call/product-service/src/main/java/com/iluwatar/rpc/product/model/Product.java b/remote-procedure-call/product-service/src/main/java/com/iluwatar/rpc/product/model/Product.java new file mode 100644 index 000000000000..f0975877b35b --- /dev/null +++ b/remote-procedure-call/product-service/src/main/java/com/iluwatar/rpc/product/model/Product.java @@ -0,0 +1,44 @@ +/* + * This project is licensed under the MIT license. Module model-view-viewmodel is using ZK framework licensed under LGPL (see lgpl-3.0.txt). + * + * The MIT License + * Copyright © 2014-2022 Ilkka Seppälä + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ +package com.iluwatar.rpc.product.model; + +import lombok.AllArgsConstructor; +import lombok.Data; + +/** + * Product POJO class. + * + * @author CoderSleek + * @version 1.0 + */ +@Data +@AllArgsConstructor +public class Product { + private Long id; + private String name; + private String type; + private double price; + private int quantity; +} \ No newline at end of file diff --git a/remote-procedure-call/product-service/src/main/java/com/iluwatar/rpc/product/service/ProductService.java b/remote-procedure-call/product-service/src/main/java/com/iluwatar/rpc/product/service/ProductService.java new file mode 100644 index 000000000000..01ef6f2dbb5b --- /dev/null +++ b/remote-procedure-call/product-service/src/main/java/com/iluwatar/rpc/product/service/ProductService.java @@ -0,0 +1,55 @@ +/* + * This project is licensed under the MIT license. Module model-view-viewmodel is using ZK framework licensed under LGPL (see lgpl-3.0.txt). + * + * The MIT License + * Copyright © 2014-2022 Ilkka Seppälä + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ +package com.iluwatar.rpc.product.service; + +import com.iluwatar.rpc.product.model.Product; +import java.util.List; +import java.util.Optional; + +/** + * API Contract for Product service, which can be exposed. + * Includes getter methods for product by id and all products. + * Thread safety is not guaranteed. + * + * @link com.iluwatar.rpc.product.model.Product + * @author CoderSleek + * @version 1.0 + */ +public interface ProductService { + /** + * Get optional of product by id. + * + * @param id id of product + * @return product + */ + Optional<Product> getProduct(Long id); + + /** + * Get all products. + * @return ArrayList of all products + * @throws IllegalStateException thrown when products array is null or empty, denotes improper initialization + */ + List<Product> getAllProducts() throws IllegalStateException; +} diff --git a/remote-procedure-call/product-service/src/main/java/com/iluwatar/rpc/product/service/ProductServiceGrpcImpl.java b/remote-procedure-call/product-service/src/main/java/com/iluwatar/rpc/product/service/ProductServiceGrpcImpl.java new file mode 100644 index 000000000000..2dd5d58e3f2f --- /dev/null +++ b/remote-procedure-call/product-service/src/main/java/com/iluwatar/rpc/product/service/ProductServiceGrpcImpl.java @@ -0,0 +1,147 @@ +/* + * This project is licensed under the MIT license. Module model-view-viewmodel is using ZK framework licensed under LGPL (see lgpl-3.0.txt). + * + * The MIT License + * Copyright © 2014-2022 Ilkka Seppälä + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ +package com.iluwatar.rpc.product.service; + +import com.iluwatar.rpc.product.model.Product; +import com.iluwatar.rpc.proto.Shopping.Empty; +import com.iluwatar.rpc.proto.Shopping.ProductResponse; +import com.iluwatar.rpc.proto.Shopping.ReduceProductRequest; +import com.iluwatar.rpc.proto.Shopping.ReduceProductResponse; +import com.iluwatar.rpc.proto.ShoppingServiceGrpc.ShoppingServiceImplBase; +import io.grpc.Status; +import io.grpc.stub.StreamObserver; +import java.util.List; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +/** + * Implementation of product-service Contract exposed by gRPC proto. + * Thread safety is not guaranteed. + * + * @link com.iluwatar.rpc.product.service.ProductService + * @link com.iluwatar.rpc.product.model.Product + * @author CoderSleek + * @version 1.0 + */ +public class ProductServiceGrpcImpl extends ShoppingServiceImplBase { + private final ProductService productService; + private static final Logger log = LoggerFactory.getLogger(ProductServiceGrpcImpl.class); + + /** + * Constructor for initializing Implementation of ProductService Contract internally. + * ProductService Implementation stores Product data in internal state for simplicity. + * + * @param productService ProductService + */ + public ProductServiceGrpcImpl(ProductService productService) { + this.productService = productService; + } + + /** + * Reduces the quantity of a specified product via product id by the requested quantity. + * To simulate a customer buying an item, once bought the quantity of the product is reduced from stock. + * @param request contains product id and quantity to reduce + * @param responseStreamObserver for iterating over response + */ + @Override + public void reduceProductQuantity(ReduceProductRequest request, + StreamObserver<ReduceProductResponse> responseStreamObserver) { + log.info("Received request to reduce product quantity"); + boolean status; + String message; + var product = this.productService.getProduct(request.getProductId()); + + if (product.isEmpty()) { + status = false; + message = "Product with ID does not exist"; + } else { + int productQuantity = product.get().getQuantity(); + int requestedQuantity = request.getQuantity(); + + if (requestedQuantity <= 0) { + status = false; + message = "Invalid Quantity"; + } else if (requestedQuantity > productQuantity) { + status = false; + message = "Product has less quantity in stock than requested"; + } else { + log.info("Before reducing quantity: {}", productQuantity); + product.get().setQuantity(productQuantity - requestedQuantity); + log.info("After reducing quantity: {}", product.get().getQuantity()); + status = true; + message = "Success"; + } + } + + var response = ReduceProductResponse + .newBuilder() + .setMessage(message) + .setStatus(status) + .build(); + + responseStreamObserver.onNext(response); + responseStreamObserver.onCompleted(); + log.info("Request to Reduce Product Quantity Execution Completed"); + } + + /** + * Fetches all products from ProductService and streams them to the client. + * Throws NOT_FOUND status exception if products are not found. + * @param request empty placeholder request + * @param responseStreamObserver for iterating over responses + */ + @Override + public void getAllProducts(Empty request, + StreamObserver<ProductResponse> responseStreamObserver) { + log.info("Received request to fetch all products"); + List<Product> products; + + try { + products = this.productService.getAllProducts(); + } catch (IllegalStateException e) { + log.error("Failed to fetch products from ProductService", e); + responseStreamObserver.onError( + Status.NOT_FOUND + .withDescription(e.getMessage()) + .asException()); + responseStreamObserver.onCompleted(); + return; + } + + for (var product : products) { + responseStreamObserver.onNext( + ProductResponse.newBuilder() + .setId(product.getId()) + .setName(product.getName()) + .setPrice(product.getPrice()) + .setType(product.getType()) + .build() + ); + } + + responseStreamObserver.onCompleted(); + log.info("Request to fetch all products Execution Completed"); + } +} diff --git a/remote-procedure-call/product-service/src/main/java/com/iluwatar/rpc/product/service/ProductServiceImpl.java b/remote-procedure-call/product-service/src/main/java/com/iluwatar/rpc/product/service/ProductServiceImpl.java new file mode 100644 index 000000000000..2ce1749b1927 --- /dev/null +++ b/remote-procedure-call/product-service/src/main/java/com/iluwatar/rpc/product/service/ProductServiceImpl.java @@ -0,0 +1,78 @@ +/* + * This project is licensed under the MIT license. Module model-view-viewmodel is using ZK framework licensed under LGPL (see lgpl-3.0.txt). + * + * The MIT License + * Copyright © 2014-2022 Ilkka Seppälä + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ +package com.iluwatar.rpc.product.service; + +import com.iluwatar.rpc.product.model.Product; +import java.util.List; +import java.util.Optional; + +/** + * Implementation of ProductService Contract, maintains Product state for simplicity. + * Provides getter methods for product by id and all products. + * Thread safety is not guaranteed. + * + * @link com.iluwatar.rpc.product.service.ProductService + * @link com.iluwatar.rpc.product.model.Product + * @author CoderSleek + * @version 1.0 + */ +public class ProductServiceImpl implements ProductService { + private final List<Product> products; + + /** + * Constructor to set internal state of Product array. + * + * @param products ArrayList of products + */ + public ProductServiceImpl(List<Product> products) { + this.products = products; + } + + /** + * Get optional of product by id. + * @param id id of product + * @return Product first item in the list with matching id, if not found returns empty optional + */ + @Override + public Optional<Product> getProduct(Long id) { + return products + .stream() + .filter(product -> product.getId().equals(id)) + .findFirst(); + } + + @Override + public List<Product> getAllProducts() throws IllegalStateException { + if (products == null) { + throw new IllegalStateException("Products array is not initialized properly"); + } + + if (products.isEmpty()) { + throw new IllegalStateException("Products array does not have any data"); + } + + return products; + } +} diff --git a/remote-procedure-call/product-service/src/main/resources/logback.xml b/remote-procedure-call/product-service/src/main/resources/logback.xml new file mode 100644 index 000000000000..ed930c512e7e --- /dev/null +++ b/remote-procedure-call/product-service/src/main/resources/logback.xml @@ -0,0 +1,12 @@ +<!-- to ensure only info and error logging --> +<configuration> + <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender"> + <encoder> + <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern> + </encoder> + </appender> + + <root level="INFO"> + <appender-ref ref="CONSOLE" /> + </root> +</configuration> \ No newline at end of file diff --git a/remote-procedure-call/product-service/src/test/java/com/iluwatar/rpc/product/service/ProductServiceGrpcImplTest.java b/remote-procedure-call/product-service/src/test/java/com/iluwatar/rpc/product/service/ProductServiceGrpcImplTest.java new file mode 100644 index 000000000000..4a390b9123d1 --- /dev/null +++ b/remote-procedure-call/product-service/src/test/java/com/iluwatar/rpc/product/service/ProductServiceGrpcImplTest.java @@ -0,0 +1,192 @@ +/* + * This project is licensed under the MIT license. Module model-view-viewmodel is using ZK framework licensed under LGPL (see lgpl-3.0.txt). + * + * The MIT License + * Copyright © 2014-2022 Ilkka Seppälä + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ +package com.iluwatar.rpc.product.service; + +import com.iluwatar.rpc.product.mocks.ProductMocks; +import com.iluwatar.rpc.product.model.Product; +import com.iluwatar.rpc.proto.Shopping.Empty; +import com.iluwatar.rpc.proto.Shopping.ProductResponse; +import com.iluwatar.rpc.proto.Shopping.ReduceProductRequest; +import com.iluwatar.rpc.proto.Shopping.ReduceProductResponse; +import io.grpc.StatusException; +import io.grpc.stub.StreamObserver; +import java.util.List; +import java.util.Optional; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.ArgumentCaptor; +import org.mockito.InjectMocks; +import org.mockito.Mock; +import org.mockito.junit.jupiter.MockitoExtension; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.mockito.Mockito.*; +import static org.mockito.ArgumentMatchers.any; + +@ExtendWith(MockitoExtension.class) +class ProductServiceGrpcImplTest { + @Mock + private ProductService productService; + + @InjectMocks + private ProductServiceGrpcImpl productServiceGrpcImpl; + + private List<Product> productsMockData; + + @BeforeEach + public void setUp() { + productsMockData = ProductMocks.getMockProducts(); + } + + @Test + void testReduceProductQuantity_ProductNotFound() { + var request = ReduceProductRequest.newBuilder() + .setProductId(6L) + .setQuantity(5) + .build(); + StreamObserver<ReduceProductResponse> responseObserver = mock(StreamObserver.class); + + when(productService.getProduct(request.getProductId())).thenReturn(Optional.empty()); + + productServiceGrpcImpl.reduceProductQuantity(request, responseObserver); + + ArgumentCaptor<ReduceProductResponse> responseCaptor = + ArgumentCaptor.forClass(ReduceProductResponse.class); + verify(responseObserver).onNext(responseCaptor.capture()); + verify(responseObserver).onCompleted(); + + ReduceProductResponse response = responseCaptor.getValue(); + assertFalse(response.getStatus()); + assertEquals("Product with ID does not exist", response.getMessage()); + } + + @Test + void testReduceProductQuantity_InvalidQuantity() { + Product product = productsMockData.get(0); + ReduceProductRequest request = ReduceProductRequest.newBuilder() + .setProductId(product.getId()) + .setQuantity(-5) + .build(); + StreamObserver<ReduceProductResponse> responseObserver = mock(StreamObserver.class); + + when(productService.getProduct(product.getId())).thenReturn(Optional.of(product)); + + productServiceGrpcImpl.reduceProductQuantity(request, responseObserver); + + ArgumentCaptor<ReduceProductResponse> responseCaptor = + ArgumentCaptor.forClass(ReduceProductResponse.class); + verify(responseObserver).onNext(responseCaptor.capture()); + verify(responseObserver).onCompleted(); + + ReduceProductResponse response = responseCaptor.getValue(); + assertFalse(response.getStatus()); + assertEquals("Invalid Quantity", response.getMessage()); + } + + @Test + void testReduceProductQuantity_InsufficientQuantity() { + Product product = productsMockData.get(0); + + ReduceProductRequest request = ReduceProductRequest.newBuilder() + .setProductId(product.getId()) + .setQuantity(1000) + .build(); + StreamObserver<ReduceProductResponse> responseObserver = mock(StreamObserver.class); + + when(productService.getProduct(product.getId())).thenReturn(Optional.of(product)); + + productServiceGrpcImpl.reduceProductQuantity(request, responseObserver); + + ArgumentCaptor<ReduceProductResponse> responseCaptor = + ArgumentCaptor.forClass(ReduceProductResponse.class); + verify(responseObserver).onNext(responseCaptor.capture()); + verify(responseObserver).onCompleted(); + + ReduceProductResponse response = responseCaptor.getValue(); + assertFalse(response.getStatus()); + assertEquals("Product has less quantity in stock than requested", response.getMessage()); + } + + @Test + void testReduceProductQuantity_Success() { + Product product = productsMockData.get(0); + ReduceProductRequest request = ReduceProductRequest.newBuilder() + .setProductId(product.getId()) + .setQuantity(5) + .build(); + StreamObserver<ReduceProductResponse> responseObserver = mock(StreamObserver.class); + + when(productService.getProduct(product.getId())).thenReturn(Optional.of(product)); + + productServiceGrpcImpl.reduceProductQuantity(request, responseObserver); + + ArgumentCaptor<ReduceProductResponse> responseCaptor = + ArgumentCaptor.forClass(ReduceProductResponse.class); + verify(responseObserver).onNext(responseCaptor.capture()); + verify(responseObserver).onCompleted(); + + ReduceProductResponse response = responseCaptor.getValue(); + assertTrue(response.getStatus()); + assertEquals("Success", response.getMessage()); + assertEquals(5, product.getQuantity()); + } + + @Test + void testGetAllProducts_Success() { + List<Product> productsLocal = ProductMocks.getMockProducts(); + var product = productsLocal.get(0); + + StreamObserver<ProductResponse> responseObserver = mock(StreamObserver.class); + + when(productService.getAllProducts()).thenReturn(productsMockData); + productServiceGrpcImpl.getAllProducts(null, responseObserver); + + ArgumentCaptor<ProductResponse> responseCaptor = ArgumentCaptor.forClass(ProductResponse.class); + verify(responseObserver, times(5)).onNext(responseCaptor.capture()); + verify(responseObserver).onCompleted(); + + assertEquals(productsLocal.size(), responseCaptor.getAllValues().size()); + assertEquals(Long.compare(product.getId(), responseCaptor.getAllValues().get(0).getId()), 0); + assertEquals(product.getName(), responseCaptor.getAllValues().get(0).getName()); + assertEquals(product.getType(), responseCaptor.getAllValues().get(0).getType()); + assertEquals( + Double.compare(product.getPrice(), responseCaptor.getAllValues().get(0).getPrice()), 0); + } + + @Test + void testGetAllProducts_Failure() { + StreamObserver<ProductResponse> responseObserver = mock(StreamObserver.class); + + when(productService.getAllProducts()).thenThrow(new IllegalStateException("Database error")); + + productServiceGrpcImpl.getAllProducts(Empty.newBuilder().build(), responseObserver); + + verify(responseObserver).onError(any(StatusException.class)); + verify(responseObserver).onCompleted(); + } +} diff --git a/remote-procedure-call/product-service/src/test/java/com/iluwatar/rpc/product/service/ProductServiceImplTest.java b/remote-procedure-call/product-service/src/test/java/com/iluwatar/rpc/product/service/ProductServiceImplTest.java new file mode 100644 index 000000000000..9c82c86605d3 --- /dev/null +++ b/remote-procedure-call/product-service/src/test/java/com/iluwatar/rpc/product/service/ProductServiceImplTest.java @@ -0,0 +1,92 @@ +/* + * This project is licensed under the MIT license. Module model-view-viewmodel is using ZK framework licensed under LGPL (see lgpl-3.0.txt). + * + * The MIT License + * Copyright © 2014-2022 Ilkka Seppälä + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ +package com.iluwatar.rpc.product.service; + +import com.iluwatar.rpc.product.mocks.ProductMocks; +import com.iluwatar.rpc.product.model.Product; +import java.util.List; +import java.util.Optional; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.junit.jupiter.MockitoExtension; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertNotNull; +import static org.junit.jupiter.api.Assertions.assertThrows; +import static org.junit.jupiter.api.Assertions.assertTrue; + +@ExtendWith(MockitoExtension.class) +class ProductServiceImplTest { + private static List<Product> products; + private ProductServiceImpl productService; + + @BeforeEach + void setUp() { + products = ProductMocks.getMockProducts(); + productService = new ProductServiceImpl(products); + } + + @Test + void testGetProduct() { + Optional<Product> product = productService.getProduct(1L); + assertTrue(product.isPresent()); + assertEquals(1L, product.get().getId()); + assertEquals("Product 1", product.get().getName()); + assertEquals(50.0, product.get().getPrice()); + } + + @Test + void testGetProductNotFound() { + Optional<Product> product = productService.getProduct(6L); + assertFalse(product.isPresent()); + } + + @Test + void testGetAllProducts() { + List<Product> allProducts = productService.getAllProducts(); + assertNotNull(allProducts); + assertEquals(5, allProducts.size()); + } + + @Test + void testGetAllProductsEmpty() { + products.clear(); + IllegalStateException exception = assertThrows(IllegalStateException.class, () -> { + productService.getAllProducts(); + }); + assertEquals("Products array does not have any data", exception.getMessage()); + } + + @Test + void testGetAllProductNull() { + productService = new ProductServiceImpl(null); + IllegalStateException exception = assertThrows(IllegalStateException.class, () -> { + productService.getAllProducts(); + }); + assertEquals("Products array is not initialized properly", exception.getMessage()); + } +} \ No newline at end of file diff --git a/remote-procedure-call/product-service/src/test/java/com/iluwatar/rpc/product/service/ProductServiceIntegrationTest.java b/remote-procedure-call/product-service/src/test/java/com/iluwatar/rpc/product/service/ProductServiceIntegrationTest.java new file mode 100644 index 000000000000..a9a87463b43b --- /dev/null +++ b/remote-procedure-call/product-service/src/test/java/com/iluwatar/rpc/product/service/ProductServiceIntegrationTest.java @@ -0,0 +1,102 @@ +/* + * This project is licensed under the MIT license. Module model-view-viewmodel is using ZK framework licensed under LGPL (see lgpl-3.0.txt). + * + * The MIT License + * Copyright © 2014-2022 Ilkka Seppälä + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ +package com.iluwatar.rpc.product.service; + +import com.iluwatar.rpc.product.mocks.ProductMocks; +import com.iluwatar.rpc.product.model.Product; +import com.iluwatar.rpc.proto.ShoppingServiceGrpc; +import com.iluwatar.rpc.proto.ShoppingServiceGrpc.ShoppingServiceBlockingStub; +import com.iluwatar.rpc.proto.Shopping.ProductResponse; +import com.iluwatar.rpc.proto.Shopping.ReduceProductRequest; +import com.iluwatar.rpc.proto.Shopping.ReduceProductResponse; +import io.grpc.ManagedChannel; +import io.grpc.ManagedChannelBuilder; +import io.grpc.Server; +import io.grpc.ServerBuilder; +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; +import org.junit.jupiter.api.AfterAll; +import org.junit.jupiter.api.BeforeAll; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.junit.jupiter.MockitoExtension; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertTrue; + +@ExtendWith(MockitoExtension.class) +class ProductServiceIntegrationTest { + private static Server server; + private static ManagedChannel channel; + private static ShoppingServiceBlockingStub blockingStub; + + @BeforeAll + public static void setup() throws IOException { + List<Product> products = ProductMocks.getMockProducts(); + var productServiceMain = new ProductServiceImpl(products); + + server = ServerBuilder + .forPort(8080) + .addService(new ProductServiceGrpcImpl(productServiceMain)) + .build() + .start(); + + channel = ManagedChannelBuilder.forAddress("localhost", 8080) + .usePlaintext() + .build(); + + blockingStub = ShoppingServiceGrpc.newBlockingStub(channel); + } + + @AfterAll + public static void teardown() { + channel.shutdownNow(); + server.shutdownNow(); + } + + @Test + void testReduceProductQuantity() { + ReduceProductRequest request = ReduceProductRequest.newBuilder() + .setProductId(1L) + .setQuantity(5) + .build(); + + ReduceProductResponse response = blockingStub.reduceProductQuantity(request); + + assertTrue(response.getStatus()); + assertEquals("Success", response.getMessage()); + } + + @Test + void testGetAllProducts() { + var responseIterator = blockingStub.getAllProducts(null); + + ArrayList<ProductResponse> responses = new ArrayList<>(); + responseIterator.forEachRemaining(responses::add); + + assertEquals(ProductMocks.getMockProducts().size(), responses.size()); + } +} diff --git a/remote-procedure-call/product-service/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker b/remote-procedure-call/product-service/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker new file mode 100644 index 000000000000..ca6ee9cea8ec --- /dev/null +++ b/remote-procedure-call/product-service/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker @@ -0,0 +1 @@ +mock-maker-inline \ No newline at end of file diff --git a/remote-procedure-call/proto/shopping.proto b/remote-procedure-call/proto/shopping.proto new file mode 100644 index 000000000000..47515f054fda --- /dev/null +++ b/remote-procedure-call/proto/shopping.proto @@ -0,0 +1,52 @@ +// +// This project is licensed under the MIT license. Module model-view-viewmodel is using ZK framework licensed under LGPL (see lgpl-3.0.txt). +// +// The MIT License +// Copyright © 2014-2022 Ilkka Seppälä +// +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in +// all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +// THE SOFTWARE. +// + +syntax = "proto3"; + +package com.iluwatar.rpc.proto; + +service ShoppingService { + rpc ReduceProductQuantity (ReduceProductRequest) returns (ReduceProductResponse); + rpc GetAllProducts (Empty) returns (stream ProductResponse); +} + +message ReduceProductRequest { + uint64 product_id = 1; + uint32 quantity = 2; +} + +message ReduceProductResponse { + bool status = 1; + string message = 2; +} + +message ProductResponse { + uint64 id = 1; + string name = 2; + string type = 3; + double price = 4; +} + +message Empty {}