Class: AMF::ClassMapping::MappingSet
- Inherits:
-
Object
- Object
- AMF::ClassMapping::MappingSet
- Defined in:
- lib/amf/class_mapping.rb
Instance Attribute Summary collapse
-
#default_as_prefix ⇒ Object
Returns the value of attribute default_as_prefix.
Instance Method Summary collapse
-
#get_as_class_name(class_name) ⇒ Object
Returns the AS class name for the given ruby class name, returing nil if not found.
-
#get_ruby_class_name(class_name) ⇒ Object
Returns the ruby class name for the given AS class name, returing nil if not found.
-
#initialize ⇒ MappingSet
constructor
:nodoc:.
-
#map(params) ⇒ Object
Map a given AS class to a ruby class.
Constructor Details
#initialize ⇒ MappingSet
:nodoc:
6 7 8 9 10 11 12 13 14 15 16 17 18 |
# File 'lib/amf/class_mapping.rb', line 6 def initialize #:nodoc: @as_mappings = {} @ruby_mappings = {} @default_as_prefix = "" # Map defaults map :as => 'flex.messaging.messages.AbstractMessage', :ruby => 'AMF::Messages::AbstractMessage' map :as => 'flex.messaging.messages.RemotingMessage', :ruby => 'AMF::Messages::RemotingMessage' map :as => 'flex.messaging.messages.AsyncMessage', :ruby => 'AMF::Messages::AsyncMessage' map :as => 'flex.messaging.messages.CommandMessage', :ruby => 'AMF::Messages::CommandMessage' map :as => 'flex.messaging.messages.AcknowledgeMessage', :ruby => 'AMF::Messages::AcknowledgeMessage' map :as => 'flex.messaging.messages.ErrorMessage', :ruby => 'AMF::Messages::ErrorMessage' end |
Instance Attribute Details
#default_as_prefix ⇒ Object
Returns the value of attribute default_as_prefix.
4 5 6 |
# File 'lib/amf/class_mapping.rb', line 4 def default_as_prefix @default_as_prefix end |
Instance Method Details
#get_as_class_name(class_name) ⇒ Object
Returns the AS class name for the given ruby class name, returing nil if not found
35 36 37 38 39 40 |
# File 'lib/amf/class_mapping.rb', line 35 def get_as_class_name(class_name) #:nodoc: unless as_class_name = @ruby_mappings[class_name.to_s] as_class_name = "#{@default_as_prefix}#{class_name}" end as_class_name end |
#get_ruby_class_name(class_name) ⇒ Object
Returns the ruby class name for the given AS class name, returing nil if not found
44 45 46 47 48 49 |
# File 'lib/amf/class_mapping.rb', line 44 def get_ruby_class_name(class_name) #:nodoc: unless ruby_class_name = @as_mappings[class_name.to_s] ruby_class_name = class_name.sub(default_as_prefix, "") end ruby_class_name end |
#map(params) ⇒ Object
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'
27 28 29 30 31 |
# File 'lib/amf/class_mapping.rb', line 27 def map(params) [:as, :ruby].each {|k| params[k] = params[k].to_s} # Convert params to strings @as_mappings[params[:as]] = params[:ruby] @ruby_mappings[params[:ruby]] = params[:as] end |