#include "SpdyClientSession.h"
#include "I_Net.h"
Go to the source code of this file.
Functions | |
static int | spdy_process_read (TSEvent event, SpdyClientSession *sm) |
static int | spdy_process_write (TSEvent event, SpdyClientSession *sm) |
static int | spdy_process_fetch (TSEvent event, SpdyClientSession *sm, void *edata) |
static int | spdy_process_fetch_header (TSEvent event, SpdyClientSession *sm, TSFetchSM fetch_sm) |
static int | spdy_process_fetch_body (TSEvent event, SpdyClientSession *sm, TSFetchSM fetch_sm) |
void | spdy_cs_create (NetVConnection *netvc, spdy::SessionVersion vers, MIOBuffer *iobuf, IOBufferReader *reader) |
static ssize_t | spdy_read_fetch_body_callback (spdylay_session *, int32_t stream_id, uint8_t *buf, size_t length, int *eof, spdylay_data_source *source, void *user_data) |
Variables | |
static ClassAllocator < SpdyClientSession > | spdyClientSessionAllocator ("spdyClientSessionAllocator") |
ClassAllocator< SpdyRequest > | spdyRequestAllocator ("spdyRequestAllocator") |
static uint64_t | g_sm_id = 1 |
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Definition in file SpdyClientSession.cc.
void spdy_cs_create | ( | NetVConnection * | netvc, | |
spdy::SessionVersion | vers, | |||
MIOBuffer * | iobuf, | |||
IOBufferReader * | reader | |||
) |
Definition at line 179 of file SpdyClientSession.cc.
References ET_NET, eventProcessor, SpdyClientSession::init(), SpdyClientSession::req_buffer, SpdyClientSession::req_reader, SpdyClientSession::resp_buffer, SpdyClientSession::resp_reader, EventProcessor::schedule_imm(), spdyClientSessionAllocator, TSIOBufferCreate(), and TSIOBufferReaderAlloc().
Referenced by SpdySessionAccept::accept().
static int spdy_process_fetch | ( | TSEvent | event, | |
SpdyClientSession * | sm, | |||
void * | edata | |||
) | [static] |
Definition at line 313 of file SpdyClientSession.cc.
References Debug, Error, SpdyRequest::fetch_body_completed, SpdyRequest::fetch_sm, SpdyClientSession::sm_id, spdy_prepare_status_response_and_clean_request(), spdy_process_fetch_body(), spdy_process_fetch_header(), SpdyRequest::start_time, STATUS_500, SpdyRequest::stream_id, TS_FETCH_EVENT_EXT_BODY_DONE, TS_FETCH_EVENT_EXT_BODY_READY, TS_FETCH_EVENT_EXT_HEAD_DONE, TSFetchUserDataGet(), and SpdyRequest::url.
static int spdy_process_fetch_body | ( | TSEvent | event, | |
SpdyClientSession * | sm, | |||
TSFetchSM | fetch_sm | |||
) | [static] |
Definition at line 441 of file SpdyClientSession.cc.
References Debug, SpdyRequest::event, SpdyRequest::has_submitted_data, SpdyRequest::need_resume_data, SpdyClientSession::session, SpdyRequest::stream_id, TSFetchUserDataGet(), TSVIOReenable(), and SpdyClientSession::write_vio.
Referenced by spdy_process_fetch().
static int spdy_process_fetch_header | ( | TSEvent | event, | |
SpdyClientSession * | sm, | |||
TSFetchSM | fetch_sm | |||
) | [static] |
Definition at line 360 of file SpdyClientSession.cc.
References Debug, Error, SpdyNV::nv, SpdyClientSession::session, SpdyClientSession::sm_id, SpdyRequest::start_time, SpdyRequest::stream_id, TSFetchUserDataGet(), TSVIOReenable(), SpdyRequest::url, and SpdyClientSession::write_vio.
Referenced by spdy_process_fetch().
static int spdy_process_read | ( | TSEvent | event, | |
SpdyClientSession * | sm | |||
) | [static] |
Definition at line 283 of file SpdyClientSession.cc.
References SpdyClientSession::session.
static int spdy_process_write | ( | TSEvent | event, | |
SpdyClientSession * | sm | |||
) | [static] |
Definition at line 289 of file SpdyClientSession.cc.
References Debug, SpdyClientSession::read_vio, SpdyClientSession::resp_reader, SpdyClientSession::session, SpdyClientSession::sm_id, SpdyClientSession::total_size, TSIOBufferReaderAvail(), TSVIONDoneGet(), TSVIOReenable(), and SpdyClientSession::write_vio.
static ssize_t spdy_read_fetch_body_callback | ( | spdylay_session * | , | |
int32_t | stream_id, | |||
uint8_t * | buf, | |||
size_t | length, | |||
int * | eof, | |||
spdylay_data_source * | source, | |||
void * | user_data | |||
) | [static] |
Definition at line 381 of file SpdyClientSession.cc.
References SpdyClientSession::cleanup_request(), Debug, SpdyRequest::event, SpdyRequest::fetch_data_len, SpdyRequest::fetch_sm, SpdyClientSession::find_request(), is_debug_tag_set, Continuation::mutex, SpdyRequest::need_resume_data, SpdyRequest::recv_md5, SpdyClientSession::sm_id, SPDY_STAT_TOTAL_TRANSACTIONS_TIME, SPDY_SUM_THREAD_DYN_STAT, SpdyRequest::start_time, SpdyRequest::stream_id, TS_FETCH_EVENT_EXT_BODY_DONE, TS_HRTIME_MSECOND, TSFetchReadData(), TShrtime(), TSVIOReenable(), SpdyRequest::url, and SpdyClientSession::write_vio.
uint64_t g_sm_id = 1 [static] |
Definition at line 51 of file SpdyClientSession.cc.
Referenced by SpdyClientSession::init().
ClassAllocator<SpdyClientSession> spdyClientSessionAllocator("spdyClientSessionAllocator") [static] |
Referenced by spdy_cs_create().
ClassAllocator<SpdyRequest> spdyRequestAllocator("spdyRequestAllocator") |
Referenced by SpdyClientSession::clear(), and spdy_on_ctrl_recv_callback().