Class: Prepare
- Inherits:
-
Object
- Object
- Prepare
- Defined in:
- lib/aml/Prepare.rb
Instance Method Summary collapse
- #add_file(file, type, bundle = false, partial = false) ⇒ Object
- #add_watch(file, type, bundle = false) ⇒ Object
- #cluster ⇒ Object
-
#initialize(file) ⇒ Prepare
constructor
A new instance of Prepare.
- #log ⇒ Object
- #process ⇒ Object
- #watch ⇒ Object
Constructor Details
#initialize(file) ⇒ Prepare
Returns a new instance of Prepare.
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
# File 'lib/aml/Prepare.rb', line 3 def initialize(file) @log = [] @cluster = false @file = [] @watch = [] # Load Core Bundle path = File.join(File.dirname(File.(__FILE__)),'core') add_file(File.join(path,'mixin.aml'),'mixin', 'core') add_watch(File.join(path,'method.rb'), 'method', 'core') # Load Local Bundles bundles = Definition.new(file, false) bundles.self[:hash].reject{|k|k[:bundle] == false or k[:bundle] == nil}.each do |bundle| if @file.select{|k|k[:bundle] == bundle[:bundle]}.count == 0 path = File.join(File.dirname(file), bundle[:bundle]) add_file(File.join(path,'mixin.aml'), 'mixin', bundle[:bundle]) add_watch(File.join(path,'method.rb'), 'method', bundle[:bundle]) # Load Only Required Partials bundles.self[:hash].reject{|k|k[:bundle] != bundle[:bundle]}.reject{|k|k[:type] != :partial}.each do |partial| add_file(File.join(path,'partial',partial[:name]+'.aml'), 'partial', bundle[:bundle], bundle[:name]) end end end # Load Local File Mixin & Method path = File.join(File.dirname(file)) add_file(File.join(path,'mixin.aml'), 'mixin') add_watch(File.join(path,'method.rb'), 'method') # Load Only Requird Local Partials bundles.self[:hash].select{|k|k[:type] == :partial and k[:bundle] == false}.each do |bundle| add_file(File.join(path,'partial',bundle[:name]+'.aml'), 'partial', bundle[:bundle], bundle[:name]) end # Load Local File add_file(file,'base') @watch.concat(@file) process end |
Instance Method Details
#add_file(file, type, bundle = false, partial = false) ⇒ Object
39 40 41 |
# File 'lib/aml/Prepare.rb', line 39 def add_file(file, type, bundle=false, partial=false) @file << {:file=>file, :type=> type, :bundle=>bundle, :partial=>partial} end |
#add_watch(file, type, bundle = false) ⇒ Object
42 43 44 |
# File 'lib/aml/Prepare.rb', line 42 def add_watch(file, type, bundle=false) @watch << {:file=>file, :bundle=>bundle} end |
#cluster ⇒ Object
53 54 55 |
# File 'lib/aml/Prepare.rb', line 53 def cluster @cluster end |
#log ⇒ Object
50 51 52 |
# File 'lib/aml/Prepare.rb', line 50 def log @log end |
#process ⇒ Object
45 46 47 48 49 |
# File 'lib/aml/Prepare.rb', line 45 def process @cluster = Cluster.new(@file) @cluster.process @log = cluster.log end |
#watch ⇒ Object
56 57 58 |
# File 'lib/aml/Prepare.rb', line 56 def watch @watch end |