You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
25 lines
1.7 KiB
Plaintext
25 lines
1.7 KiB
Plaintext
@startuml
|
|
' convert it with additional command line argument -DRELATIVE_INCLUDE="./.." to use locally
|
|
!if %variable_exists("RELATIVE_INCLUDE")
|
|
!include %get_variable_value("RELATIVE_INCLUDE")/C4_Container.puml
|
|
!else
|
|
!include https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/v2.5.0/C4_Container.puml
|
|
!endif
|
|
' $legendText with \n defines the label and details of the legend entry ("backend container" is label, "eight sided shape" is details)
|
|
AddElementTag("backendContainer", $fontColor=$ELEMENT_FONT_COLOR, $bgColor="#335DA5", $shape=EightSidedShape(), $legendText="backend container\neight sided shape")
|
|
' $legendText without \n defines only a label
|
|
AddRelTag("async", $textColor=$ARROW_COLOR, $lineColor=$ARROW_COLOR, $lineStyle=DashedLine(), $legendText="async call")
|
|
' if no $legendText defined, $tag is automatically the label and all additional displayed properties are the details
|
|
AddRelTag("sync/async", $textColor=$ARROW_COLOR, $lineColor=$ARROW_COLOR, $lineStyle=DottedLine())
|
|
|
|
System_Boundary(c1, "Internet Banking") {
|
|
Container(mobile_app, "Mobile App", "C#, Xamarin", "Provides a limited subset of the Internet banking functionality to customers via their mobile device")
|
|
Container(backend_api, "API Application", "Java, Docker Container", "Provides Internet banking functionality via API", $tags="backendContainer")
|
|
}
|
|
System_Ext(banking_system, "Mainframe Banking System", "Stores all of the core banking information about customers, accounts, transactions, etc.")
|
|
|
|
Rel(mobile_app, backend_api, "Uses", "async, JSON/HTTPS", $tags="async")
|
|
Rel_Neighbor(backend_api, banking_system, "Uses", "sync/async, XML/HTTPS", $tags="sync/async")
|
|
|
|
SHOW_LEGEND($details=Small())
|
|
@enduml |