Class: Benoit::Server

Inherits:
Rack::Server
  • Object
show all
Defined in:
lib/benoit/server.rb,
lib/benoit/server/remote.rb

Defined Under Namespace

Classes: Remote

Constant Summary collapse

DEFAULT_APP =
proc { [404, { "Content-Type" => "text/plain" }, ["not found"]] }

Instance Method Summary collapse

Constructor Details

#initialize(project, options = {}) ⇒ Server

Returns a new instance of Server.



12
13
14
15
# File 'lib/benoit/server.rb', line 12

def initialize(project, options={})
  @project = project
  super options
end

Instance Method Details

#appObject



17
18
19
20
21
22
23
24
25
26
27
# File 'lib/benoit/server.rb', line 17

def app
  project = @project.project
  Rack::Builder.new do
    use Rack::ShowExceptions
    use CustomExceptionHandler
    map "/_remote" do
      run Benoit::Server::Remote.new(project)
    end
    run Rake::Pipeline::Middleware.new DEFAULT_APP, project
  end.to_app
end