Class: Falcon::Controller::Redirect

Inherits:
Serve
  • Object
show all
Defined in:
lib/falcon/controller/redirect.rb

Instance Method Summary collapse

Methods inherited from Serve

#create_container, #setup, #stop

Constructor Details

#initialize(command, **options) ⇒ Redirect

Returns a new instance of Redirect.



32
33
34
35
36
# File 'lib/falcon/controller/redirect.rb', line 32

def initialize(command, **options)
  super(command, **options)
  
  @hosts = {}
end

Instance Method Details

#endpointObject



46
47
48
49
50
# File 'lib/falcon/controller/redirect.rb', line 46

def endpoint
  @command.endpoint.with(
    reuse_address: true,
  )
end

#load_appObject



38
39
40
# File 'lib/falcon/controller/redirect.rb', line 38

def load_app
  return Middleware::Redirect.new(Middleware::NotFound, @hosts, @command.redirect_endpoint)
end

#nameObject



42
43
44
# File 'lib/falcon/controller/redirect.rb', line 42

def name
  "Falcon Redirect Server"
end

#startObject



52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
# File 'lib/falcon/controller/redirect.rb', line 52

def start
  configuration = @command.configuration
  
  services = Services.new(configuration)
  
  @hosts = {}
  
  services.each do |service|
    if service.is_a?(Service::Proxy)
      @hosts[service.authority] = service
    end
  end
  
  super
end