Component architecture - sonata-nfv/tng-gtk-common GitHub Wiki
This page summarises the architecture used for the Gatekeeper's common (between the Service and the Validation and Verification platforms) micro-services.
The tng-gtk-common
component diagram is the following:
This diagram shows that:
- the REST API of the component addresses a set of controllers;
- these controllers use a set of services, which either use other services or the external (also a REST API) Catalogue;
- the upload packages service in particular use the REST API provided by another external service, the Unpackager;
- a common library is also used, providing caching, fetching and logging services.
The PlantText source for this is:
@startuml
package "tng-gtk-utils" as U {
component logger
component fectcher
component cache
}
package "tng-gtk-common" as TGC {
package controllers as C {
component root
component pings
component packages as P
}
package services as S {
component "delete packages"
component "fetch NSD"
component "fetch packages"
component "fetch VMNFDs"
component "upload packages" as UP
component "validate package parameters" as VPP
component "validate event parameters"
}
}
() "REST API" - C
U <- TGC
P -> S
UP ..> VPP : uses
() Unpackager <.. UP : uses
() Catalogue <.. S : uses
@enduml