removing non-existing file from the build
[folly.git] / folly / wangle / acceptor / ManagedConnection.cpp
1 /*
2  * Copyright 2015 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 #include <folly/wangle/acceptor/ManagedConnection.h>
18
19 #include <folly/wangle/acceptor/ConnectionManager.h>
20
21 namespace folly { namespace wangle {
22
23 ManagedConnection::ManagedConnection()
24   : connectionManager_(nullptr) {
25 }
26
27 ManagedConnection::~ManagedConnection() {
28   if (connectionManager_) {
29     connectionManager_->removeConnection(this);
30   }
31 }
32
33 void
34 ManagedConnection::resetTimeout() {
35   if (connectionManager_) {
36     resetTimeoutTo(connectionManager_->getDefaultTimeout());
37   }
38 }
39
40 void
41 ManagedConnection::resetTimeoutTo(std::chrono::milliseconds timeout) {
42   if (connectionManager_) {
43     connectionManager_->scheduleTimeout(this, timeout);
44   }
45 }
46
47 void
48 ManagedConnection::scheduleTimeout(
49   folly::HHWheelTimer::Callback* callback,
50     std::chrono::milliseconds timeout) {
51   if (connectionManager_) {
52     connectionManager_->scheduleTimeout(callback, timeout);
53   }
54 }
55
56 ////////////////////// Globals /////////////////////
57
58 std::ostream&
59 operator<<(std::ostream& os, const ManagedConnection& conn) {
60   conn.describe(os);
61   return os;
62 }
63
64 }} // folly::wangle