module Rexpro::Message::Base::ClassMethods
Attributes
type[R]
Public Instance Methods
define_fields(hsh)
click to toggle source
# File lib/rexpro/message.rb, line 92 def define_fields(hsh) hsh.each do |name, method| fields << name field_methods[name] = method attr_accessor(name) end end
define_meta_fields(*names)
click to toggle source
# File lib/rexpro/message.rb, line 100 def define_meta_fields(*names) names.each do |name| # RexPro uses mixedCase keys in meta name_parts = name.to_s.split('_') name_parts[1..-1].each(&:capitalize!) rexpro_name = name_parts.join define_method(name) { meta[rexpro_name] } define_method("#{name}=") { |value| meta[rexpro_name] = value } end end
field_methods()
click to toggle source
# File lib/rexpro/message.rb, line 88 def field_methods @field_methods ||= {} end
fields()
click to toggle source
# File lib/rexpro/message.rb, line 84 def fields @fields ||= [] end
type=(type)
click to toggle source
# File lib/rexpro/message.rb, line 79 def type=(type) @type = type Message.types[type] = self end