Class Index [+]

Quicksearch

Merb::BootLoader::ReloadClasses

Public Class Methods

build_paths() click to toggle source

Returns a list of the paths on the merb application stack

Returns

nil

:api: private

      # File lib/merb-core/bootloader.rb, line 1436
1436:   def self.build_paths
1437:     paths = []
1438:     Merb.load_paths.each do |path_name, file_info|
1439:       path, glob = file_info
1440:       next unless glob
1441:       paths << Dir[path / glob]
1442:     end
1443: 
1444:     if Merb.dir_for(:application) && File.file?(Merb.dir_for(:application))
1445:       paths << Merb.dir_for(:application)
1446:     end
1447: 
1448:     paths.flatten!
1449: 
1450:     return paths
1451:   end
reload(paths = []) click to toggle source

Reloads all files which have been modified since they were last loaded.

Returns

nil

:api: private

      # File lib/merb-core/bootloader.rb, line 1419
1419:   def self.reload(paths = [])
1420:     paths.each do |file|
1421:       next if LoadClasses::MTIMES[file] &&
1422:         LoadClasses::MTIMES[file] == File.mtime(file)
1423: 
1424:       LoadClasses.reload(file)
1425:     end
1426: 
1427:     nil
1428:   end
reload!() click to toggle source

Reloads all the files on the Merb application path

Returns

nil

:api: private

      # File lib/merb-core/bootloader.rb, line 1409
1409:   def self.reload!
1410:     reload(build_paths)
1411:   end
run() click to toggle source

Set up the class reloader if class reloading is enabled. This checks periodically for modifications to files loaded by the LoadClasses BootLoader and reloads them when they are modified.

Returns

nil

:api: plugin

      # File lib/merb-core/bootloader.rb, line 1392
1392:   def self.run
1393:     return unless Merb::Config[:reload_classes]
1394: 
1395:     TimedExecutor.every(Merb::Config[:reload_time] || 0.5) do
1396:       GC.start
1397:       reload!
1398:     end
1399: 
1400:     nil
1401:   end

Disabled; run with --debug to generate this.

[Validate]

Generated with the Darkfish Rdoc Generator 1.1.6.