class RubySol::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/ruby_sol/class_mapping.rb
21 def initialize
22   @as_mappings = {}
23   @ruby_mappings = {}
24   map_defaults
25 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/ruby_sol/class_mapping.rb
49 def map params
50   [:as, :ruby].each {|k| params[k] = params[k].to_s} # Convert params to strings
51   @as_mappings[params[:as]] = params[:ruby]
52   @ruby_mappings[params[:ruby]] = params[:as]
53 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/ruby_sol/class_mapping.rb
29     def map_defaults
30 #      map :as => 'flex.messaging.messages.AbstractMessage', :ruby => 'RubySol::Values::AbstractMessage'
31 #      map :as => 'flex.messaging.messages.RemotingMessage', :ruby => 'RubySol::Values::RemotingMessage'
32 #      map :as => 'flex.messaging.messages.AsyncMessage', :ruby => 'RubySol::Values::AsyncMessage'
33 #      map :as => 'DSA', :ruby => 'RubySol::Values::AsyncMessageExt'
34 #      map :as => 'flex.messaging.messages.CommandMessage', :ruby => 'RubySol::Values::CommandMessage'
35 #      map :as => 'DSC', :ruby => 'RubySol::Values::CommandMessageExt'
36 #      map :as => 'flex.messaging.messages.AcknowledgeMessage', :ruby => 'RubySol::Values::AcknowledgeMessage'
37 #      map :as => 'DSK', :ruby => 'RubySol::Values::AcknowledgeMessageExt'
38 #      map :as => 'flex.messaging.messages.ErrorMessage', :ruby => 'RubySol::Values::ErrorMessage'
39       self
40     end