aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--doc/src/manual/gun.info.asciidoc29
-rw-r--r--src/gun.erl8
2 files changed, 22 insertions, 15 deletions
diff --git a/doc/src/manual/gun.info.asciidoc b/doc/src/manual/gun.info.asciidoc
index fe81e0e..6a0ffe7 100644
--- a/doc/src/manual/gun.info.asciidoc
+++ b/doc/src/manual/gun.info.asciidoc
@@ -12,18 +12,20 @@ info(ConnPid) -> Info
ConnPid :: pid()
Info :: #{
- owner => pid(),
- socket => inet:socket() | ssl:sslsocket(),
- transport => tcp | tls,
- protocol => http | http2 | socks | ws,
- sock_ip => inet:ip_address(),
- sock_port => inet:port_number(),
- origin_scheme => binary() | undefined,
- origin_host => inet:hostname() | inet:ip_address(),
- origin_port => inet:port_number(),
- intermediaries => [Intermediary],
- cookie_store => gun_cookies:cookie_store(),
- state_name => atom()
+ owner => pid(),
+ socket => inet:socket() | ssl:sslsocket(),
+ transport => tcp | tls,
+ protocol => http | http2 | socks | ws,
+ state_name => atom(),
+ sock_ip => inet:ip_address(),
+ sock_port => inet:port_number(),
+ origin_scheme => binary() | undefined,
+ origin_host => inet:hostname() | inet:ip_address(),
+ origin_port => inet:port_number(),
+ intermediaries => [Intermediary],
+ cookie_store => gun_cookies:cookie_store(),
+ event_handler => module(),
+ event_handler_state => any()
}
Intermediary :: #{
type => connect | socks5,
@@ -49,7 +51,8 @@ the connection.
== Changelog
-* *2.2*: The value `state_name` was added.
+* *2.2*: The values `event_handler`, `event_handler_state` and
+ `state_name` were added.
* *2.0*: The values `owner`, `origin_scheme` and `cookie_store` were
added.
* *1.3*: The values `socket`, `transport`, `protocol`, `origin_host`,
diff --git a/src/gun.erl b/src/gun.erl
index 3fd5529..ac02230 100644
--- a/src/gun.erl
+++ b/src/gun.erl
@@ -512,7 +512,9 @@ info(ServerPid) ->
origin_host=OriginHost,
origin_port=OriginPort,
intermediaries=Intermediaries,
- cookie_store=CookieStore
+ cookie_store=CookieStore,
+ event_handler=EventHandler,
+ event_handler_state=EventHandlerState
}} = sys:get_state(ServerPid),
Info0 = #{
owner => Owner,
@@ -522,6 +524,7 @@ info(ServerPid) ->
<<"http">> -> tcp;
<<"https">> -> tls
end,
+ state_name => CurrentStateName,
origin_scheme => case Protocol of
gun_raw -> undefined;
gun_socks -> undefined;
@@ -531,7 +534,8 @@ info(ServerPid) ->
origin_port => OriginPort,
intermediaries => intermediaries_info(Intermediaries, []),
cookie_store => CookieStore,
- state_name => CurrentStateName
+ event_handler => EventHandler,
+ event_handler_state => EventHandlerState
},
Info = case Socket of
undefined ->