class RocketAMF::MappingSet
Container for all mapped classes
Public Class Methods
new()
click to toggle source
Creates a mapping set object and populates the default mappings
# File lib/rocketamf/mapping/mapping_set.rb 12 def initialize 13 @as_mappings = {} 14 @ruby_mappings = {} 15 map_defaults 16 end
Public Instance Methods
map(params)
click to toggle source
Map a given AS class to a ruby class.
Use fully qualified names for both.
Example:
m.map as: 'com.example.Date', ruby: 'Example::Date'
# File lib/rocketamf/mapping/mapping_set.rb 42 def map(params) 43 [:as, :ruby].each { |k| params[k] = params[k].to_s } # Convert params to strings 44 @as_mappings[params[:as]] = params[:ruby] 45 @ruby_mappings[params[:ruby]] = params[:as] 46 end
map_defaults()
click to toggle source
Adds required mapping configs, calling map for the required base mappings. Designed to allow extenders to take advantage of required default mappings.
# File lib/rocketamf/mapping/mapping_set.rb 21 def map_defaults 22 map as: 'flex.messaging.messages.AbstractMessage', ruby: 'RocketAMF::Types::AbstractMessage' 23 map as: 'flex.messaging.messages.RemotingMessage', ruby: 'RocketAMF::Types::RemotingMessage' 24 map as: 'flex.messaging.messages.AsyncMessage', ruby: 'RocketAMF::Types::AsyncMessage' 25 map as: 'DSA', ruby: 'RocketAMF::Types::AsyncMessageExt' 26 map as: 'flex.messaging.messages.CommandMessage', ruby: 'RocketAMF::Types::CommandMessage' 27 map as: 'DSC', ruby: 'RocketAMF::Types::CommandMessageExt' 28 map as: 'flex.messaging.messages.AcknowledgeMessage', ruby: 'RocketAMF::Types::AcknowledgeMessage' 29 map as: 'DSK', ruby: 'RocketAMF::Types::AcknowledgeMessageExt' 30 map as: 'flex.messaging.messages.ErrorMessage', ruby: 'RocketAMF::Types::ErrorMessage' 31 self 32 end