Class: Encom::ServerTransport::Base
- Inherits:
-
Object
- Object
- Encom::ServerTransport::Base
- Defined in:
- lib/encom/server_transport/base.rb
Direct Known Subclasses
Instance Attribute Summary collapse
-
#server ⇒ Object
readonly
Returns the value of attribute server.
Instance Method Summary collapse
-
#debug(message) ⇒ Object
Log debug information if debug is enabled.
-
#initialize(server, options = {}) ⇒ Base
constructor
A new instance of Base.
-
#process_message(message) ⇒ Object
Process an incoming message - default implementation delegates to server.
-
#send_message(message) ⇒ Object
Send a message through the transport - must be implemented by subclasses.
-
#start ⇒ Object
Start the transport - must be implemented by subclasses.
-
#stop ⇒ Object
Stop the transport - must be implemented by subclasses.
Constructor Details
#initialize(server, options = {}) ⇒ Base
Returns a new instance of Base.
8 9 10 11 12 |
# File 'lib/encom/server_transport/base.rb', line 8 def initialize(server, = {}) @server = server @options = @debug = [:debug] || false end |
Instance Attribute Details
#server ⇒ Object (readonly)
Returns the value of attribute server.
6 7 8 |
# File 'lib/encom/server_transport/base.rb', line 6 def server @server end |
Instance Method Details
#debug(message) ⇒ Object
Log debug information if debug is enabled
35 36 37 38 39 |
# File 'lib/encom/server_transport/base.rb', line 35 def debug() return unless @debug warn "[Encom::ServerTransport] #{}" end |
#process_message(message) ⇒ Object
Process an incoming message - default implementation delegates to server
30 31 32 |
# File 'lib/encom/server_transport/base.rb', line 30 def () @server.() end |
#send_message(message) ⇒ Object
Send a message through the transport - must be implemented by subclasses
25 26 27 |
# File 'lib/encom/server_transport/base.rb', line 25 def () raise NotImplementedError, 'Subclasses must implement #send_message' end |
#start ⇒ Object
Start the transport - must be implemented by subclasses
15 16 17 |
# File 'lib/encom/server_transport/base.rb', line 15 def start raise NotImplementedError, 'Subclasses must implement #start' end |
#stop ⇒ Object
Stop the transport - must be implemented by subclasses
20 21 22 |
# File 'lib/encom/server_transport/base.rb', line 20 def stop raise NotImplementedError, 'Subclasses must implement #stop' end |