| 
					
				 | 
			
			
				@@ -1,13 +1,13 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 @startuml OfflineTranmission 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 header Message OfflineTranmission 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-' left to bottom direction 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+left to right direction 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 skinparam actorStyle awesome 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 skinparam usecase { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     BackgroundColor<< Publisher >> Pink 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     BorderColor<< Publisher >> Red 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    BackgroundColor<< Subscriber >> Pink 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    BorderColor<< Subscriber >> Red 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    BackgroundColor<< Subscriber >> YellowGreen 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    BorderColor<< Subscriber >> Green 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 package PublisherSite { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -21,22 +21,23 @@ package SubscriberSite { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     () "Proxy" as proxy2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     () "Proxy" as proxy3 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     (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 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-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 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-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 
			 |