Provided by: libmessage-passing-zeromq-perl_0.010-3_all bug

NAME

       Message::Passing::ZeroMQ::Role::HasASocket - Role for instances which have a ZeroMQ
       socket.

ATTRIBUTES

   socket_bind
       Bind a server to an address.

       For example "tcp://*:5222" to make a server listening on a port on all of the host's
       addresses, or "tcp://127.0.0.1:5222" to bind the socket to a specific IP on the host.

   connect
       Connect to a server. For example "tcp://127.0.0.1:5222".

       This option is mutually exclusive with socket_bind, as sockets can connect in one
       direction only.

   socket_type
       The connection direction can be either the same as, or the opposite of the message flow
       direction.

       The currently supported socket types are:

       PUB

       This socket publishes messages to zero or more subscribers.

       All subscribers get a copy of each message.

       SUB

       The pair of PUB, receives broadcast messages.

       PUSH

       This socket type distributes messages in a round-robin fashion between subscribers.
       Therefore N subscribers will see 1/N of the message flow.

   PULL
       The pair of PUSH, receives a proportion of messages distributed.

   linger
       Integer indicating the value of the ZMQ_LINGER options.

       Defaults to 0 meaning sockets will not block on shutdown if a server is unavailable (i.e.
       queued messages will be discarded).

       socket_hwm

       Set the High Water Mark for the socket. Depending on the socket type, messages are likely
       to be discarded once this high water mark is exceeded (i.e. there are more than this many
       messages buffered).

       A value of 0 disables the high water mark, meaning that messages will be buffered until
       RAM runs out.

       socket_builder

       A code reference returning a new ZeroMQ::Socket instance within a new ZeroMQ::Context
       every time it is called.

       If a value this attribute is provided, responsibility for building sockets is solely the
       callback's responsibility. None of the other attributes usually involved in creating
       sockets, such as "socket_type", "linger", or "socket_hmw" will be taken into account
       automatically.

       If a socket builder callback needs to make use of the aforementioned attributes, it will
       have to do so manually by looking at the object implementing
       "Message::Passing::ZeroMQ::Role::HasASocket", which is going to be passed to the callback
       as the first argument upon invocation.

       The second and final argument passed to the callback with be a newly ZeroMQ::Context that
       the new socket is expected to be created in.

METHODS

   setsockopt
       For wrapping by sub-classes to set options after the socket is created.

SPONSORSHIP

       This module exists due to the wonderful people at Suretec Systems Ltd.
       <http://www.suretecsystems.com/> who sponsored its development for its VoIP division
       called SureVoIP <http://www.surevoip.co.uk/> for use with the SureVoIP API -
       <http://www.surevoip.co.uk/support/wiki/api_documentation>

AUTHOR, COPYRIGHT AND LICENSE

       See Message::Passing::ZeroMQ.

perl v5.32.1                                2021-1Message::Passing::ZeroMQ::Role::HasASocket(3pm)