Class: ESM::Websocket::ServerRequest
- Inherits:
-
Object
- Object
- ESM::Websocket::ServerRequest
- Defined in:
- lib/esm/websocket/server_request.rb
Constant Summary collapse
- ALLOWLISTED_SERVER_COMMANDS =
%w[ server_initialization xm8_notification discord_log discord_message_channel ].freeze
Instance Method Summary collapse
-
#initialize(connection:, message:) ⇒ ServerRequest
constructor
A new instance of ServerRequest.
-
#invalid? ⇒ Boolean
These are normally empty responses message.returned is legacy.
- #process ⇒ Object
-
#remove_on_ignore? ⇒ Boolean
Checks if the request should be removed on the first ignore.
-
#remove_request ⇒ Object
Removes the request from the queue if present.
Constructor Details
#initialize(connection:, message:) ⇒ ServerRequest
Returns a new instance of ServerRequest.
13 14 15 16 17 18 |
# File 'lib/esm/websocket/server_request.rb', line 13 def initialize(connection:, message:) @connection = connection @message = @request = @connection.requests[.commandID] @request.on_reply(connection) if @request.present? end |
Instance Method Details
#invalid? ⇒ Boolean
These are normally empty responses message.returned is legacy
22 23 24 |
# File 'lib/esm/websocket/server_request.rb', line 22 def invalid? @message.ignore || @message.returned end |
#process ⇒ Object
31 32 33 34 35 36 37 |
# File 'lib/esm/websocket/server_request.rb', line 31 def process if @request.present? process_command_response else process_server_command end end |
#remove_on_ignore? ⇒ Boolean
Checks if the request should be removed on the first ignore
27 28 29 |
# File 'lib/esm/websocket/server_request.rb', line 27 def remove_on_ignore? @request ? @request.remove_on_ignore : false end |
#remove_request ⇒ Object
Removes the request from the queue if present
40 41 42 |
# File 'lib/esm/websocket/server_request.rb', line 40 def remove_request @connection.remove_request(@message.commandID) if @request end |