[repo] Add a publish/subscribe mechanism for inter-instance communication using zmq
Each repo can have a publishing and any number of subscribing sockets
whose addresses are specified in the instance's configuration. An
application or cube can subscribe to some 'topics', and give a callback
that gets called when a message matching that topic is received.
As a proof of concept, this introduces a hook to clean up the caches
associated with the repository when an entity is deleted.
A subscription is added using Repository::zmq::add_subscription;
the callback receives a list representing the received multi-part
message as argument (the first element of the message is its topic).
[MESSAGES CONTROL]
disable-msg = C0301
[VARIABLES]
# Enable / disable this checker
enable-variables = yes
additional-builtins = _, display_name
[BASIC]
required-attributes=
attr-rgx = (w|[a-z_][a-z0-9_]{2,30})
variable-rgx = (w|[a-z_][a-z0-9_]{2,30})$
argument-rgx = (w|[a-z_][a-z0-9_]{2,30})$
[TYPECHECK]
generated-members=debug,info,notice,warning,error,critical,exception