Sha256: 67192590368678d3d8c5d9c85b01f1eea543827c6285595f7d3098893baf0b47
Contents?: true
Size: 1.91 KB
Versions: 3
Compression:
Stored size: 1.91 KB
Contents
require 'better_errors' require 'coffee_script' require 'sprockets' require "sprockets-sass" require 'locomotive/wagon/listen' require 'locomotive/wagon/server/middleware' require 'locomotive/wagon/server/favicon' require 'locomotive/wagon/server/dynamic_assets' require 'locomotive/wagon/server/logging' require 'locomotive/wagon/server/entry_submission' require 'locomotive/wagon/server/path' require 'locomotive/wagon/server/locale' require 'locomotive/wagon/server/page' require 'locomotive/wagon/server/templatized_page' require 'locomotive/wagon/server/not_found' require 'locomotive/wagon/server/renderer' require 'locomotive/wagon/liquid' require 'locomotive/wagon/misc' module Locomotive::Wagon class Server def initialize(reader, options = {}) Locomotive::Wagon::Dragonfly.setup!(reader.mounting_point.path) @reader = reader @app = self.create_rack_app(@reader) unless options[:disable_listen] Locomotive::Wagon::Listen.instance.start(@reader) end end def call(env) env['wagon.mounting_point'] = @reader.mounting_point @app.call(env) end protected def create_rack_app(reader) Rack::Builder.new do use BetterErrors::Middleware use Rack::Lint use Rack::Session::Cookie, { key: 'wagon.session', path: '/', expire_after: 2592000, secret: 'uselessinlocal' } use ::Dragonfly::Middleware, :images use Rack::Static, { urls: ['/images', '/fonts', '/samples'], root: File.join(reader.mounting_point.path, 'public') } use Favicon use DynamicAssets, reader.mounting_point.path use Logging use EntrySubmission use Path use Locale use Page use TemplatizedPage use NotFound use Renderer run Renderer.new end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
locomotivecms_wagon-1.2.2 | lib/locomotive/wagon/server.rb |
locomotivecms_wagon-1.2.1 | lib/locomotive/wagon/server.rb |
locomotivecms_wagon-1.2.0 | lib/locomotive/wagon/server.rb |