Hub
The IMB hub handles communication within the platform and uses a publish-subscribe mechanism. All data flows through the hub. All connected clients publish events to topics and can subscribe to topics through the hub. The events represent a particular change in data. Clients that subscribe to particular events receive these events and then independently determine what actions to perform. In IMB there is no 'memory' in the event system. The only exception is in case of a temporary loss of connectivity events will be cached in the hub and sent on re-connect.
-
The hub is the central element in the communication between all clients: services, calculation models, tools, user interfaces etc.
-
The hub only knows events (asynchronous) and requests (synchronous).
-
All data is in ProtoBuf format, even the underlying communication protocol.