|
@@ -1,13 +1,13 @@
|
|
@startuml OfflineTranmission
|
|
@startuml OfflineTranmission
|
|
header Message OfflineTranmission
|
|
header Message OfflineTranmission
|
|
-' left to bottom direction
|
|
|
|
|
|
+left to right direction
|
|
skinparam actorStyle awesome
|
|
skinparam actorStyle awesome
|
|
|
|
|
|
skinparam usecase {
|
|
skinparam usecase {
|
|
BackgroundColor<< Publisher >> Pink
|
|
BackgroundColor<< Publisher >> Pink
|
|
BorderColor<< Publisher >> Red
|
|
BorderColor<< Publisher >> Red
|
|
- BackgroundColor<< Subscriber >> Pink
|
|
|
|
- BorderColor<< Subscriber >> Red
|
|
|
|
|
|
+ BackgroundColor<< Subscriber >> YellowGreen
|
|
|
|
+ BorderColor<< Subscriber >> Green
|
|
}
|
|
}
|
|
|
|
|
|
package PublisherSite {
|
|
package PublisherSite {
|
|
@@ -21,22 +21,23 @@ package SubscriberSite {
|
|
() "Proxy" as proxy2
|
|
() "Proxy" as proxy2
|
|
() "Proxy" as proxy3
|
|
() "Proxy" as proxy3
|
|
(Parent) as (parentSub) << Subscriber >>
|
|
(Parent) as (parentSub) << Subscriber >>
|
|
- actor "Subscriber" as Subscriber1 #pink;line:red;line.bold;text:red
|
|
|
|
|
|
+ actor "Subscriber" as Subscriber1 #YellowGreen;line:green;line.bold;text:Green
|
|
actor "Subscriber" as Subscriber2 #cyan;line:blue;line.bold;text:blue
|
|
actor "Subscriber" as Subscriber2 #cyan;line:blue;line.bold;text:blue
|
|
}
|
|
}
|
|
|
|
|
|
-note "<b><size:18>Blue COLOR</size></b> is the \nfirst triggering mechanism for \noffline transmission." as N1
|
|
|
|
-note "<b><size:18>Red COLOR</size></b> is the \nfirst line of streaming." as N2
|
|
|
|
|
|
+' note "<b><size:18>Blue COLOR</size></b> is the \nfirst triggering mechanism for \noffline transmission." as N1
|
|
|
|
+' note "<b><size:18>Red COLOR</size></b> is the \nfirst line of streaming." as N2
|
|
|
|
+' note "Internet Connection Interrupted" as N3
|
|
|
|
+proxy1 <-- Publisher #line:Red;text:Red : Publish data to \ndesignated subsriber \nover proxy
|
|
|
|
+parentPub <-- Publisher : If internet is \ndown, NOTIFY \nparent publisher
|
|
|
|
+proxy2 --> Subscriber1 #line:Red;text:Red : Receive data \nfrom Publisher
|
|
|
|
+parentPub --> parentSub #line:blue;line.bold;text:Blue : Notify Internet \nWas Offline \nPlease Subscribe \nAgain
|
|
|
|
+proxy2 . proxy1 #line:Red;text:Red : Internet Connection \nInterruption
|
|
|
|
+' N3 . proxy2 #line:Red;text:Red
|
|
|
|
|
|
-Publisher --> proxy1 #line:Red;text:Red : Publish data to \ndesignated subsriber \nover proxy
|
|
|
|
-Publisher -> parentPub : If internet is \ndown, NOTIFY \nparent publisher
|
|
|
|
-Subscriber1 --> proxy2 #line:Red;text:Red : Receive data \nfrom Publisher
|
|
|
|
-parentPub -> parentSub #line:blue;line.bold;text:Blue : Notify Internet \nWas Offline \nPlease Subscribe \nAgain
|
|
|
|
-proxy1 ... proxy2 #line:Red;text:Red : Internet Connection \nCut off
|
|
|
|
-
|
|
|
|
-Subscriber2 -> proxy3 #line:Blue;text:Blue : Subcribe to Publisher \nvia new Proxxy
|
|
|
|
|
|
+proxy3 <-- Subscriber2 #line:Blue;text:Blue : Subcribe to Publisher \nvia new Proxxy
|
|
proxy1 . proxy3 #line:Blue;text:Blue : Subscribe to proxy \n to continue receiving \ndata
|
|
proxy1 . proxy3 #line:Blue;text:Blue : Subscribe to proxy \n to continue receiving \ndata
|
|
-Subscriber2 <- parentSub #line:Blue;text:Blue : Instantiate a \nnew Subsscriber
|
|
|
|
-parentSub <- Subscriber1 : Persists data \nreceived from \nPublisher
|
|
|
|
|
|
+Subscriber2 <-- parentSub #line:Blue;text:Blue : Instantiate a \nnew Subsscriber
|
|
|
|
+parentSub <-- Subscriber1 : Persists data \nreceived from \nPublisher
|
|
|
|
|
|
@enduml
|
|
@enduml
|