Loading...
Searching...
No Matches
auto_encryption_options.hpp
Go to the documentation of this file.
// 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 <mongocxx/v1/auto_encryption_options-fwd.hpp> // IWYU pragma: export
//
#include <mongocxx/v1/detail/prelude.hpp>
#include <bsoncxx/v1/document/value-fwd.hpp>
#include <bsoncxx/v1/document/view-fwd.hpp>
#include <mongocxx/v1/client-fwd.hpp>
#include <mongocxx/v1/pool-fwd.hpp>
#include <bsoncxx/v1/stdx/optional.hpp>
#include <mongocxx/v1/config/export.hpp>
#include <string>
#include <utility>
namespace mongocxx {
namespace v1 {
class auto_encryption_options {
private:
class impl;
void* _impl;
public:
MONGOCXX_ABI_EXPORT_CDECL() ~auto_encryption_options();
MONGOCXX_ABI_EXPORT_CDECL() auto_encryption_options(auto_encryption_options&& other) noexcept;
MONGOCXX_ABI_EXPORT_CDECL(auto_encryption_options&) operator=(auto_encryption_options&& other) noexcept;
MONGOCXX_ABI_EXPORT_CDECL() auto_encryption_options(auto_encryption_options const& other);
MONGOCXX_ABI_EXPORT_CDECL(auto_encryption_options&) operator=(auto_encryption_options const& other);
MONGOCXX_ABI_EXPORT_CDECL() auto_encryption_options();
MONGOCXX_ABI_EXPORT_CDECL(auto_encryption_options&) key_vault_client(v1::client* v);
MONGOCXX_ABI_EXPORT_CDECL(v1::client*) key_vault_client() const;
MONGOCXX_ABI_EXPORT_CDECL(auto_encryption_options&) key_vault_pool(v1::pool* v);
MONGOCXX_ABI_EXPORT_CDECL(v1::pool*) key_vault_pool() const;
using ns_pair = std::pair<std::string, std::string>;
MONGOCXX_ABI_EXPORT_CDECL(auto_encryption_options&) key_vault_namespace(ns_pair v);
MONGOCXX_ABI_EXPORT_CDECL(bsoncxx::v1::stdx::optional<ns_pair>) key_vault_namespace() const;
MONGOCXX_ABI_EXPORT_CDECL(auto_encryption_options&) kms_providers(bsoncxx::v1::document::value v);
MONGOCXX_ABI_EXPORT_CDECL(bsoncxx::v1::stdx::optional<bsoncxx::v1::document::view>) kms_providers() const;
MONGOCXX_ABI_EXPORT_CDECL(auto_encryption_options&) tls_opts(bsoncxx::v1::document::value v);
MONGOCXX_ABI_EXPORT_CDECL(bsoncxx::v1::stdx::optional<bsoncxx::v1::document::view>) tls_opts() const;
MONGOCXX_ABI_EXPORT_CDECL(auto_encryption_options&) schema_map(bsoncxx::v1::document::value v);
MONGOCXX_ABI_EXPORT_CDECL(bsoncxx::v1::stdx::optional<bsoncxx::v1::document::view>) schema_map() const;
MONGOCXX_ABI_EXPORT_CDECL(auto_encryption_options&) encrypted_fields_map(bsoncxx::v1::document::value v);
MONGOCXX_ABI_EXPORT_CDECL(bsoncxx::v1::stdx::optional<bsoncxx::v1::document::view>) encrypted_fields_map() const;
MONGOCXX_ABI_EXPORT_CDECL(auto_encryption_options&) bypass_auto_encryption(bool v);
MONGOCXX_ABI_EXPORT_CDECL(bool) bypass_auto_encryption() const;
MONGOCXX_ABI_EXPORT_CDECL(auto_encryption_options&) bypass_query_analysis(bool v);
MONGOCXX_ABI_EXPORT_CDECL(bool) bypass_query_analysis() const;
MONGOCXX_ABI_EXPORT_CDECL(auto_encryption_options&) extra_options(bsoncxx::v1::document::value v);
MONGOCXX_ABI_EXPORT_CDECL(bsoncxx::v1::stdx::optional<bsoncxx::v1::document::view>) extra_options() const;
class internal;
};
} // namespace v1
} // namespace mongocxx
#include <mongocxx/v1/detail/postlude.hpp>
auto_encryption_options-fwd.hpp
Declares mongocxx::v1::auto_encryption_options.
mongocxx::v1::auto_encryption_options::bypass_query_analysis
auto_encryption_options & bypass_query_analysis(bool v)
Set the "bypassQueryAnalysis" field.
mongocxx::v1::auto_encryption_options::tls_opts
auto_encryption_options & tls_opts(bsoncxx::v1::document::value v)
Set the "tlsOptions" field.
mongocxx::v1::auto_encryption_options::auto_encryption_options
auto_encryption_options(auto_encryption_options &&other) noexcept
Move constructor.
mongocxx::v1::auto_encryption_options::encrypted_fields_map
auto_encryption_options & encrypted_fields_map(bsoncxx::v1::document::value v)
Set the "encryptedFieldsMap" field.
mongocxx::v1::auto_encryption_options::kms_providers
auto_encryption_options & kms_providers(bsoncxx::v1::document::value v)
Set the "kmsProviders" field.
mongocxx::v1::auto_encryption_options::~auto_encryption_options
~auto_encryption_options()
Destroy this object.
mongocxx::v1::auto_encryption_options::key_vault_namespace
auto_encryption_options & key_vault_namespace(ns_pair v)
Set the "keyVaultNamespace" field.
mongocxx::v1::auto_encryption_options::extra_options
auto_encryption_options & extra_options(bsoncxx::v1::document::value v)
Set the "extraOptions" field.
mongocxx::v1::auto_encryption_options::key_vault_client
auto_encryption_options & key_vault_client(v1::client *v)
Set the "keyVaultClient" field.
mongocxx::v1::auto_encryption_options::schema_map
auto_encryption_options & schema_map(bsoncxx::v1::document::value v)
Set the "schemaMap" field.
mongocxx::v1::auto_encryption_options::bypass_auto_encryption
auto_encryption_options & bypass_auto_encryption(bool v)
Set the "bypassAutoEncryption" field.
mongocxx::v1::auto_encryption_options::key_vault_pool
auto_encryption_options & key_vault_pool(v1::pool *v)
Set the "keyVaultPool" field.
mongocxx::v1::auto_encryption_options::ns_pair
std::pair< std::string, std::string > ns_pair
The name of a database and a collection.
Definition auto_encryption_options.hpp:146
mongocxx::v1::client
A connection to a MongoDB deployment.
Definition client.hpp:60
mongocxx::v1::pool
A thread-safe pool of client objects.
Definition pool.hpp:49
export.hpp
Provides macros to control the set of symbols exported in the ABI.
MONGOCXX_ABI_EXPORT_CDECL
#define MONGOCXX_ABI_EXPORT_CDECL(...)
Equivalent to MONGOCXX_ABI_EXPORT with MONGOCXX_ABI_CDECL.
Definition export.hpp:52
prelude.hpp
The mongocxx v1 macro guard prelude header.
bsoncxx
The top-level namespace within which all bsoncxx library entities are declared.
mongocxx::v1
Declares entities whose ABI stability is guaranteed for documented symbols.
mongocxx
The top-level namespace within which all mongocxx library entities are declared.
client-fwd.hpp
Declares mongocxx::v1::client.
value-fwd.hpp
Declares bsoncxx::v1::document::value.
view-fwd.hpp
Declares bsoncxx::v1::document::view.
pool-fwd.hpp
Declares mongocxx::v1::pool.
optional.hpp
Provides std::optional-related polyfills for library API usage.