Class: Aggro::Message::Command
- Inherits:
-
Struct
- Object
- Struct
- Aggro::Message::Command
- Defined in:
- lib/aggro/message/command.rb
Overview
Public: Command message.
Constant Summary collapse
- TYPE_CODE =
'03'.freeze
Instance Attribute Summary collapse
-
#commandee_id ⇒ Object
Returns the value of attribute commandee_id.
-
#details ⇒ Object
Returns the value of attribute details.
-
#sender ⇒ Object
Returns the value of attribute sender.
Class Method Summary collapse
Instance Method Summary collapse
Instance Attribute Details
#commandee_id ⇒ Object
Returns the value of attribute commandee_id
4 5 6 |
# File 'lib/aggro/message/command.rb', line 4 def commandee_id @commandee_id end |
#details ⇒ Object
Returns the value of attribute details
4 5 6 |
# File 'lib/aggro/message/command.rb', line 4 def details @details end |
#sender ⇒ Object
Returns the value of attribute sender
4 5 6 |
# File 'lib/aggro/message/command.rb', line 4 def sender @sender end |
Class Method Details
.parse(string) ⇒ Object
7 8 9 |
# File 'lib/aggro/message/command.rb', line 7 def self.parse(string) new string[2..37], string[38..73], parse_details(string[74..-1]) end |
.parse_details(details) ⇒ Object
11 12 13 |
# File 'lib/aggro/message/command.rb', line 11 def self.parse_details(details) Marshal.load details end |
Instance Method Details
#args ⇒ Object
15 16 17 |
# File 'lib/aggro/message/command.rb', line 15 def args details[:args] end |
#command_class ⇒ Object
19 20 21 |
# File 'lib/aggro/message/command.rb', line 19 def command_class ActiveSupport::Inflector.safe_constantize name end |
#name ⇒ Object
23 24 25 |
# File 'lib/aggro/message/command.rb', line 23 def name details[:name] end |
#to_command ⇒ Object
27 28 29 |
# File 'lib/aggro/message/command.rb', line 27 def to_command command_class.new args if command_class end |
#to_s ⇒ Object
31 32 33 |
# File 'lib/aggro/message/command.rb', line 31 def to_s "#{TYPE_CODE}#{sender}#{commandee_id}#{Marshal.dump details}" end |