forked from Kistler-Group/sdbus-cpp
64 lines
976 B
Plaintext
64 lines
976 B
Plaintext
@startuml
|
|
|
|
package "Public API" <<frame>> #DDDDDD {
|
|
interface IConnection {
|
|
+requestName()
|
|
+enterProcessLoop()
|
|
+leaveProcessLoop()
|
|
}
|
|
|
|
interface IObject {
|
|
+registerMethod()
|
|
+emitSignal()
|
|
}
|
|
|
|
interface IProxy {
|
|
+callMethod()
|
|
+subscribeToSignal()
|
|
+get/setProperty()
|
|
}
|
|
|
|
class Message {
|
|
+serialize(...)
|
|
+deserialize(...)
|
|
+send()
|
|
Type msgType
|
|
}
|
|
}
|
|
|
|
interface IConnectionInternal {
|
|
+addObjectVTable()
|
|
+createMethodCall()
|
|
+createSignal()
|
|
}
|
|
|
|
class Connection {
|
|
}
|
|
|
|
class Object {
|
|
IConnectionInternal& connection
|
|
string objectPath
|
|
List interfaces
|
|
List methods
|
|
List signals
|
|
List properties
|
|
}
|
|
|
|
class Proxy {
|
|
IConnectionInternal& connection
|
|
string destination
|
|
string objectPath
|
|
List signalHandlers
|
|
}
|
|
|
|
IConnection <|-- Connection
|
|
IConnectionInternal <|- Connection
|
|
IObject <|-- Object
|
|
IProxy <|-- Proxy
|
|
Connection <-- Object : "use"
|
|
Connection <-- Proxy : "use"
|
|
Message <.. Object : "send/receive"
|
|
Message <.. Proxy : "send/receive"
|
|
|
|
@enduml
|