Table of content



The Terminal entity within the microservice architecture

Entity-Relationship-Model of <AirportService>

Entity Name: Terminal

Data Schema: AirportLogistics

Master Service: AirportService


Dataflow of entity of Terminal

Microservices

3.1 AirplaneService3.2 AirportService3.3 CargoService3.4 CountryService3.5 EmployeeService3.6 LuggageService
3.7 PassengerBookingService

Entity Properties

Property NameDatatypeData EntityReference Entity
AirportLONGTerminalAirport
PrimaryKeyLONGTerminal
ServerReplicationVersionLONGTerminal
TerminalNameSTRINGTerminal

Service Interfaces

Relative mapping URLRequest MethodMethod NameMicroserviceInvolved Entities
/terminal/airport/{id}GETfindAllTerminalOfAirport(id)AirportServiceAirport Terminal
/terminalPOSTinsertTerminal(terminal)AirportServiceTerminal
/terminal/{id}DELETEdeleteTerminalById(id)AirportServiceTerminal
/terminalGETfindAllTerminal()AirportServiceTerminal
/terminal/{id}PUTupdateTerminalById(terminal)AirportServiceTerminal
/gate/terminal/{id}GETfindAllGateOfTerminal(id)AirportServiceTerminal Gate
/terminal/{id}GETfindTerminalById(id)AirportServiceTerminal

Distributed transaction of <Terminal>

Pseudo code snippet

final Terminal terminal = (Terminal) this.callMicroservice(ServiceNames.AIRPORT_SERVICE + "/terminal/" + id, Terminal.class);
if (terminal != null) {
    final Airport airport1 = (Airport) this.callMicroservice(ServiceNames.AIRPORT_SERVICE + "/airport/" + terminal.getAirport().getId(), Airport.class);
    if (airport1 != null) {
        final City city2 = (City) this.callMicroservice(ServiceNames.COUNTRY_SERVICE + "/city/" + airport1.getCity().getId(), City.class);
        if (city2 != null) {
            final Country country3 = (Country) this.callMicroservice(ServiceNames.COUNTRY_SERVICE + "/country/" + city2.getCountry().getId(), Country.class);
            if (country3 != null) {
            }
        }
    }
}
return terminal;


Table of content