Author: vborja
Date: Mon Oct 20 14:32:49 2008
New Revision: 706420
URL: http://svn.apache.org/viewvc?rev=706420&view=rev
Log:
Use the clear method from rake, also restore rules.
Modified:
incubator/buildr/trunk/addon/buildr/drb.rb
Modified: incubator/buildr/trunk/addon/buildr/drb.rb
URL:
http://svn.apache.org/viewvc/incubator/buildr/trunk/addon/buildr/drb.rb?rev=706420&r1=706419&r2=706420&view=diff
==============================================================================
--- incubator/buildr/trunk/addon/buildr/drb.rb (original)
+++ incubator/buildr/trunk/addon/buildr/drb.rb Mon Oct 20 14:32:49 2008
@@ -79,14 +79,14 @@
# save the tasks,rules,layout defined by buildr
def initialize
- @projects = Project.instance_variable_get(:@projects) || {}
+ @projects = (Project.instance_variable_get(:@projects) || {}).clone
@tasks = Buildr.application.tasks.inject({}) do |hash, original|
unless projects.key? original.name # don't save project definitions
hash.update original.name => SavedTask.new(original)
end
hash
end
- @rules = Buildr.application.instance_variable_get(:@rules)
+ @rules = Buildr.application.instance_variable_get(:@rules).clone
@layout = Layout.default.clone
end
@@ -224,14 +224,14 @@
def clear_for_reload(snapshot)
Project.clear
- clear_invoked_tasks(snapshot)
- @rules = snapshot.rules.clone
+ clear_invoked_tasks(snapshot)
Layout.default = snapshot.layout.clone
end
def clear_invoked_tasks(snapshot)
- @tasks = {}
+ clear
snapshot.tasks.each_pair { |name, saved| saved.define! }
+ @rules = snapshot.rules.clone
end
namespace(:drb) { task('start') { run_server! } }