#include <ProxyClientSession.h>
Inherits VConnection.
Inherited by Http2ClientSession, and HttpClientSession.
Public Member Functions | |
ProxyClientSession () | |
virtual void | destroy ()=0 |
virtual void | start ()=0 |
virtual void | new_connection (NetVConnection *new_vc, MIOBuffer *iobuf, IOBufferReader *reader, bool backdoor)=0 |
virtual void | ssn_hook_append (TSHttpHookID id, INKContInternal *cont) |
virtual void | ssn_hook_prepend (TSHttpHookID id, INKContInternal *cont) |
APIHook * | ssn_hook_get (TSHttpHookID id) const |
void * | get_user_arg (unsigned ix) const |
void | set_user_arg (unsigned ix, void *arg) |
bool | debug () const |
bool | hooks_enabled () const |
bool | has_hooks () const |
void | do_api_callout (TSHttpHookID id) |
void | cleanup () |
Static Public Member Functions | |
static int64_t | next_connection_id () |
Protected Attributes | |
bool | debug_on |
bool | hooks_on |
Friends | |
void | TSHttpSsnDebugSet (TSHttpSsn, int) |
Set the session specific debugging flag for this client session. |
Definition at line 36 of file ProxyClientSession.h.
ProxyClientSession::ProxyClientSession | ( | ) |
Definition at line 30 of file ProxyClientSession.cc.
void ProxyClientSession::cleanup | ( | void | ) |
Definition at line 69 of file ProxyClientSession.cc.
References Ptr< T >::clear(), FeatureAPIHooks< ID, N >::clear(), and Continuation::mutex.
Referenced by HttpClientSession::destroy(), and Http2ClientSession::destroy().
bool ProxyClientSession::debug | ( | ) | const [inline] |
Definition at line 69 of file ProxyClientSession.h.
References debug_on.
Referenced by HttpSM::attach_client_session().
virtual void ProxyClientSession::destroy | ( | ) | [pure virtual] |
Implemented in HttpClientSession, and Http2ClientSession.
void ProxyClientSession::do_api_callout | ( | TSHttpHookID | id | ) |
Definition at line 135 of file ProxyClientSession.cc.
References EVENT_NONE, has_hooks(), hooks_on, ink_assert, SET_HANDLER, TS_EVENT_HTTP_CONTINUE, TS_HTTP_SSN_CLOSE_HOOK, and TS_HTTP_SSN_START_HOOK.
Referenced by HttpClientSession::do_io_close(), Http2ClientSession::do_io_close(), HttpClientSession::new_connection(), and Http2ClientSession::new_connection().
void* ProxyClientSession::get_user_arg | ( | unsigned | ix | ) | const [inline] |
Definition at line 58 of file ProxyClientSession.h.
References countof, and ink_assert.
Referenced by TSHttpSsnArgGet().
bool ProxyClientSession::has_hooks | ( | ) | const [inline] |
Definition at line 77 of file ProxyClientSession.h.
References FeatureAPIHooks< ID, N >::has_hooks(), and http_global_hooks.
Referenced by HttpSM::attach_client_session(), and do_api_callout().
bool ProxyClientSession::hooks_enabled | ( | ) | const [inline] |
Definition at line 73 of file ProxyClientSession.h.
References hooks_on.
Referenced by HttpSM::attach_client_session().
virtual void ProxyClientSession::new_connection | ( | NetVConnection * | new_vc, | |
MIOBuffer * | iobuf, | |||
IOBufferReader * | reader, | |||
bool | backdoor | |||
) | [pure virtual] |
Implemented in HttpClientSession, and Http2ClientSession.
int64_t ProxyClientSession::next_connection_id | ( | ) | [static] |
Definition at line 37 of file ProxyClientSession.cc.
References next_cs_id.
Referenced by HttpClientSession::new_connection(), and Http2ClientSession::new_connection().
void ProxyClientSession::set_user_arg | ( | unsigned | ix, | |
void * | arg | |||
) | [inline] |
Definition at line 63 of file ProxyClientSession.h.
References countof, and ink_assert.
Referenced by TSHttpSsnArgSet().
virtual void ProxyClientSession::ssn_hook_append | ( | TSHttpHookID | id, | |
INKContInternal * | cont | |||
) | [inline, virtual] |
Reimplemented in HttpClientSession.
Definition at line 46 of file ProxyClientSession.h.
References FeatureAPIHooks< ID, N >::prepend().
APIHook* ProxyClientSession::ssn_hook_get | ( | TSHttpHookID | id | ) | const [inline] |
Definition at line 54 of file ProxyClientSession.h.
References FeatureAPIHooks< ID, N >::get().
Referenced by HttpSM::state_api_callout().
virtual void ProxyClientSession::ssn_hook_prepend | ( | TSHttpHookID | id, | |
INKContInternal * | cont | |||
) | [inline, virtual] |
Reimplemented in HttpClientSession.
Definition at line 50 of file ProxyClientSession.h.
References FeatureAPIHooks< ID, N >::prepend().
virtual void ProxyClientSession::start | ( | ) | [pure virtual] |
Implemented in HttpClientSession, and Http2ClientSession.
void TSHttpSsnDebugSet | ( | TSHttpSsn | ssnp, | |
int | on | |||
) | [friend] |
Set the session specific debugging flag for this client session.
When turned on, internal debug messages related to this session and all transactions in the session will be written even if the debug tag isn't on.
ssnp | Client session to change. | |
on | set to 1 to turn on, 0 to turn off. |
bool ProxyClientSession::debug_on [protected] |
Definition at line 94 of file ProxyClientSession.h.
Referenced by debug().
bool ProxyClientSession::hooks_on [protected] |
Definition at line 95 of file ProxyClientSession.h.
Referenced by do_api_callout(), hooks_enabled(), and HttpClientSession::new_connection().