class CORL::Build

Public Class Methods

new() click to toggle source
   # File lib/core/build.rb
 8 def initialize
 9   @config    = Config.new({}, {}, true, false)
10   @locations = Config.new({}, {}, true, false)
11 
12   @plurals   = {}
13   @types     = {}
14 end

Public Instance Methods

build_lock() click to toggle source
   # File lib/core/build.rb
23 def build_lock
24   @@build_lock
25 end
config() click to toggle source
   # File lib/core/build.rb
45 def config
46   @config
47 end
import(config) click to toggle source
   # File lib/core/build.rb
49 def import(config)
50   @config.import(config)
51 end
locations() click to toggle source
   # File lib/core/build.rb
56 def locations
57   @locations
58 end
manage(plugin_type, options = {}) click to toggle source
    # File lib/core/build.rb
106 def manage(plugin_type, options = {})
107   CORL.send(plugin_type, options)
108 end
method_missing(method, *args, &code) click to toggle source
Calls superclass method
    # File lib/core/build.rb
 71 def method_missing(method, *args, &code)
 72   success = false
 73   result  = nil
 74 
 75   if method.to_s.match(/^set\_([a-z].*)$/)
 76     name = $1.to_sym
 77 
 78     if @types.has_key?(name) && args.length > 2
 79       @types[name].set([ args[0], args[1] ], args[2]) if args.length > 2
 80       success = true
 81     end
 82 
 83   elsif method.to_s.match(/^remove\_([a-z].*)$/)
 84     name = $1.to_sym
 85 
 86     if @types.has_key?(name) && args.length > 0
 87       @types[name].delete([ args[0], args[1] ])
 88       success = true
 89     end
 90 
 91   else
 92     name = @plurals[method.to_sym]
 93 
 94     if name && @types.has_key?(name)
 95       result  = @types[name]
 96       success = true
 97     end
 98   end
 99   super unless success # Raise NoMethodError
100   result
101 end
register(type, plural = nil) click to toggle source
   # File lib/core/build.rb
30 def register(type, plural = nil)
31   type = type.to_sym
32 
33   if plural
34     plural = plural.to_sym
35   else
36     plural = "#{type}s".to_sym
37   end
38   @plurals[plural] = type
39   @types[type]     = Config.new
40 end
remove_location(provider, name = nil) click to toggle source
   # File lib/core/build.rb
64 def remove_location(provider, name = nil)
65   @locations.delete([ provider, name ])
66 end
set_location(provider, name, directory) click to toggle source
   # File lib/core/build.rb
60 def set_location(provider, name, directory)
61   @locations.set([ provider, name ], directory)
62 end