Sha256: 6da5893b25f534a68229ef480f62eed430317bdcf87a5b133543c685b4c66839

Contents?: true

Size: 757 Bytes

Versions: 17

Compression:

Stored size: 757 Bytes

Contents

require 'bundler/setup'
require 'impression'
require 'tipi'

pages = Impression::Pages.new(File.join(__dir__, 'docs'))
app = pages.method(:serve).to_proc

opts = {
  reuse_addr:  true,
  dont_linger: true
}

puts "pid: #{Process.pid}"

Tipi.full_service do |req|
  req.route do
    if req.host != 'noteflakes.com'
      req.respond(nil, ':status' => Qeweney::Status::SERVICE_UNAVAILABLE)
      stop_routing
    end
    req.on('assets') { req.serve_file(req.route_relative_path, base_path: File.join(__dir__, '_assets')) }
    req.default { app.call(req) }
  end
rescue Exception => e
  p [req.path, e]
  # puts e.backtrace.join("\n")
  status = e.respond_to?(:http_status) ? e.http_status : 500
  req.respond(e.inspect, ':status' => status)
end
p 'done...'

Version data entries

17 entries across 17 versions & 1 rubygems

Version Path
impression-0.17 examples/markdown/app.rb
impression-0.16 examples/markdown/app.rb
impression-0.15 examples/markdown/app.rb
impression-0.14 examples/markdown/app.rb
impression-0.13 examples/markdown/app.rb
impression-0.12 examples/markdown/app.rb
impression-0.11 examples/markdown/app.rb
impression-0.10 examples/markdown/app.rb
impression-0.9 examples/markdown/app.rb
impression-0.8 examples/markdown/app.rb
impression-0.7.1 examples/markdown/app.rb
impression-0.7 examples/markdown/app.rb
impression-0.6 examples/markdown/app.rb
impression-0.5 examples/markdown/app.rb
impression-0.4 examples/markdown/app.rb
impression-0.3 examples/markdown/app.rb
impression-0.2 examples/markdown/app.rb