proxygen
Main Page
Related Pages
Namespaces
Classes
Files
Examples
File List
File Members
LengthFieldPrepender.h
Go to the documentation of this file.
1
/*
2
* Copyright 2017-present Facebook, Inc.
3
*
4
* Licensed under the Apache License, Version 2.0 (the "License");
5
* you may not use this file except in compliance with the License.
6
* You may obtain a copy of the License at
7
*
8
* http://www.apache.org/licenses/LICENSE-2.0
9
*
10
* Unless required by applicable law or agreed to in writing, software
11
* distributed under the License is distributed on an "AS IS" BASIS,
12
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
* See the License for the specific language governing permissions and
14
* limitations under the License.
15
*/
16
17
#pragma once
18
19
#include <
folly/io/Cursor.h
>
20
#include <
wangle/channel/Handler.h
>
21
22
namespace
wangle
{
23
50
class
LengthFieldPrepender
:
public
OutboundBytesToBytesHandler
{
51
public
:
52
explicit
LengthFieldPrepender
(
int
lengthFieldLength = 4,
53
int
lengthAdjustment = 0,
54
bool
lengthIncludesLengthField =
false
,
55
bool
networkByteOrder =
true
);
56
57
folly::Future<folly::Unit>
write
(
58
Context
* ctx,
59
std::unique_ptr<folly::IOBuf> buf)
override
;
60
61
private
:
62
int
lengthFieldLength_
;
63
int
lengthAdjustment_
;
64
bool
lengthIncludesLengthField_
;
65
bool
networkByteOrder_
;
66
};
67
68
}
// namespace wangle
wangle::LengthFieldPrepender
Definition:
LengthFieldPrepender.h:50
wangle::LengthFieldPrepender::lengthFieldLength_
int lengthFieldLength_
Definition:
LengthFieldPrepender.h:62
wangle::LengthFieldPrepender::lengthIncludesLengthField_
bool lengthIncludesLengthField_
Definition:
LengthFieldPrepender.h:64
Cursor.h
wangle
Definition:
Acceptor.cpp:49
wangle::LengthFieldPrepender::lengthAdjustment_
int lengthAdjustment_
Definition:
LengthFieldPrepender.h:63
wangle::OutboundHandlerContext< Wout >
wangle::OutboundHandler
Definition:
Handler.h:137
folly::Future
Definition:
FiberManagerInternal.h:46
wangle::LengthFieldPrepender::write
folly::Future< folly::Unit > write(Context *ctx, std::unique_ptr< folly::IOBuf > buf) override
Definition:
LengthFieldPrepender.cpp:40
Handler.h
wangle::LengthFieldPrepender::networkByteOrder_
bool networkByteOrder_
Definition:
LengthFieldPrepender.h:65
wangle::LengthFieldPrepender::LengthFieldPrepender
LengthFieldPrepender(int lengthFieldLength=4, int lengthAdjustment=0, bool lengthIncludesLengthField=false, bool networkByteOrder=true)
Definition:
LengthFieldPrepender.cpp:25
proxygen
wangle
wangle
codec
LengthFieldPrepender.h
Generated by
1.8.11