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.



30
31
32
33
34
# File 'lib/falcon/controller/redirect.rb', line 30

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

Instance Method Details

#endpointObject



44
45
46
47
48
# File 'lib/falcon/controller/redirect.rb', line 44

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

#load_appObject



36
37
38
# File 'lib/falcon/controller/redirect.rb', line 36

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

#nameObject



40
41
42
# File 'lib/falcon/controller/redirect.rb', line 40

def name
	"Falcon Redirect Server"
end

#startObject



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

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