summaryrefslogtreecommitdiff
path: root/protocols/ace/HTBP/HTBP_Channel.inl
blob: 7df1ba8f16e6ba8a0a7ece06cf4bf17387933c97 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
// -*- C++ -*-
//
// $Id$

ACE_BEGIN_VERSIONED_NAMESPACE_DECL

ACE_INLINE
ACE::HTBP::Session *
ACE::HTBP::Channel::session (void) const
{
  return this->session_;
}

// session assignment only occurs when the stream is transferred to another
// session. Do *not* delete the old session object.
ACE_INLINE
void
ACE::HTBP::Channel::session (ACE::HTBP::Session *s)
{
  this->session_ = s;
}

// I'm not sure of the proper use case for getting the filter reference. The
// problem is that the filter is not reference counted, so the returned value
// should not be stored.
ACE_INLINE
ACE::HTBP::Filter *
ACE::HTBP::Channel::filter (void) const
{
  return this->filter_;
}

// Filters are owned by the channel. If a new filter is applied, the old one
// must be deleted.
ACE_INLINE
void
ACE::HTBP::Channel::filter (ACE::HTBP::Filter *f)
{
  if (this->filter_)
    delete this->filter_;
  this->filter_ = f;
}

ACE_INLINE
int
ACE::HTBP::Channel::close_reader (void)
{
  return this->ace_stream_.close_reader();
}

ACE_INLINE
int
ACE::HTBP::Channel::close_writer (void)
{
  return this->ace_stream_.close_writer();
}

ACE_INLINE
int
ACE::HTBP::Channel::close (void)
{
  return this->ace_stream_.close();
}

ACE_INLINE
ACE::HTBP::Channel::State
ACE::HTBP::Channel::state (void) const
{
  return this->state_;
}

ACE_INLINE
ACE_Message_Block &
ACE::HTBP::Channel::leftovers (void)
{
  return this->leftovers_;
}

ACE_INLINE
size_t
ACE::HTBP::Channel::data_len(void) const
{
  return this->data_len_;
}

ACE_INLINE
void
ACE::HTBP::Channel::data_len(size_t n)
{
  this->data_len_ = n;
}

ACE_INLINE
size_t
ACE::HTBP::Channel::data_consumed(void) const
{
  return this->data_consumed_;
}


ACE_INLINE
const ACE_SOCK_Stream&
ACE::HTBP::Channel::ace_stream (void) const
{
  return this->ace_stream_;
}

ACE_INLINE
ACE_SOCK_Stream&
ACE::HTBP::Channel::ace_stream (void)
{
  return this->ace_stream_;
}

ACE_INLINE
void
ACE::HTBP::Channel::set_handle (ACE_HANDLE h)
{
  if (h == 0)
    return;
  this->ace_stream_.set_handle (h);
}

ACE_END_VERSIONED_NAMESPACE_DECL