1
// Copyright 2011 Google Inc.
3
// Licensed under the Apache License, Version 2.0 (the "License");
4
// you may not use this file except in compliance with the License.
5
// You may obtain a copy of the License at
7
// http://www.apache.org/licenses/LICENSE-2.0
9
// Unless required by applicable law or agreed to in writing, software
10
// distributed under the License is distributed on an "AS IS" BASIS,
11
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
// See the License for the specific language governing permissions and
13
// limitations under the License.
15
#ifndef MOD_SPDY_APACHE_APACHE_SPDY_SESSION_IO_H_
16
#define MOD_SPDY_APACHE_APACHE_SPDY_SESSION_IO_H_
20
#include "base/basictypes.h"
21
#include "mod_spdy/common/spdy_session_io.h"
24
class BufferedSpdyFramer;
30
class ApacheSpdySessionIO : public SpdySessionIO {
32
explicit ApacheSpdySessionIO(conn_rec* connection);
33
~ApacheSpdySessionIO();
35
// SpdySessionIO methods:
36
virtual bool IsConnectionAborted();
37
virtual ReadStatus ProcessAvailableInput(bool block,
38
net::BufferedSpdyFramer* framer);
39
virtual WriteStatus SendFrameRaw(const net::SpdyFrame& frame);
42
conn_rec* const connection_;
43
apr_bucket_brigade* const input_brigade_;
44
apr_bucket_brigade* const output_brigade_;
46
DISALLOW_COPY_AND_ASSIGN(ApacheSpdySessionIO);
49
} // namespace mod_spdy
51
#endif // MOD_SPDY_APACHE_APACHE_SPDY_SESSION_IO_H_