Stroika Library 3.0d18
 
Loading...
Searching...
No Matches
MongoDBClient.inl
1/*
2 * Copyright(c) Sophist Solutions, Inc. 1990-2025. All rights reserved
3 */
4
6
7namespace Stroika::Foundation::Database::Document::MongoDBClient {
8
9#if qStroika_HasComponent_mongocxxdriver
10 /*
11 ********************************************************************************
12 **************** Document::MongoDBClient::AdminConnection::Ptr *****************
13 ********************************************************************************
14 */
15 inline AdminConnection::Ptr::Ptr (const shared_ptr<IRep>& src) noexcept
16 : inherited{src}
17 {
18 }
19 inline Document AdminConnection::Ptr::run_command (const Document& v)
20 {
21 return get ()->run_command (v);
22 }
23 inline mongocxx::client& AdminConnection::Ptr::GetClientRef ()
24 {
25 return get ()->GetClientRef ();
26 }
27 inline Set<String> AdminConnection::Ptr::GetDatabases ()
28 {
29 return get ()->GetDatabases ();
30 }
31 inline void AdminConnection::Ptr::DropDatabase (const String& dbName)
32 {
33 get ()->DropDatabase (dbName);
34 }
35 inline void AdminConnection::Ptr::CreateDatabase (const String& dbName)
36 {
37 get ()->CreateDatabase (dbName);
38 }
39
40 /*
41 ********************************************************************************
42 ******************* Document::MongoDBClient::Connection::Ptr *******************
43 ********************************************************************************
44 */
45 inline Connection::Ptr::Ptr (const Ptr& src)
46 : Ptr{Debug::UncheckedDynamicPointerCast<IRep> (src)}
47 {
48 }
49 inline Connection::Ptr& Connection::Ptr::operator= (const Ptr& src)
50 {
51 inherited::operator= (src);
52 return *this;
53 }
54 inline Connection::Ptr& Connection::Ptr::operator= (Ptr&& src) noexcept
55 {
56 inherited::operator= (move (src));
57 return *this;
58 }
59 inline Connection::IRep* Connection::Ptr::operator->() const noexcept
60 {
61 return Debug::UncheckedDynamicPointerCast<IRep> (*this).get ();
62 }
63#endif
64
65}
std::shared_ptr< T > UncheckedDynamicPointerCast(const std::shared_ptr< T1 > &arg) noexcept
Produce the same result as dynamic_pointer_cast if the successful case (non-null) - with better perfo...
Definition Cast.inl:42
Mapping< String, VariantValue > Document
Definition Document.h:28