Class: Baykit::BayServer::Docker::Http::HtpWarpDocker
- Inherits:
-
Base::WarpBase
- Object
- Base::WarpBase
- Baykit::BayServer::Docker::Http::HtpWarpDocker
- Defined in:
- lib/baykit/bayserver/docker/http/htp_warp_docker.rb
Constant Summary
Constants included from HtpDocker
Baykit::BayServer::Docker::Http::HtpDocker::H1_PROTO_NAME, Baykit::BayServer::Docker::Http::HtpDocker::H2_PROTO_NAME
Instance Attribute Summary collapse
-
#secure ⇒ Object
readonly
Implements WarpDocker.
-
#ssl_ctx ⇒ Object
readonly
Returns the value of attribute ssl_ctx.
-
#support_h2 ⇒ Object
readonly
Returns the value of attribute support_h2.
-
#trace_ssl ⇒ Object
readonly
Returns the value of attribute trace_ssl.
Instance Method Summary collapse
-
#init(elm, parent) ⇒ Object
Implements Docker.
-
#init_key_val(kv) ⇒ Object
Implements DockerBase.
-
#initialize ⇒ HtpWarpDocker
constructor
A new instance of HtpWarpDocker.
- #new_transporter(agt, rd, sip) ⇒ Object
-
#protocol ⇒ Object
Implements WarpDockerBase.
Constructor Details
#initialize ⇒ HtpWarpDocker
Returns a new instance of HtpWarpDocker.
29 30 31 32 33 34 35 |
# File 'lib/baykit/bayserver/docker/http/htp_warp_docker.rb', line 29 def initialize super @secure = false @support_h2 = true @ssl_ctx = nil @trace_ssl = false end |
Instance Attribute Details
#secure ⇒ Object (readonly)
Implements WarpDocker
80 81 82 |
# File 'lib/baykit/bayserver/docker/http/htp_warp_docker.rb', line 80 def secure @secure end |
#ssl_ctx ⇒ Object (readonly)
Returns the value of attribute ssl_ctx.
26 27 28 |
# File 'lib/baykit/bayserver/docker/http/htp_warp_docker.rb', line 26 def ssl_ctx @ssl_ctx end |
#support_h2 ⇒ Object (readonly)
Returns the value of attribute support_h2.
25 26 27 |
# File 'lib/baykit/bayserver/docker/http/htp_warp_docker.rb', line 25 def support_h2 @support_h2 end |
#trace_ssl ⇒ Object (readonly)
Returns the value of attribute trace_ssl.
27 28 29 |
# File 'lib/baykit/bayserver/docker/http/htp_warp_docker.rb', line 27 def trace_ssl @trace_ssl end |
Instance Method Details
#init(elm, parent) ⇒ Object
Implements Docker
41 42 43 44 45 46 47 48 49 50 51 52 53 |
# File 'lib/baykit/bayserver/docker/http/htp_warp_docker.rb', line 41 def init(elm, parent) super if @secure begin @ssl_ctx = SSL::SSLContext.new rescue => e BayLog.error_e(e) raise ConfigException.new(elm.file_name, elm.line_no, BayMessage.get(:CFG_SSL_INIT_ERROR, e)) end end end |
#init_key_val(kv) ⇒ Object
Implements DockerBase
59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 |
# File 'lib/baykit/bayserver/docker/http/htp_warp_docker.rb', line 59 def init_key_val(kv) case kv.key.downcase when "supporth2" @support_h2 = StringUtil.(kv.value) when "tracessl" @trace_ssl = StringUtil.parse_bool(kv.value) when "secure" @secure = StringUtil.parse_bool(kv.value) else return super end return true; end |
#new_transporter(agt, rd, sip) ⇒ Object
92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 |
# File 'lib/baykit/bayserver/docker/http/htp_warp_docker.rb', line 92 def new_transporter(agt, rd, sip) if @secure tp = SecureTransporter.new( agt.net_multiplexer, sip, false, false, IOUtil.get_sock_recv_buf_size(rd.io), @trace_ssl, @ssl_ctx) else tp = PlainTransporter.new( agt.net_multiplexer, sip, false, IOUtil.get_sock_recv_buf_size(rd.io), false) end tp.init return tp end |
#protocol ⇒ Object
Implements WarpDockerBase
88 89 90 |
# File 'lib/baykit/bayserver/docker/http/htp_warp_docker.rb', line 88 def protocol() return H1_PROTO_NAME end |