-
Notifications
You must be signed in to change notification settings - Fork 0
Solution Folder Structure
Jaafar Alkaales edited this page Aug 5, 2024
·
3 revisions
Folders correspond to a component or service in the solution architecture. Look there for an in-depth description of the functionality of a component.
In all the descriptions on this wiki, I assume that you are working from Visual Studio Code.
.
├── Bar
├── Warehouse
├── Drop_Point
├── User
├── frontend
├── Eureka-Server
├── config-server
├── docker-compose.yml
└── README.md
Bar
├── src
│ ├── config
│ │ ├── eurekaClient.js # initialize eureka client
│ │ └── serviceHelper.js # fetch warehouse's service instance and use it with config
│ ├── Controllers
│ │ ├── barController.js # controller functions for bar
│ │ └── orderController.js # controller functions for order
│ ├── Middleware # error handlers
│ │ ├── errorHandler.js
│ │ └── validateObjectId.js
│ ├── Models
│ │ ├── barModel.js # bar schema model
│ │ └── orderModel.js # order schema model
│ ├── Routes
│ │ ├── barRoutes.js
│ │ └── orderRoutes.js
│ ├── Services
│ │ ├── DeleteDrink.js
│ │ ├── dropBottle.js # helper function: communicate with drop point service to collect empties
│ │ └── replenishStock.js # helper functions for bar replenishment
├── .dockerignore
├── .env
├── .gitignore
├── app.js # application entry point
├── Dockerfile
├── package-lock.json
└── package.json
Warehouse
├── src
│ ├── config
│ │ ├── eurekaClient.js # initialize eureka client
│ │ └── serviceHelper.js # fetch bar's service instance and use it with config
│ ├── Controllers
│ │ ├── beverageController.js # controller functions for beverage CRUD ops
│ │ └── warehouseController.js # controller functions for Warehouse
│ ├── Middleware # error handlers
│ │ ├── errorHandler.js
│ │ └── validateObjectId.js
│ ├── Models
│ │ ├── beverageModel.js # beverage schema model
│ │ └── warehouseModel.js # warehouse schema model
│ ├── Routes
│ │ ├── beverageRoutes.js
│ │ └── warehouseRoutes.js
│ ├── Services
│ │ └── logService.js # helper function to update the log of warehouse
├── .dockerignore
├── .env
├── .gitignore
├── app.js # application entry point
├── Dockerfile
├── docker-compose.yml
├── package-lock.json
├── package.json
└── README.md
Drop_Point
├── .mvn/
├── .vscode/
├── src/
│ └── main/
│ └── java/
│ └── com/
│ └── bottleDrop/
│ └── dp/
│ ├── DropBottleRequest.java DTO Class for empty bottles
│ ├── DropPoint.java DropPoint Class
│ ├── DropPointRepository.java Repository interface extends JPA
│ ├── DropPointService.java Business Logic
│ ├── ManagementController.java RESTConroller
│ └── DropPointApplication.java Application entry point
├── resources/
│ ├── static/
│ ├── templates/
│ ├── application.properties
│ └── maven.properties
├── test/
├── target/
├── .gitignore
├── HELP.md
├── mvnw
├── mvnw.cmd
└── pom.xml
User
To Be Added soon...
Eureka-Server
├── .mvn
├── src
│ ├── main
│ │ ├── java # Java source directory
│ │ │ └── com
│ │ │ └── example
│ │ │ └── server
│ │ │ └── ServerApplication.java # Main application Java file
│ │ └── resources # Resources directory for configuration files
│ │ └── application.properties # Main application properties file
│ └── test
├── target
├── .gitignore
├── mvnw
├── mvnw.cmd
└── pom.xml # Maven project file (includes dependencies for eureka)
config-server
├── .mvn
├── src
│ ├── main
│ │ ├── java # Java source directory
│ │ │ └── com
│ │ │ └── example
│ │ │ └── server
│ │ │ └── ServerApplication.java # Main application Java file
│ │ └── resources # Resources directory for configuration files
│ │ ├── config
│ │ │ ├─ Bar_Service.properties # configuration file stores **warehouse** api endpoints
│ │ │ ├─ Warehouse_Service.properties # configuration file stores **bar** api endpoints
│ │ │ ├─ microservice1.properties # dummy config file
│ │ │ └─ microservice2.properties # //
│ │ └── application.properties # Main application properties file
│ └── test
├── target
├── .gitignore
├── mvnw
├── mvnw.cmd
└── pom.xml # Maven project file (includes dependencies for Spring Cloud Config)