| // Copyright 2019 The Fuchsia Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #include "low_energy_connection_server.h" |
| |
| namespace bthost { |
| |
| LowEnergyConnectionServer::LowEnergyConnectionServer(bt::gap::LowEnergyConnectionRefPtr connection, |
| zx::channel handle) |
| : ServerBase(this, std::move(handle)), conn_(std::move(connection)) { |
| ZX_DEBUG_ASSERT(conn_); |
| |
| set_error_handler([this](zx_status_t) { OnClosed(); }); |
| conn_->set_closed_callback(fit::bind_member(this, &LowEnergyConnectionServer::OnClosed)); |
| } |
| |
| void LowEnergyConnectionServer::OnClosed() { |
| auto f = std::move(closed_handler_); |
| if (f) { |
| f(); |
| } |
| } |
| |
| } // namespace bthost |