 // @formatter:off
 // @startuml
 // autonumber
 // title Creating Services
 // participant SinkHandler order 5
 // participant PollingSourceHandler order 10
 // participant StreamingSourceHandler order 15
 // participant Publisher order 20
 // participant Application order 25
 // participant Framework order 30
 // participant Diffusion order 35
 // Application -> Framework: initialize
 // Framework -> Application: getSharedConfigTypes
 // Framework -> Application: getServiceTypes
 // Application -> Framework: connect
 // Framework -> Diffusion: Connect/register
 // Framework -> Application : start
 // Framework -> Application: Add streaming source
 // Application -> StreamingSourceHandler: creates
 // Framework -> StreamingSourceHandler: start
 // loop until stopped
 // StreamingSourceHandler -> Publisher: publish update
 // Publisher -> Diffusion: update topic
 // end
 // Framework -> Application: Add polling source
 // Application -> PollingSourceHandler: creates
 // Framework -> PollingSourceHandler: start
 // loop periodically until stopped
 // Framework -> PollingSourceHandler: poll
 // PollingSourceHandler -> Publisher: publish update(s)
 // Publisher -> Diffusion: update topic
 // end
 // Framework -> Application: Add sink
 // Application -> SinkHandler: creates
 // Framework -> SinkHandler: start
 // Framework -> Diffusion : subscribes to topic
 // loop until stopped
 // Diffusion -> Framework: publish update
 // Framework -> SinkHandler: update
 // end
 // Diffusion -> Framework: close application
 // Framework -> StreamingSourceHandler: stop
 // Framework -> PollingSourceHandler: stop
 // Framework -> SinkHandler: stop
 // Framework -> Application : stop
 // @enduml
 //
 // See also https://manuscript.pushtechnology.com/f/page?W1085
 //
 // @formatter:on