Module: Rex::Post::HWBridge::ObjectAliasesContainer
- Included in:
- ObjectAliases
- Defined in:
- lib/rex/post/hwbridge/object_aliases.rb
Overview
Mixin for classes that wish to have object aliases but do not really need to inherit from the ObjectAliases class.
Instance Attribute Summary collapse
-
#aliases ⇒ Object
The hash of aliases.
Instance Method Summary collapse
-
#dump_alias_tree(parent_path, current = nil) ⇒ Object
Recursively dumps all of the aliases registered with a class that is kind_of? ObjectAliases.
-
#initialize_aliases(aliases = {}) ⇒ Object
Initialize the instance’s aliases.
-
#method_missing(symbol, *args) ⇒ Object
Pass-thru aliases.
Dynamic Method Handling
This class handles dynamic methods through the method_missing method
#method_missing(symbol, *args) ⇒ Object
Pass-thru aliases.
25 26 27 |
# File 'lib/rex/post/hwbridge/object_aliases.rb', line 25 def method_missing(symbol, *args) self.aliases[symbol.to_s] end |
Instance Attribute Details
#aliases ⇒ Object
The hash of aliases.
58 59 60 |
# File 'lib/rex/post/hwbridge/object_aliases.rb', line 58 def aliases @aliases end |
Instance Method Details
#dump_alias_tree(parent_path, current = nil) ⇒ Object
Recursively dumps all of the aliases registered with a class that is kind_of? ObjectAliases.
33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 |
# File 'lib/rex/post/hwbridge/object_aliases.rb', line 33 def dump_alias_tree(parent_path, current = nil) items = [] if (current == nil) current = self end # If the current object may have object aliases... if (current.kind_of?(Rex::Post::HWBridge::ObjectAliases)) current.aliases.each_key { |x| current_path = parent_path + '.' + x items << current_path items.concat(dump_alias_tree(current_path, current.aliases[x])) } end return items end |
#initialize_aliases(aliases = {}) ⇒ Object
Initialize the instance’s aliases.
18 19 20 |
# File 'lib/rex/post/hwbridge/object_aliases.rb', line 18 def initialize_aliases(aliases = {}) self.aliases = aliases end |