config/assembly.rb in alki-reload-0.1.0 vs config/assembly.rb in alki-reload-0.2.0
- old
+ new
@@ -1,12 +1,20 @@
Alki do
func :reload do
root.assembly_instance.__reload__
end
- set :watch, false
+ set :enable, false
+ set :main_loops do
+ enable
+ end
+
+ set :watch do
+ enable
+ end
+
set :dirs do
['lib']
end
set :whitelist do
@@ -17,16 +25,29 @@
handlers.inject([]) do |dirs,h|
dirs.push *h.dirs
end
end
+ reference_overlay '%main_loop', :reloadable_reference
+
+ factory :reloadable_reference do
+ require 'alki/reload/reloadable_delegator'
+ -> (ref) {
+ if main_loops
+ Alki::Reload::ReloadableDelegator.new(root.assembly_instance,ref)
+ else
+ ref.call
+ end
+ }
+ end
+
service :handlers do
- [dsl_handler,load_path_handler]
+ [loader_handler,load_path_handler]
end
- service :dsl_handler do
- require 'alki/reload/dsl_handler'
- Alki::Reload::DslHandler.new root_dir
+ service :loader_handler do
+ require 'alki/reload/loader_handler'
+ Alki::Reload::LoaderHandler.new root_dir
end
service :load_path_handler do
require 'alki/reload/load_path_handler'
Alki::Reload::LoadPathHandler.new root_dir, dirs