JiveXML::ServerThreadArguments_t Node1 JiveXML::ServerThreadArguments_t + PortNumber + CleanUpHandler + ServerThreadArguments_t() Node2 JiveXML::IServer + ~IServer() + ServerThreadStopped() Node2->Node1 +ServerPtr Node3 JiveXML::IEventServer + ~IEventServer() * GetStreamNames() * GetEventStreamID() * GetEvent() * GetState() * GetRunServerFlag() Node3->Node2 Node4 JiveXML::IEventReceiver + ~IEventReceiver() * UpdateEventForStream() Node4->Node2 Node5 JiveXML::IMessage + ~IMessage() * Message() * LogLevel() Node5->Node2