Class: Zero::Moo::Publisher
- Inherits:
-
Communicator
- Object
- Communicator
- Zero::Moo::Publisher
- Defined in:
- lib/zero/moo/publisher.rb
Direct Known Subclasses
Defined Under Namespace
Classes: BindError, Error, InvalidAddressError, MessageError, MissingAddressError, SocketOptionError, SocketShutdownError
Instance Attribute Summary collapse
-
#address ⇒ Object
readonly
Returns the value of attribute address.
Attributes inherited from Communicator
Instance Method Summary collapse
-
#initialize(**kwargs) ⇒ Publisher
constructor
Get publishing instance.
-
#push!(message) ⇒ Object
Push a message to all subscribers.
Constructor Details
#initialize(**kwargs) ⇒ Publisher
Get publishing instance.
24 25 26 27 28 29 30 31 32 |
# File 'lib/zero/moo/publisher.rb', line 24 def initialize **kwargs @address = kwargs.delete(:address) kwargs[:type] = 1 raise MissingAddressError, ":address for bind was not given" unless @address validate_address validate_port super **kwargs end |
Instance Attribute Details
#address ⇒ Object (readonly)
Returns the value of attribute address.
16 17 18 |
# File 'lib/zero/moo/publisher.rb', line 16 def address @address end |
Instance Method Details
#push!(message) ⇒ Object
Push a message to all subscribers.
37 38 39 40 41 |
# File 'lib/zero/moo/publisher.rb', line 37 def push! bind! unless socket error? socket.send_string(), raize: MessageError end |