// Copyright 2009-present MongoDB, Inc. // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. #pragma once #include // IWYU pragma: export // #include #include #include #include #include namespace mongocxx { namespace v1 { namespace events { /// /// `ServerOpeningEvent` from the SDAM Logging and Monitoring specification. /// /// @see /// - [SDAM Logging and Monitoring (MongoDB Specifications)](https://specifications.readthedocs.io/en/latest/server-discovery-and-monitoring/server-discovery-and-monitoring-logging-and-monitoring/) /// class server_opening { private: void const* _impl; // mongoc_apm_server_opening_t const public: /// /// Return the hostname for the connection used by the command. /// MONGOCXX_ABI_EXPORT_CDECL(bsoncxx::v1::stdx::string_view) host() const; /// /// Return the port number for the connection used by the command. /// MONGOCXX_ABI_EXPORT_CDECL(std::uint16_t) port() const; /// /// Return the client-generated unique topology ID. /// MONGOCXX_ABI_EXPORT_CDECL(bsoncxx::v1::oid) topology_id() const; class internal; private: /* explicit(false) */ server_opening(void const* impl); }; } // namespace events } // namespace v1 } // namespace mongocxx #include /// @file /// Provides @ref mongocxx::v1::events::server_opening. ///