Module: Nonnative
- Defined in:
- lib/nonnative/http_proxy_server.rb,
lib/nonnative.rb,
lib/nonnative/pool.rb,
lib/nonnative/port.rb,
lib/nonnative/error.rb,
lib/nonnative/proxy.rb,
lib/nonnative/header.rb,
lib/nonnative/runner.rb,
lib/nonnative/server.rb,
lib/nonnative/process.rb,
lib/nonnative/service.rb,
lib/nonnative/timeout.rb,
lib/nonnative/version.rb,
lib/nonnative/no_proxy.rb,
lib/nonnative/go_command.rb,
lib/nonnative/stop_error.rb,
lib/nonnative/grpc_server.rb,
lib/nonnative/http_client.rb,
lib/nonnative/http_server.rb,
lib/nonnative/socket_pair.rb,
lib/nonnative/start_error.rb,
lib/nonnative/configuration.rb,
lib/nonnative/observability.rb,
lib/nonnative/proxy_factory.rb,
lib/nonnative/not_found_error.rb,
lib/nonnative/delay_socket_pair.rb,
lib/nonnative/configuration_proxy.rb,
lib/nonnative/socket_pair_factory.rb,
lib/nonnative/configuration_runner.rb,
lib/nonnative/configuration_server.rb,
lib/nonnative/close_all_socket_pair.rb,
lib/nonnative/configuration_process.rb,
lib/nonnative/configuration_service.rb,
lib/nonnative/fault_injection_proxy.rb,
lib/nonnative/invalid_data_socket_pair.rb
Overview
Defined Under Namespace
Classes: CloseAllSocketPair, Configuration, ConfigurationProcess, ConfigurationProxy, ConfigurationRunner, ConfigurationServer, ConfigurationService, DelaySocketPair, Error, FaultInjectionProxy, GRPCServer, GoCommand, HTTPClient, HTTPProxyApplication, HTTPProxyServer, HTTPServer, Header, InvalidDataSocketPair, NoProxy, NotFoundError, Observability, Pool, Port, Process, Proxy, ProxyFactory, Runner, Server, Service, SocketPair, SocketPairFactory, StartError, StopError, Timeout
Constant Summary
collapse
- VERSION =
'1.91.0'
Class Attribute Summary collapse
Class Method Summary
collapse
Class Attribute Details
.pool ⇒ Object
Returns the value of attribute pool.
61
62
63
|
# File 'lib/nonnative.rb', line 61
def pool
@pool
end
|
Class Method Details
.clear ⇒ Object
119
120
121
122
|
# File 'lib/nonnative.rb', line 119
def clear
@configuration = nil
@pool = nil
end
|
.configurations(*files) ⇒ Object
63
64
65
|
# File 'lib/nonnative.rb', line 63
def configurations(*files)
Config.load_files(files)
end
|
71
72
73
|
# File 'lib/nonnative.rb', line 71
def configure
yield configuration
end
|
.go_executable(tools, output, exec, cmd, *params) ⇒ Object
79
80
81
|
# File 'lib/nonnative.rb', line 79
def go_executable(tools, output, exec, cmd, *params)
Nonnative::GoCommand.new(tools, exec, output).executable(cmd, params)
end
|
.log_lines(path, predicate) ⇒ Object
75
76
77
|
# File 'lib/nonnative.rb', line 75
def log_lines(path, predicate)
File.readlines(path).select { |l| predicate.call(l) }
end
|
.observability ⇒ Object
83
84
85
|
# File 'lib/nonnative.rb', line 83
def observability
@observability ||= Nonnative::Observability.new(configuration.url)
end
|
.start ⇒ Object
95
96
97
98
99
100
101
102
103
104
105
|
# File 'lib/nonnative.rb', line 95
def start
@pool ||= Nonnative::Pool.new(configuration)
errors = []
@pool.start do |name, values, result|
id, started = values
errors << "Started #{name} with id #{id}, though did respond in time" if !started || !result
end
raise Nonnative::StartError, errors.join("\n") unless errors.empty?
end
|
.stop ⇒ Object
107
108
109
110
111
112
113
114
115
116
117
|
# File 'lib/nonnative.rb', line 107
def stop
return if @pool.nil?
errors = []
@pool.stop do |name, id, result|
errors << "Stopped #{name} with id #{id}, though did respond in time" unless result
end
raise Nonnative::StopError, errors.join("\n") unless errors.empty?
end
|