Class: Cbt::Component
- Inherits:
-
Object
- Object
- Cbt::Component
- Defined in:
- lib/cbt/component.rb
Instance Attribute Summary collapse
-
#assets ⇒ Object
Returns the value of attribute assets.
-
#modules ⇒ Object
Returns the value of attribute modules.
-
#name ⇒ Object
Returns the value of attribute name.
Instance Method Summary collapse
-
#dir(base_dir) ⇒ Object
where the module/asset files are located.
-
#initialize(name, conf) ⇒ Component
constructor
A new instance of Component.
- #tag ⇒ Object
-
#ws_dir(base_dir, platform) ⇒ Object
target working space directory.
Constructor Details
#initialize(name, conf) ⇒ Component
Returns a new instance of Component.
56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 |
# File 'lib/cbt/component.rb', line 56 def initialize name, conf @name, @conf = name, conf # if no modules defined, use the name as default @conf["lua_modules"] = Array.new unless @conf["lua_modules"] @conf["lua_modules"] << @name if @conf["lua_modules"].size == 0 @conf["assets"] = Array.new unless @conf["assets"] # parse module definitions, convert to objects @modules, @assets = {}, {} # name => object pair @conf["lua_modules"].each do |lname| raise "invalid lua module name '#{lname}'" unless /^[a-zA-Z][\<a-zA-Z_0-9]+$/.match(lname) @modules[lname] = LuaModule.new(@name, lname) end @conf["assets"].each do |asset| @assets[asset] = AssetFile.new(@name, asset) end end |
Instance Attribute Details
#assets ⇒ Object
Returns the value of attribute assets.
54 55 56 |
# File 'lib/cbt/component.rb', line 54 def assets @assets end |
#modules ⇒ Object
Returns the value of attribute modules.
54 55 56 |
# File 'lib/cbt/component.rb', line 54 def modules @modules end |
#name ⇒ Object
Returns the value of attribute name.
54 55 56 |
# File 'lib/cbt/component.rb', line 54 def name @name end |
Instance Method Details
#dir(base_dir) ⇒ Object
where the module/asset files are located
82 83 84 |
# File 'lib/cbt/component.rb', line 82 def dir base_dir File.join(base_dir, @name).gsub(/\/$/, '') end |
#tag ⇒ Object
77 78 79 |
# File 'lib/cbt/component.rb', line 77 def tag @conf["tag"] end |
#ws_dir(base_dir, platform) ⇒ Object
target working space directory
87 88 89 |
# File 'lib/cbt/component.rb', line 87 def ws_dir base_dir, platform File.join(base_dir, @name + '_' + platform).gsub(/\/$/, '') end |