Data Services and Command Flow Overview
In SR360 there is a set of APIs responsible for communication between front-end (UI) and back-end (Java, host and services). All of the orchestrated operations are subjected to the same Command Flow, which encapsulates a set of Request/Response payloads used during the process.
There is also a new model of events classified as Business Events, that contrary from older "text" based or format centric paradigm, to an action concept, which for the developers should be transparent. If the user typed a command on keyboard or used a graphical widget to end his PNR, it is considered just as a single "END PNR" event.
Backend Services and APIs
— Java callback services
— Java POJO serialization
— Get PNR
— Business Events
Transport -> Command flow
Request / Response object structure - communication between front-end and back-end is based on JSON format called Command Flow structure. It is transformed XML (so it looks not very friendly) with elements of Data type. These data elements are purposed to contain response data for concrete commands, such as
1KRKWAW - simple CPA one. Handling it directly (as JSON) would be very hard (and could break OO principles), so we create proper classes and register them with the DTO service.
Frontend Services and APIs
— JSON to TypeScript serialization
— DTO service
— Register form for data structure RS event
— Register form for Human Interface Extension Points
— CF API
— SWS API
— HTTP/REST API
— Command Message API
— Forms Service