5 Mock API Ceation Guidelines
Nedzad Kalajdzic edited this page 2026-05-28 07:59:00 +00:00

The rules:

  1. Every micro service shall have a database. At the moment we use sensor database until the investigation about the database structure is done.
  2. Map Structure
    • shall follow Object oriented (use of classes) check out the parking service structure
  3. Every micro service has unique functionalities such as electricity and sensor then some parts may not be similar
  4. Having a README: What to include:
  • How it integrates from frontend and back
  • How we reach the data and having proper comments
  • In the pr having a label about testing
  • How to build the project and make it run
  • The decision and why

Communication

  • At the moment the communication will happen through the middleware
  • The update request is at the moment mockup until the investigation about how to handle it in the middleware and database.

When you create a new project, you need to first choose the correct template, then run the following command.

-"dotnet new <TEMPLATE> -n YOUR_PROJECT_NAME"
To list the available templates, use the command:
    -"dotnet new list"

Service Creation Scripts

  • New services can be created using:

    • WindowsCreateService.bat
    • UnixCreateService.sh
  • The scripts generate :

    • Service structure
    • Dockerfile
    • Test project
    • DatabaseLogic folder
    • Endpoint structure
    • Request and Response models

Docker compose and Database Structure

  • The projects current stack includes:
    • Energy
    • file
    • frontend
    • menu
    • parking
    • roomBooking
    • temperature
    • user
    • vasttrafik
    • solarPanel
    • Each stack can be rebuilt and managed independently.
    • The project architecture is designed so that each micro service should have its own database structure, although some services currently still use shared sensor database structures while the database investigation is ongoing.

API vs MicroServices

  • Mockup APIs are mainly used for simulating external systems and external data sources. ReadMockup services collects data from the mockup API's and publish data through MQTT middleware communication. Service micro services mainly handles:
    • Business logic
    • Database communication
    • Endpoints
    • Middleware communication

Data Flow Models

  • The project mainly uses this following structure for data flow:

    • Mockup API => ReadMockup => Middleware => Service => Database.
  • Within the service layer the flow mainly follows:

    • Endpoint => Service => DatabaseLogic => Database
  • The most used models and layers are:

    • Request
    • Response
    • Services
    • DatabaseLogic
    • Endpoints