Sha256: 1e7272425541b44e80e6cec069a1a5014a9514bc4e53d60f51a4a5bd83cc82bd
Contents?: true
Size: 1.66 KB
Versions: 3
Compression:
Stored size: 1.66 KB
Contents
module Stylish module Developer class Environment def self.start options={}, &block reloader = new(options) yield(reloader) if block_given? reloader.start() Spawnling.wait(reloader.spawns) end attr_reader :spawns, :options, :logger def start @spawns = [] @spawns << Spawnling.new { start_library_server() } @spawns << Spawnling.new { start_watcher_service() } #@spawns << Spawnling.new { start_push_service() } end protected attr_accessor :options def initialize(options={}) @options = options @logger = options[:logger] @logger ||= Logger.new(STDOUT) if options[:library_root] Stylish::Developer.config.library_root = Pathname(options[:library_root]) end puts "Starting at #{ root }" end def root options[:root] || Stylish::Developer::Server.root || Dir.pwd() end def puts val @logger && @logger.info(val) end def on_file_change *args #modified, added, removed = args #puts(args.inspect) end def start_library_server Rack::Server.start(:app => Stylish::Developer::Server, :Port => "8090") end def start_watcher_service reload = self begin @watcher = Listen.to(root) {|*args| puts args; reload.send(:on_file_change, *args) } @watcher.start() sleep rescue => e puts e.message end end def start_push_service 10.times do |n| puts("push #{n}") sleep 1 end end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
stylish-0.3.1 | lib/stylish/developer/environment.rb |
stylish-0.3.0 | lib/stylish/developer/environment.rb |
stylish-0.0.2 | lib/stylish/developer/environment.rb |