diff --git a/src/mongocxx/include/mongocxx/docs/v1.hpp b/src/mongocxx/include/mongocxx/docs/v1.hpp index 56c1b74f7c..6639949ca2 100644 --- a/src/mongocxx/include/mongocxx/docs/v1.hpp +++ b/src/mongocxx/include/mongocxx/docs/v1.hpp @@ -40,7 +40,27 @@ /// @warning For internal use only! /// +/// +/// @dir mongocxx/v1/events +/// Provide headers related to APM events. +/// + +/// +/// @dir mongocxx/v1/gridfs +/// Provide headers related to GridFS. +/// + /// /// @namespace mongocxx::v1 /// Declares entities whose ABI stability is guaranteed for documented symbols. /// + +/// +/// @namespace mongocxx::v1::gridfs +/// @copydoc mongocxx::gridfs +/// + +/// +/// @namespace mongocxx::v1::events +/// @copydoc mongocxx::events +/// diff --git a/src/mongocxx/include/mongocxx/v1/aggregate_options-fwd.hpp b/src/mongocxx/include/mongocxx/v1/aggregate_options-fwd.hpp new file mode 100644 index 0000000000..022ae8f1c3 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/aggregate_options-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class aggregate_options; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::aggregate_options. +/// diff --git a/src/mongocxx/include/mongocxx/v1/aggregate_options.hpp b/src/mongocxx/include/mongocxx/v1/aggregate_options.hpp new file mode 100644 index 0000000000..8e3b5f5cf3 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/aggregate_options.hpp @@ -0,0 +1,44 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// Options for an "aggregate" command. +/// +/// @see +/// - [`aggregate` (database command) (MongoDB Manual)](https://www.mongodb.com/docs/manual/aggregation/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class aggregate_options {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::aggregate_options. +/// diff --git a/src/mongocxx/include/mongocxx/v1/apm-fwd.hpp b/src/mongocxx/include/mongocxx/v1/apm-fwd.hpp new file mode 100644 index 0000000000..21fc0bf291 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/apm-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class apm; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::apm. +/// diff --git a/src/mongocxx/include/mongocxx/v1/apm.hpp b/src/mongocxx/include/mongocxx/v1/apm.hpp new file mode 100644 index 0000000000..f8cb6da874 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/apm.hpp @@ -0,0 +1,44 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// Options related to Application Performance Monitoring (APM) configuration. +/// +/// @see +/// - [Application Performance Monitoring (mongoc)](https://mongoc.org/libmongoc/current/application-performance-monitoring.html) +/// - [Command Logging and Monitoring (MongoDB Specifications)](https://specifications.readthedocs.io/en/latest/command-logging-and-monitoring/command-logging-and-monitoring/) +/// - [SDAM Logging and Monitoring Specification (MongoDB Specifications)](https://specifications.readthedocs.io/en/latest/server-discovery-and-monitoring/server-discovery-and-monitoring-logging-and-monitoring/) +/// +class apm {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::apm. +/// diff --git a/src/mongocxx/include/mongocxx/v1/auto_encryption-fwd.hpp b/src/mongocxx/include/mongocxx/v1/auto_encryption-fwd.hpp new file mode 100644 index 0000000000..6da52d1c07 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/auto_encryption-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class auto_encryption; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::auto_encryption. +/// diff --git a/src/mongocxx/include/mongocxx/v1/auto_encryption.hpp b/src/mongocxx/include/mongocxx/v1/auto_encryption.hpp new file mode 100644 index 0000000000..a1c41a55b6 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/auto_encryption.hpp @@ -0,0 +1,43 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// Options related In-Use Encryption configuration. +/// +/// @see +/// - [MongoClient Options for Queryable Encryption (MongoDB Manual)](https://www.mongodb.com/docs/manual/core/queryable-encryption/reference/qe-options-clients/) +/// - [MongoClient Options for CSFLE](https://www.mongodb.com/docs/manual/core/csfle/reference/csfle-options-clients/) +/// +class auto_encryption {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::auto_encryption. +/// diff --git a/src/mongocxx/include/mongocxx/v1/bulk_write-fwd.hpp b/src/mongocxx/include/mongocxx/v1/bulk_write-fwd.hpp new file mode 100644 index 0000000000..d3bde23825 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/bulk_write-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class bulk_write; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares entities related to bulk write operations. +/// diff --git a/src/mongocxx/include/mongocxx/v1/bulk_write.hpp b/src/mongocxx/include/mongocxx/v1/bulk_write.hpp new file mode 100644 index 0000000000..c08e249fec --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/bulk_write.hpp @@ -0,0 +1,138 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +/// +/// A list of bulk write operations. +/// +/// @see +/// - [Bulk Write Operations (MongoDB Manual)](https://www.mongodb.com/docs/manual/core/bulk-write-operations/) +/// - [Update Methods (MongoDB Manual)](https://www.mongodb.com/docs/manual/reference/update-methods/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class bulk_write { + public: + /// + /// Enumeration identifying the type of a write operation. + /// + enum class type {}; + + /// + /// A single "Insert One" write operation. + /// + /// @see + /// - [Bulk Write Operations (MongoDB Manual)](https://www.mongodb.com/docs/manual/core/bulk-write-operations/) + /// + /// @attention This feature is experimental! It is not ready for use! + /// + class insert_one {}; + + /// + /// A single "Update One" write operation. + /// + /// @see + /// - [Bulk Write Operations (MongoDB Manual)](https://www.mongodb.com/docs/manual/core/bulk-write-operations/) + /// + /// @attention This feature is experimental! It is not ready for use! + /// + class update_one {}; + + /// + /// A single "Update Many" write operation. + /// + /// @see + /// - [Bulk Write Operations (MongoDB Manual)](https://www.mongodb.com/docs/manual/core/bulk-write-operations/) + /// + /// @attention This feature is experimental! It is not ready for use! + /// + class update_many {}; + + /// + /// A single "Replace One" write operation. + /// + /// @see + /// - [Bulk Write Operations (MongoDB Manual)](https://www.mongodb.com/docs/manual/core/bulk-write-operations/) + /// + /// @attention This feature is experimental! It is not ready for use! + /// + class replace_one {}; + + /// + /// A single "Delete One" write operation. + /// + /// @see + /// - [Bulk Write Operations (MongoDB Manual)](https://www.mongodb.com/docs/manual/core/bulk-write-operations/) + /// + /// @attention This feature is experimental! It is not ready for use! + /// + class delete_one {}; + + /// + /// A single "Delete Many" write operation. + /// + /// @see + /// - [Bulk Write Operations (MongoDB Manual)](https://www.mongodb.com/docs/manual/core/bulk-write-operations/) + /// + /// @attention This feature is experimental! It is not ready for use! + /// + class delete_many {}; + + /// + /// A single write operation. + /// + /// @see + /// - [Bulk Write Operations (MongoDB Manual)](https://www.mongodb.com/docs/manual/core/bulk-write-operations/) + /// - [Update Methods (MongoDB Manual)](https://www.mongodb.com/docs/manual/reference/update-methods/) + /// + /// @attention This feature is experimental! It is not ready for use! + /// + class single {}; + + /// + /// Options for a write operation. + /// + /// @see + /// - [Bulk Write Operations (MongoDB Manual)](https://www.mongodb.com/docs/manual/core/bulk-write-operations/) + /// - [Update Methods (MongoDB Manual)](https://www.mongodb.com/docs/manual/reference/update-methods/) + /// + /// @attention This feature is experimental! It is not ready for use! + /// + class options {}; + + /// + /// The result of a write operation. + /// + /// @see + /// - [Bulk Write Operations (MongoDB Manual)](https://www.mongodb.com/docs/manual/core/bulk-write-operations/) + /// - [Update Methods (MongoDB Manual)](https://www.mongodb.com/docs/manual/reference/update-methods/) + /// + /// @attention This feature is experimental! It is not ready for use! + /// + class result {}; +}; + +} // namespace v1 +} // namespace mongocxx + +/// +/// @file +/// Provides entities related to write operations. +/// diff --git a/src/mongocxx/include/mongocxx/v1/change_stream-fwd.hpp b/src/mongocxx/include/mongocxx/v1/change_stream-fwd.hpp new file mode 100644 index 0000000000..6578b59eb7 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/change_stream-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class change_stream; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::change_stream. +/// diff --git a/src/mongocxx/include/mongocxx/v1/change_stream.hpp b/src/mongocxx/include/mongocxx/v1/change_stream.hpp new file mode 100644 index 0000000000..87ae2c7b0d --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/change_stream.hpp @@ -0,0 +1,49 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// A MongoDB change stream. +/// +/// @see +/// - [Change Streams (MongoDB Manual)](https://www.mongodb.com/docs/manual/changeStreams/) +/// +class change_stream { + /// + /// Options for @ref mongocxx::v1::change_stream. + /// + /// @attention This feature is experimental! It is not ready for use! + /// + class options {}; +}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::change_stream. +/// diff --git a/src/mongocxx/include/mongocxx/v1/client-fwd.hpp b/src/mongocxx/include/mongocxx/v1/client-fwd.hpp new file mode 100644 index 0000000000..f92942ecbf --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/client-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class client; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::client. +/// diff --git a/src/mongocxx/include/mongocxx/v1/client.hpp b/src/mongocxx/include/mongocxx/v1/client.hpp new file mode 100644 index 0000000000..964eca92fe --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/client.hpp @@ -0,0 +1,54 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// A connection to a MongoDB deployment. +/// +/// @important This interface does NOT fully conform to the CMAP specification! +/// +/// @see +/// - [Connection Monitoring and Pooling (MongoDB Specifications)](https://specifications.readthedocs.io/en/latest/connection-monitoring-and-pooling/connection-monitoring-and-pooling/) +/// - [Connection Strings (MongoDB Manual)](https://www.mongodb.com/docs/manual/reference/connection-string/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class client { + /// + /// Options for @ref mongocxx::v1::client. + /// + /// @attention This feature is experimental! It is not ready for use! + /// + class options {}; +}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::client. +/// diff --git a/src/mongocxx/include/mongocxx/v1/client_encryption-fwd.hpp b/src/mongocxx/include/mongocxx/v1/client_encryption-fwd.hpp new file mode 100644 index 0000000000..577ebfd4a9 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/client_encryption-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class client_encryption; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::client_encryption. +/// diff --git a/src/mongocxx/include/mongocxx/v1/client_encryption.hpp b/src/mongocxx/include/mongocxx/v1/client_encryption.hpp new file mode 100644 index 0000000000..f071fb854f --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/client_encryption.hpp @@ -0,0 +1,55 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// Support for MongoDB In-Use Encryption. +/// +/// Provides interfaces to support both Queryable Encryption and Client-Side Field Level Encryption (CSFLE). +/// +/// @see +/// - [In-Use Encryption (MongoDB Manual)](https://www.mongodb.com/docs/manual/core/csfle/) +/// - [Queryable Encryption](https://www.mongodb.com/docs/manual/core/queryable-encryption/) +/// - [CSFLE](https://www.mongodb.com/docs/manual/core/csfle/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class client_encryption { + /// + /// Options for @ref mongocxx::v1::client_encryption. + /// + /// @attention This feature is experimental! It is not ready for use! + /// + class options {}; +}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::client_encryption. +/// diff --git a/src/mongocxx/include/mongocxx/v1/client_session-fwd.hpp b/src/mongocxx/include/mongocxx/v1/client_session-fwd.hpp new file mode 100644 index 0000000000..7ef3f48605 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/client_session-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class client_session; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::client_session. +/// diff --git a/src/mongocxx/include/mongocxx/v1/client_session.hpp b/src/mongocxx/include/mongocxx/v1/client_session.hpp new file mode 100644 index 0000000000..6ce2a1439f --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/client_session.hpp @@ -0,0 +1,52 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// A MongoDB client session. +/// +/// @see +/// - [Read Isolation, Consistency, and Recency (MongoDB Manual)](https://www.mongodb.com/docs/manual/core/read-isolation-consistency-recency/) +/// - [Server Sessions (MongoDB Manual)](https://www.mongodb.com/docs/manual/reference/server-sessions/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class client_session { + /// + /// Options for @ref mongocxx::v1::client_session. + /// + /// @attention This feature is experimental! It is not ready for use! + /// + class options {}; +}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::client_session. +/// diff --git a/src/mongocxx/include/mongocxx/v1/collection-fwd.hpp b/src/mongocxx/include/mongocxx/v1/collection-fwd.hpp new file mode 100644 index 0000000000..ba791b244e --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/collection-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class collection; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::collection. +/// diff --git a/src/mongocxx/include/mongocxx/v1/collection.hpp b/src/mongocxx/include/mongocxx/v1/collection.hpp new file mode 100644 index 0000000000..82acec22d3 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/collection.hpp @@ -0,0 +1,44 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// A MongoDB collection. +/// +/// @see +/// - [Databases and Collections in MongoDB (MongoDB Manual)](https://www.mongodb.com/docs/manual/core/databases-and-collections/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class collection {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::collection. +/// diff --git a/src/mongocxx/include/mongocxx/v1/count_options-fwd.hpp b/src/mongocxx/include/mongocxx/v1/count_options-fwd.hpp new file mode 100644 index 0000000000..963023b210 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/count_options-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class count_options; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::count_options. +/// diff --git a/src/mongocxx/include/mongocxx/v1/count_options.hpp b/src/mongocxx/include/mongocxx/v1/count_options.hpp new file mode 100644 index 0000000000..4bda3df162 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/count_options.hpp @@ -0,0 +1,44 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// Options for a "countDocuments" operation. +/// +/// @see +/// - [CRUD API (MongoDB Specifications)](https://specifications.readthedocs.io/en/latest/crud/crud/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class count_options {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::count_options. +/// diff --git a/src/mongocxx/include/mongocxx/v1/cursor-fwd.hpp b/src/mongocxx/include/mongocxx/v1/cursor-fwd.hpp new file mode 100644 index 0000000000..cbdb6c5c4e --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/cursor-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class cursor; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::cursor. +/// diff --git a/src/mongocxx/include/mongocxx/v1/cursor.hpp b/src/mongocxx/include/mongocxx/v1/cursor.hpp new file mode 100644 index 0000000000..80bde5ac66 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/cursor.hpp @@ -0,0 +1,44 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// A MongoDB cursor. +/// +/// @see +/// - [Cursors (MongoDB Manual)](https://www.mongodb.com/docs/manual/core/cursors/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class cursor {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::cursor. +/// diff --git a/src/mongocxx/include/mongocxx/v1/data_key-fwd.hpp b/src/mongocxx/include/mongocxx/v1/data_key-fwd.hpp new file mode 100644 index 0000000000..8a8552a42e --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/data_key-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class data_key; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::data_key. +/// diff --git a/src/mongocxx/include/mongocxx/v1/data_key.hpp b/src/mongocxx/include/mongocxx/v1/data_key.hpp new file mode 100644 index 0000000000..487084b661 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/data_key.hpp @@ -0,0 +1,44 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// A Data Encryption Key (DEK) for In-Use Encryption. +/// +/// @see +/// - [Encryption Keys and Key Vaults (MongoDB Manual)](https://www.mongodb.com/docs/manual/core/queryable-encryption/fundamentals/keys-key-vaults/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class data_key {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::data_key. +/// diff --git a/src/mongocxx/include/mongocxx/v1/database-fwd.hpp b/src/mongocxx/include/mongocxx/v1/database-fwd.hpp new file mode 100644 index 0000000000..342c2e0311 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/database-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class database; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::database. +/// diff --git a/src/mongocxx/include/mongocxx/v1/database.hpp b/src/mongocxx/include/mongocxx/v1/database.hpp new file mode 100644 index 0000000000..1d16cdfd50 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/database.hpp @@ -0,0 +1,44 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// A MongoDB database. +/// +/// @see +/// - [Databases and Collections in MongoDB (MongoDB Manual)](https://www.mongodb.com/docs/manual/core/databases-and-collections/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class database {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::database. +/// diff --git a/src/mongocxx/include/mongocxx/v1/delete_many_options-fwd.hpp b/src/mongocxx/include/mongocxx/v1/delete_many_options-fwd.hpp new file mode 100644 index 0000000000..ec6a50e2fa --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/delete_many_options-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class delete_many_options; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::delete_many_options. +/// diff --git a/src/mongocxx/include/mongocxx/v1/delete_many_options.hpp b/src/mongocxx/include/mongocxx/v1/delete_many_options.hpp new file mode 100644 index 0000000000..486ab411c8 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/delete_many_options.hpp @@ -0,0 +1,44 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// Options for a "deleteMany" operation. +/// +/// @see +/// - [Delete Methods (MongoDB Manual)](https://www.mongodb.com/docs/manual/reference/delete-methods/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class delete_many_options {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::delete_many_options. +/// diff --git a/src/mongocxx/include/mongocxx/v1/delete_many_result-fwd.hpp b/src/mongocxx/include/mongocxx/v1/delete_many_result-fwd.hpp new file mode 100644 index 0000000000..f750a908b4 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/delete_many_result-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class delete_many_result; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::delete_many_result. +/// diff --git a/src/mongocxx/include/mongocxx/v1/delete_many_result.hpp b/src/mongocxx/include/mongocxx/v1/delete_many_result.hpp new file mode 100644 index 0000000000..b46434a78b --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/delete_many_result.hpp @@ -0,0 +1,44 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// The result of a "deleteMany" operation. +/// +/// @see +/// - [Delete Methods (MongoDB Manual)](https://www.mongodb.com/docs/manual/reference/delete-methods/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class delete_many_result {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::delete_many_result. +/// diff --git a/src/mongocxx/include/mongocxx/v1/delete_one_options-fwd.hpp b/src/mongocxx/include/mongocxx/v1/delete_one_options-fwd.hpp new file mode 100644 index 0000000000..c370f598c8 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/delete_one_options-fwd.hpp @@ -0,0 +1,40 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +/// +/// Options for a "deleteOne" operation. +/// +/// @see +/// - [Delete Methods (MongoDB Manual)](https://www.mongodb.com/docs/manual/reference/delete-methods/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class delete_one_options; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::delete_one_options. +/// diff --git a/src/mongocxx/include/mongocxx/v1/delete_one_options.hpp b/src/mongocxx/include/mongocxx/v1/delete_one_options.hpp new file mode 100644 index 0000000000..022c67ce39 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/delete_one_options.hpp @@ -0,0 +1,44 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// Options for a "deleteOne" operation. +/// +/// @see +/// - [Delete Methods (MongoDB Manual)](https://www.mongodb.com/docs/manual/reference/delete-methods/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class delete_one_options {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::delete_one_options. +/// diff --git a/src/mongocxx/include/mongocxx/v1/delete_one_result-fwd.hpp b/src/mongocxx/include/mongocxx/v1/delete_one_result-fwd.hpp new file mode 100644 index 0000000000..126e18c70e --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/delete_one_result-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class delete_one_result; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::delete_one_result. +/// diff --git a/src/mongocxx/include/mongocxx/v1/delete_one_result.hpp b/src/mongocxx/include/mongocxx/v1/delete_one_result.hpp new file mode 100644 index 0000000000..94d0f70837 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/delete_one_result.hpp @@ -0,0 +1,44 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// The result of a "deleteOne" operation. +/// +/// @see +/// - [Delete Methods (MongoDB Manual)](https://www.mongodb.com/docs/manual/reference/delete-methods/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class delete_one_result {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::delete_one_result. +/// diff --git a/src/mongocxx/include/mongocxx/v1/distinct_options-fwd.hpp b/src/mongocxx/include/mongocxx/v1/distinct_options-fwd.hpp new file mode 100644 index 0000000000..94e53c9950 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/distinct_options-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class distinct_options; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::distinct_options. +/// diff --git a/src/mongocxx/include/mongocxx/v1/distinct_options.hpp b/src/mongocxx/include/mongocxx/v1/distinct_options.hpp new file mode 100644 index 0000000000..ea9da71e30 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/distinct_options.hpp @@ -0,0 +1,42 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// Options for a "distinct" command. +/// +/// @see +/// - [`distinct` (database command) (MongoDB Manual)](https://www.mongodb.com/docs/manual/reference/command/distinct/) +/// +class distinct_options {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::distinct_options. +/// diff --git a/src/mongocxx/include/mongocxx/v1/encrypt-fwd.hpp b/src/mongocxx/include/mongocxx/v1/encrypt-fwd.hpp new file mode 100644 index 0000000000..cc166388ca --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/encrypt-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class encrypt; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::encrypt. +/// diff --git a/src/mongocxx/include/mongocxx/v1/encrypt.hpp b/src/mongocxx/include/mongocxx/v1/encrypt.hpp new file mode 100644 index 0000000000..a956b70774 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/encrypt.hpp @@ -0,0 +1,49 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// Options related to explicit encryption for In-Use Encryption. +/// +/// @see +/// - [Fields and Encryption Types (MongoDB Manual)](https://www.mongodb.com/docs/manual/core/csfle/fundamentals/encryption-algorithms/) +/// - [Encrypted Fields and Enabled Queries (MongoDB Manual)](https://mongodb.com/docs/manual/core/queryable-encryption/fundamentals/encrypt-and-query/) +/// - [Encryption Schemas](https://www.mongodb.com/docs/manual/core/csfle/fundamentals/create-schema/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class encrypt { + // This class implements `EncryptOpts`: + // - https://specifications.readthedocs.io/en/latest/client-side-encryption/client-side-encryption/ +}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::encrypt. +/// diff --git a/src/mongocxx/include/mongocxx/v1/estimated_document_count_options-fwd.hpp b/src/mongocxx/include/mongocxx/v1/estimated_document_count_options-fwd.hpp new file mode 100644 index 0000000000..26e26d1adf --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/estimated_document_count_options-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class estimated_document_count_options; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::estimated_document_count_options. +/// diff --git a/src/mongocxx/include/mongocxx/v1/estimated_document_count_options.hpp b/src/mongocxx/include/mongocxx/v1/estimated_document_count_options.hpp new file mode 100644 index 0000000000..a5006e761a --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/estimated_document_count_options.hpp @@ -0,0 +1,43 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// Options for an "estimatedDocumentCount" operation. +/// +/// @see +/// - [CRUD API (MongoDB Specifications)](https://specifications.readthedocs.io/en/latest/crud/crud/) +/// - [`count` (database command) (MongoDB Manual)](https://www.mongodb.com/docs/manual/reference/command/count/) +/// +class estimated_document_count_options {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::estimated_document_count_options. +/// diff --git a/src/mongocxx/include/mongocxx/v1/events/command_failed-fwd.hpp b/src/mongocxx/include/mongocxx/v1/events/command_failed-fwd.hpp new file mode 100644 index 0000000000..e13053449e --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/events/command_failed-fwd.hpp @@ -0,0 +1,34 @@ +// 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 + +namespace mongocxx { +namespace v1 { +namespace events { + +class command_failed; + +} // namespace events +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::events::command_failed. +/// diff --git a/src/mongocxx/include/mongocxx/v1/events/command_failed.hpp b/src/mongocxx/include/mongocxx/v1/events/command_failed.hpp new file mode 100644 index 0000000000..c0ec2f898d --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/events/command_failed.hpp @@ -0,0 +1,46 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { +namespace events { + +/// +/// `CommandFailedEvent` from the Command Logging and Monitoring specification. +/// +/// @see +/// - [Command Logging and Monitoring (MongoDB Specifications)](https://specifications.readthedocs.io/en/latest/command-logging-and-monitoring/command-logging-and-monitoring/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class command_failed {}; + +} // namespace events +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::events::command_failed. +/// diff --git a/src/mongocxx/include/mongocxx/v1/events/command_failed_event-fwd.hpp b/src/mongocxx/include/mongocxx/v1/events/command_failed_event-fwd.hpp new file mode 100644 index 0000000000..e13053449e --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/events/command_failed_event-fwd.hpp @@ -0,0 +1,34 @@ +// 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 + +namespace mongocxx { +namespace v1 { +namespace events { + +class command_failed; + +} // namespace events +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::events::command_failed. +/// diff --git a/src/mongocxx/include/mongocxx/v1/events/command_started-fwd.hpp b/src/mongocxx/include/mongocxx/v1/events/command_started-fwd.hpp new file mode 100644 index 0000000000..b19355c136 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/events/command_started-fwd.hpp @@ -0,0 +1,34 @@ +// 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 + +namespace mongocxx { +namespace v1 { +namespace events { + +class command_started; + +} // namespace events +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::events::command_started. +/// diff --git a/src/mongocxx/include/mongocxx/v1/events/command_started.hpp b/src/mongocxx/include/mongocxx/v1/events/command_started.hpp new file mode 100644 index 0000000000..a5f9c41d37 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/events/command_started.hpp @@ -0,0 +1,46 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { +namespace events { + +/// +/// `CommandStartedEvent` from the Command Logging and Monitoring specification. +/// +/// @see +/// - [Command Logging and Monitoring (MongoDB Specifications)](https://specifications.readthedocs.io/en/latest/command-logging-and-monitoring/command-logging-and-monitoring/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class command_started {}; + +} // namespace events +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::events::command_started. +/// diff --git a/src/mongocxx/include/mongocxx/v1/events/command_succeeded-fwd.hpp b/src/mongocxx/include/mongocxx/v1/events/command_succeeded-fwd.hpp new file mode 100644 index 0000000000..fb04bac7f8 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/events/command_succeeded-fwd.hpp @@ -0,0 +1,34 @@ +// 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 + +namespace mongocxx { +namespace v1 { +namespace events { + +class command_succeeded; + +} // namespace events +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::events::command_succeeded. +/// diff --git a/src/mongocxx/include/mongocxx/v1/events/command_succeeded.hpp b/src/mongocxx/include/mongocxx/v1/events/command_succeeded.hpp new file mode 100644 index 0000000000..534e3763c0 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/events/command_succeeded.hpp @@ -0,0 +1,46 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { +namespace events { + +/// +/// `CommandSucceededEvent` from the Command Logging and Monitoring specification. +/// +/// @see +/// - [Command Logging and Monitoring (MongoDB Specifications)](https://specifications.readthedocs.io/en/latest/command-logging-and-monitoring/command-logging-and-monitoring/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class command_succeeded {}; + +} // namespace events +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::events::command_succeeded. +/// diff --git a/src/mongocxx/include/mongocxx/v1/events/server_closed-fwd.hpp b/src/mongocxx/include/mongocxx/v1/events/server_closed-fwd.hpp new file mode 100644 index 0000000000..96717ea1a7 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/events/server_closed-fwd.hpp @@ -0,0 +1,34 @@ +// 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 + +namespace mongocxx { +namespace v1 { +namespace events { + +class server_closed; + +} // namespace events +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::events::server_closed. +/// diff --git a/src/mongocxx/include/mongocxx/v1/events/server_closed.hpp b/src/mongocxx/include/mongocxx/v1/events/server_closed.hpp new file mode 100644 index 0000000000..c3a04e4411 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/events/server_closed.hpp @@ -0,0 +1,46 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { +namespace events { + +/// +/// `ServerClosedEvent` 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/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class server_closed {}; + +} // namespace events +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::events::server_closed. +/// diff --git a/src/mongocxx/include/mongocxx/v1/events/server_description-fwd.hpp b/src/mongocxx/include/mongocxx/v1/events/server_description-fwd.hpp new file mode 100644 index 0000000000..57ed7a7043 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/events/server_description-fwd.hpp @@ -0,0 +1,34 @@ +// 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 + +namespace mongocxx { +namespace v1 { +namespace events { + +class server_description; + +} // namespace events +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::events::server_description. +/// diff --git a/src/mongocxx/include/mongocxx/v1/events/server_description.hpp b/src/mongocxx/include/mongocxx/v1/events/server_description.hpp new file mode 100644 index 0000000000..389427057e --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/events/server_description.hpp @@ -0,0 +1,46 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { +namespace events { + +/// +/// `ServerDescription` from the Server Discovery and Monitoring specification. +/// +/// @see +/// - [Server Discovery and Monitoring (MongoDB Specifications)](https://specifications.readthedocs.io/en/latest/server-discovery-and-monitoring/server-discovery-and-monitoring/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class server_description {}; + +} // namespace events +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::events::server_description. +/// diff --git a/src/mongocxx/include/mongocxx/v1/events/server_description_changed-fwd.hpp b/src/mongocxx/include/mongocxx/v1/events/server_description_changed-fwd.hpp new file mode 100644 index 0000000000..4b00d7336c --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/events/server_description_changed-fwd.hpp @@ -0,0 +1,34 @@ +// 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 + +namespace mongocxx { +namespace v1 { +namespace events { + +class server_description_changed; + +} // namespace events +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::events::server_description_changed. +/// diff --git a/src/mongocxx/include/mongocxx/v1/events/server_description_changed.hpp b/src/mongocxx/include/mongocxx/v1/events/server_description_changed.hpp new file mode 100644 index 0000000000..9421a55efe --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/events/server_description_changed.hpp @@ -0,0 +1,46 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { +namespace events { + +/// +/// `ServerDescriptionChangedEvent` 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/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class server_description_changed {}; + +} // namespace events +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::events::server_description_changed. +/// diff --git a/src/mongocxx/include/mongocxx/v1/events/server_heartbeat_failed-fwd.hpp b/src/mongocxx/include/mongocxx/v1/events/server_heartbeat_failed-fwd.hpp new file mode 100644 index 0000000000..e5b66533a7 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/events/server_heartbeat_failed-fwd.hpp @@ -0,0 +1,34 @@ +// 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 + +namespace mongocxx { +namespace v1 { +namespace events { + +class server_heartbeat_failed; + +} // namespace events +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::events::server_heartbeat_failed. +/// diff --git a/src/mongocxx/include/mongocxx/v1/events/server_heartbeat_failed.hpp b/src/mongocxx/include/mongocxx/v1/events/server_heartbeat_failed.hpp new file mode 100644 index 0000000000..ae27b4b430 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/events/server_heartbeat_failed.hpp @@ -0,0 +1,46 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { +namespace events { + +/// +/// `ServerHeartbeatFailedEvent` 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/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class server_heartbeat_failed {}; + +} // namespace events +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::events::server_heartbeat_failed. +/// diff --git a/src/mongocxx/include/mongocxx/v1/events/server_heartbeat_started-fwd.hpp b/src/mongocxx/include/mongocxx/v1/events/server_heartbeat_started-fwd.hpp new file mode 100644 index 0000000000..fe514d3d84 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/events/server_heartbeat_started-fwd.hpp @@ -0,0 +1,34 @@ +// 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 + +namespace mongocxx { +namespace v1 { +namespace events { + +class server_heartbeat_started; + +} // namespace events +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::events::server_heartbeat_started. +/// diff --git a/src/mongocxx/include/mongocxx/v1/events/server_heartbeat_started.hpp b/src/mongocxx/include/mongocxx/v1/events/server_heartbeat_started.hpp new file mode 100644 index 0000000000..b3193a114f --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/events/server_heartbeat_started.hpp @@ -0,0 +1,46 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { +namespace events { + +/// +/// `ServerHeartbeatStartedEvent` 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/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class server_heartbeat_started {}; + +} // namespace events +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::events::server_heartbeat_started. +/// diff --git a/src/mongocxx/include/mongocxx/v1/events/server_heartbeat_succeeded-fwd.hpp b/src/mongocxx/include/mongocxx/v1/events/server_heartbeat_succeeded-fwd.hpp new file mode 100644 index 0000000000..b2eaf3ae6b --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/events/server_heartbeat_succeeded-fwd.hpp @@ -0,0 +1,34 @@ +// 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 + +namespace mongocxx { +namespace v1 { +namespace events { + +class server_heartbeat_succeeded; + +} // namespace events +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::events::server_heartbeat_succeeded. +/// diff --git a/src/mongocxx/include/mongocxx/v1/events/server_heartbeat_succeeded.hpp b/src/mongocxx/include/mongocxx/v1/events/server_heartbeat_succeeded.hpp new file mode 100644 index 0000000000..4fc3aaf5dc --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/events/server_heartbeat_succeeded.hpp @@ -0,0 +1,46 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { +namespace events { + +/// +/// `ServerHeartbeatSucceededEvent` 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/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class server_heartbeat_succeeded {}; + +} // namespace events +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::events::server_heartbeat_succeeded. +/// diff --git a/src/mongocxx/include/mongocxx/v1/events/server_opening-fwd.hpp b/src/mongocxx/include/mongocxx/v1/events/server_opening-fwd.hpp new file mode 100644 index 0000000000..d0d1976f5f --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/events/server_opening-fwd.hpp @@ -0,0 +1,34 @@ +// 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 + +namespace mongocxx { +namespace v1 { +namespace events { + +class server_opening; + +} // namespace events +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::events::server_opening. +/// diff --git a/src/mongocxx/include/mongocxx/v1/events/server_opening.hpp b/src/mongocxx/include/mongocxx/v1/events/server_opening.hpp new file mode 100644 index 0000000000..7e5d4b2c63 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/events/server_opening.hpp @@ -0,0 +1,46 @@ +// 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 + +// + +#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/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class server_opening {}; + +} // namespace events +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::events::server_opening. +/// diff --git a/src/mongocxx/include/mongocxx/v1/events/topology_closed-fwd.hpp b/src/mongocxx/include/mongocxx/v1/events/topology_closed-fwd.hpp new file mode 100644 index 0000000000..b6fb88a479 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/events/topology_closed-fwd.hpp @@ -0,0 +1,34 @@ +// 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 + +namespace mongocxx { +namespace v1 { +namespace events { + +class topology_closed; + +} // namespace events +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::events::topology_closed. +/// diff --git a/src/mongocxx/include/mongocxx/v1/events/topology_closed.hpp b/src/mongocxx/include/mongocxx/v1/events/topology_closed.hpp new file mode 100644 index 0000000000..7317f7f669 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/events/topology_closed.hpp @@ -0,0 +1,46 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { +namespace events { + +/// +/// `TopologyClosedEvent` 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/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class topology_closed {}; + +} // namespace events +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::events::topology_closed. +/// diff --git a/src/mongocxx/include/mongocxx/v1/events/topology_description-fwd.hpp b/src/mongocxx/include/mongocxx/v1/events/topology_description-fwd.hpp new file mode 100644 index 0000000000..3040f6b177 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/events/topology_description-fwd.hpp @@ -0,0 +1,34 @@ +// 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 + +namespace mongocxx { +namespace v1 { +namespace events { + +class topology_description; + +} // namespace events +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::events::topology_description. +/// diff --git a/src/mongocxx/include/mongocxx/v1/events/topology_description.hpp b/src/mongocxx/include/mongocxx/v1/events/topology_description.hpp new file mode 100644 index 0000000000..0d092d213b --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/events/topology_description.hpp @@ -0,0 +1,46 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { +namespace events { + +/// +/// `TopologyDescription` 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/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class topology_description {}; + +} // namespace events +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::events::topology_description. +/// diff --git a/src/mongocxx/include/mongocxx/v1/events/topology_description_changed-fwd.hpp b/src/mongocxx/include/mongocxx/v1/events/topology_description_changed-fwd.hpp new file mode 100644 index 0000000000..69ba3e1932 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/events/topology_description_changed-fwd.hpp @@ -0,0 +1,34 @@ +// 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 + +namespace mongocxx { +namespace v1 { +namespace events { + +class topology_description_changed; + +} // namespace events +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::events::topology_description_changed. +/// diff --git a/src/mongocxx/include/mongocxx/v1/events/topology_description_changed.hpp b/src/mongocxx/include/mongocxx/v1/events/topology_description_changed.hpp new file mode 100644 index 0000000000..b95a8974b0 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/events/topology_description_changed.hpp @@ -0,0 +1,46 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { +namespace events { + +/// +/// `TopologyDescriptionChangedEvent` 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/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class topology_description_changed {}; + +} // namespace events +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::events::topology_description_changed. +/// diff --git a/src/mongocxx/include/mongocxx/v1/events/topology_opening-fwd.hpp b/src/mongocxx/include/mongocxx/v1/events/topology_opening-fwd.hpp new file mode 100644 index 0000000000..51f427cb7c --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/events/topology_opening-fwd.hpp @@ -0,0 +1,34 @@ +// 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 + +namespace mongocxx { +namespace v1 { +namespace events { + +class topology_opening; + +} // namespace events +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::events::topology_opening. +/// diff --git a/src/mongocxx/include/mongocxx/v1/events/topology_opening.hpp b/src/mongocxx/include/mongocxx/v1/events/topology_opening.hpp new file mode 100644 index 0000000000..6eb2fee32f --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/events/topology_opening.hpp @@ -0,0 +1,46 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { +namespace events { + +/// +/// `TopologyOpeningEvent` 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/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class topology_opening {}; + +} // namespace events +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::events::topology_opening. +/// diff --git a/src/mongocxx/include/mongocxx/v1/events/topology_opening_event.hpp b/src/mongocxx/include/mongocxx/v1/events/topology_opening_event.hpp new file mode 100644 index 0000000000..6eb2fee32f --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/events/topology_opening_event.hpp @@ -0,0 +1,46 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { +namespace events { + +/// +/// `TopologyOpeningEvent` 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/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class topology_opening {}; + +} // namespace events +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::events::topology_opening. +/// diff --git a/src/mongocxx/include/mongocxx/v1/exception-fwd.hpp b/src/mongocxx/include/mongocxx/v1/exception-fwd.hpp new file mode 100644 index 0000000000..5f33a06d65 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/exception-fwd.hpp @@ -0,0 +1,38 @@ +// 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 + +#include + +namespace mongocxx { +namespace v1 { + +enum class source_errc; + +enum class type_errc; + +class MONGOCXX_ABI_EXPORT exception; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares mongocxx error-handling utilities. +/// diff --git a/src/mongocxx/include/mongocxx/v1/exception.hpp b/src/mongocxx/include/mongocxx/v1/exception.hpp new file mode 100644 index 0000000000..25c686197e --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/exception.hpp @@ -0,0 +1,58 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// Enumeration identifying the source of a @ref mongocxx::v1 error. +/// +/// @attention This feature is experimental! It is not ready for use! +/// +enum class source_errc {}; + +/// +/// Enumeration identifying the type (cause) of a @ref mongocxx::v1 error. +/// +/// @attention This feature is experimental! It is not ready for use! +/// +enum class type_errc {}; + +/// +/// Base class for all exceptions thrown by @ref mongocxx::v1. +/// +/// @par Inherits: +/// - `std::system_error` +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class exception {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides mongocxx error-handling utilities. +/// diff --git a/src/mongocxx/include/mongocxx/v1/find_one_and_delete_options-fwd.hpp b/src/mongocxx/include/mongocxx/v1/find_one_and_delete_options-fwd.hpp new file mode 100644 index 0000000000..eb128c9941 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/find_one_and_delete_options-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class find_one_and_delete_options; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::find_one_and_delete_options. +/// diff --git a/src/mongocxx/include/mongocxx/v1/find_one_and_delete_options.hpp b/src/mongocxx/include/mongocxx/v1/find_one_and_delete_options.hpp new file mode 100644 index 0000000000..cb2c8a27e7 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/find_one_and_delete_options.hpp @@ -0,0 +1,45 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// Options for a "findOneAndDelete" operation. +/// +/// @see +/// - [Query Documents (MongoDB Manual)](https://www.mongodb.com/docs/manual/tutorial/query-documents/) +/// - [Delete Methods (MongoDB Manual)](https://www.mongodb.com/docs/manual/reference/delete-methods/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class find_one_and_delete_options {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::find_one_and_delete_options. +/// diff --git a/src/mongocxx/include/mongocxx/v1/find_one_and_replace_options-fwd.hpp b/src/mongocxx/include/mongocxx/v1/find_one_and_replace_options-fwd.hpp new file mode 100644 index 0000000000..4356c71c97 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/find_one_and_replace_options-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class find_one_and_replace_options; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::find_one_and_replace_options. +/// diff --git a/src/mongocxx/include/mongocxx/v1/find_one_and_replace_options.hpp b/src/mongocxx/include/mongocxx/v1/find_one_and_replace_options.hpp new file mode 100644 index 0000000000..3d089d3424 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/find_one_and_replace_options.hpp @@ -0,0 +1,45 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// Options for a "findOneAndReplace" operation. +/// +/// @see +/// - [Query Documents (MongoDB Manual)](https://www.mongodb.com/docs/manual/tutorial/query-documents/) +/// - [Update Methods (MongoDB Manual)](https://www.mongodb.com/docs/manual/reference/update-methods/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class find_one_and_replace_options {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::find_one_and_replace_options. +/// diff --git a/src/mongocxx/include/mongocxx/v1/find_one_and_update_options-fwd.hpp b/src/mongocxx/include/mongocxx/v1/find_one_and_update_options-fwd.hpp new file mode 100644 index 0000000000..ea0792ef4e --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/find_one_and_update_options-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class find_one_and_update_options; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::find_one_and_update_options. +/// diff --git a/src/mongocxx/include/mongocxx/v1/find_one_and_update_options.hpp b/src/mongocxx/include/mongocxx/v1/find_one_and_update_options.hpp new file mode 100644 index 0000000000..f5bef75d2b --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/find_one_and_update_options.hpp @@ -0,0 +1,45 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// Options for a "findOneAndUpdate" operation. +/// +/// @see +/// - [Query Documents (MongoDB Manual)](https://www.mongodb.com/docs/manual/tutorial/query-documents/) +/// - [Update Methods (MongoDB Manual)](https://www.mongodb.com/docs/manual/reference/update-methods/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class find_one_and_update_options {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::find_one_and_update_options. +/// diff --git a/src/mongocxx/include/mongocxx/v1/find_options-fwd.hpp b/src/mongocxx/include/mongocxx/v1/find_options-fwd.hpp new file mode 100644 index 0000000000..ccbe9ad257 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/find_options-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class find_options; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::find_options. +/// diff --git a/src/mongocxx/include/mongocxx/v1/find_options.hpp b/src/mongocxx/include/mongocxx/v1/find_options.hpp new file mode 100644 index 0000000000..4178ecea66 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/find_options.hpp @@ -0,0 +1,44 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// Options for a "find" command. +/// +/// @see +/// - [`find` (database command) (MongoDB Manual)](https://www.mongodb.com/docs/manual/reference/command/find/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class find_options {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::find_options. +/// diff --git a/src/mongocxx/include/mongocxx/v1/gridfs/bucket-fwd.hpp b/src/mongocxx/include/mongocxx/v1/gridfs/bucket-fwd.hpp new file mode 100644 index 0000000000..59775d6a07 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/gridfs/bucket-fwd.hpp @@ -0,0 +1,34 @@ +// 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 + +namespace mongocxx { +namespace v1 { +namespace gridfs { + +class bucket; + +} // namespace gridfs +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::gridfs::bucket. +/// diff --git a/src/mongocxx/include/mongocxx/v1/gridfs/bucket.hpp b/src/mongocxx/include/mongocxx/v1/gridfs/bucket.hpp new file mode 100644 index 0000000000..4cb5c55141 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/gridfs/bucket.hpp @@ -0,0 +1,46 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { +namespace gridfs { + +/// +/// A GridFS bucket. +/// +/// @see +/// - [GridFS (MongoDB Manual)](https://www.mongodb.com/docs/manual/core/gridfs/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class bucket {}; + +} // namespace gridfs +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::gridfs::bucket. +/// diff --git a/src/mongocxx/include/mongocxx/v1/gridfs/downloader-fwd.hpp b/src/mongocxx/include/mongocxx/v1/gridfs/downloader-fwd.hpp new file mode 100644 index 0000000000..dbbc066f95 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/gridfs/downloader-fwd.hpp @@ -0,0 +1,34 @@ +// 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 + +namespace mongocxx { +namespace v1 { +namespace gridfs { + +class downloader; + +} // namespace gridfs +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::gridfs::downloader. +/// diff --git a/src/mongocxx/include/mongocxx/v1/gridfs/downloader.hpp b/src/mongocxx/include/mongocxx/v1/gridfs/downloader.hpp new file mode 100644 index 0000000000..8c468c9796 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/gridfs/downloader.hpp @@ -0,0 +1,46 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { +namespace gridfs { + +/// +/// Support for downloading files from a GridFS bucket. +/// +/// @see +/// - [GridFS (MongoDB Manual)](https://www.mongodb.com/docs/manual/core/gridfs/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class downloader {}; + +} // namespace gridfs +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::gridfs::downloader. +/// diff --git a/src/mongocxx/include/mongocxx/v1/gridfs/upload_options-fwd.hpp b/src/mongocxx/include/mongocxx/v1/gridfs/upload_options-fwd.hpp new file mode 100644 index 0000000000..72e550d5f6 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/gridfs/upload_options-fwd.hpp @@ -0,0 +1,34 @@ +// 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 + +namespace mongocxx { +namespace v1 { +namespace gridfs { + +class upload_options; + +} // namespace gridfs +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::gridfs::upload_options. +/// diff --git a/src/mongocxx/include/mongocxx/v1/gridfs/upload_options.hpp b/src/mongocxx/include/mongocxx/v1/gridfs/upload_options.hpp new file mode 100644 index 0000000000..25bd8e9fc9 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/gridfs/upload_options.hpp @@ -0,0 +1,46 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { +namespace gridfs { + +/// +/// Options related to uploading a file to a GridFS bucket. +/// +/// @see +/// - [GridFS (MongoDB Manual)](https://www.mongodb.com/docs/manual/core/gridfs/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class upload_options {}; + +} // namespace gridfs +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::gridfs::upload_options. +/// diff --git a/src/mongocxx/include/mongocxx/v1/gridfs/upload_result-fwd.hpp b/src/mongocxx/include/mongocxx/v1/gridfs/upload_result-fwd.hpp new file mode 100644 index 0000000000..3f6fcdf4b4 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/gridfs/upload_result-fwd.hpp @@ -0,0 +1,34 @@ +// 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 + +namespace mongocxx { +namespace v1 { +namespace gridfs { + +class upload_result; + +} // namespace gridfs +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::gridfs::upload_result. +/// diff --git a/src/mongocxx/include/mongocxx/v1/gridfs/upload_result.hpp b/src/mongocxx/include/mongocxx/v1/gridfs/upload_result.hpp new file mode 100644 index 0000000000..a62b35ba2b --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/gridfs/upload_result.hpp @@ -0,0 +1,46 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { +namespace gridfs { + +/// +/// Result of uploading a file to a GridFS bucket. +/// +/// @see +/// - [GridFS (MongoDB Manual)](https://www.mongodb.com/docs/manual/core/gridfs/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class upload_result {}; + +} // namespace gridfs +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::gridfs::upload_result. +/// diff --git a/src/mongocxx/include/mongocxx/v1/gridfs/uploader-fwd.hpp b/src/mongocxx/include/mongocxx/v1/gridfs/uploader-fwd.hpp new file mode 100644 index 0000000000..7bb7bf3261 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/gridfs/uploader-fwd.hpp @@ -0,0 +1,34 @@ +// 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 + +namespace mongocxx { +namespace v1 { +namespace gridfs { + +class uploader; + +} // namespace gridfs +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::gridfs::uploader. +/// diff --git a/src/mongocxx/include/mongocxx/v1/gridfs/uploader.hpp b/src/mongocxx/include/mongocxx/v1/gridfs/uploader.hpp new file mode 100644 index 0000000000..34574053b4 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/gridfs/uploader.hpp @@ -0,0 +1,46 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { +namespace gridfs { + +/// +/// Support for uploading files to a GridFS bucket. +/// +/// @see +/// - [GridFS (MongoDB Manual)](https://www.mongodb.com/docs/manual/core/gridfs/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class uploader {}; + +} // namespace gridfs +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::gridfs::uploader. +/// diff --git a/src/mongocxx/include/mongocxx/v1/hint-fwd.hpp b/src/mongocxx/include/mongocxx/v1/hint-fwd.hpp new file mode 100644 index 0000000000..4eecbaa445 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/hint-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class hint; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::hint. +/// diff --git a/src/mongocxx/include/mongocxx/v1/hint.hpp b/src/mongocxx/include/mongocxx/v1/hint.hpp new file mode 100644 index 0000000000..6aafa91205 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/hint.hpp @@ -0,0 +1,46 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// Options related to a MongoDB query hint. +/// +/// A document or string that specifies the index to use to support the query predicate. +/// +/// @see +/// - [Query Plans (MongoDB Manual)](https://www.mongodb.com/docs/manual/core/query-plans/#std-label-read-operations-query-optimization) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class hint {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::hint. +/// diff --git a/src/mongocxx/include/mongocxx/v1/indexes-fwd.hpp b/src/mongocxx/include/mongocxx/v1/indexes-fwd.hpp new file mode 100644 index 0000000000..72405ed5aa --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/indexes-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class indexes; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::indexes. +/// diff --git a/src/mongocxx/include/mongocxx/v1/indexes.hpp b/src/mongocxx/include/mongocxx/v1/indexes.hpp new file mode 100644 index 0000000000..5a82652dac --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/indexes.hpp @@ -0,0 +1,73 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// Support for MongoDB indexes. +/// +/// @note Not to be confused with Atlas Search indexes or Atlas Vector Search indexes. +/// +/// @see +/// - [Indexes (MongoDB Manual)](https://www.mongodb.com/docs/manual/indexes/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class indexes { + // This class implements `IndexView` ("Index View API"): + // - https://specifications.readthedocs.io/en/latest/index-management/index-management/ + + public: + /// + /// A description of a MongoDB index. + /// + /// @see + /// - [Indexes (MongoDB Manual)](https://www.mongodb.com/docs/manual/indexes/) + /// + /// @attention This feature is experimental! It is not ready for use! + /// + class model { + // This class implements `IndexModel` ("Index View API"): + // - https://specifications.readthedocs.io/en/latest/index-management/index-management/ + }; + + /// + /// Options for @ref mongocxx::v1::indexes. + /// + /// @attention This feature is experimental! It is not ready for use! + /// + class options { + // This class implements `IndexOptions` ("Index View API"): + // - https://specifications.readthedocs.io/en/latest/index-management/index-management/ + }; +}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::indexes. +/// diff --git a/src/mongocxx/include/mongocxx/v1/insert_many_options-fwd.hpp b/src/mongocxx/include/mongocxx/v1/insert_many_options-fwd.hpp new file mode 100644 index 0000000000..940348e824 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/insert_many_options-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class insert_many_options; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::insert_many_options. +/// diff --git a/src/mongocxx/include/mongocxx/v1/insert_many_options.hpp b/src/mongocxx/include/mongocxx/v1/insert_many_options.hpp new file mode 100644 index 0000000000..ba97e03dac --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/insert_many_options.hpp @@ -0,0 +1,44 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// Options for an "insertMany" operation. +/// +/// @see +/// - [Insert Methods (MongoDB Manual)](https://www.mongodb.com/docs/manual/reference/insert-methods/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class insert_many_options {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::insert_many_options. +/// diff --git a/src/mongocxx/include/mongocxx/v1/insert_many_result-fwd.hpp b/src/mongocxx/include/mongocxx/v1/insert_many_result-fwd.hpp new file mode 100644 index 0000000000..fc10220d45 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/insert_many_result-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class insert_many_result; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::insert_many_result. +/// diff --git a/src/mongocxx/include/mongocxx/v1/insert_many_result.hpp b/src/mongocxx/include/mongocxx/v1/insert_many_result.hpp new file mode 100644 index 0000000000..bebb6ad5ec --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/insert_many_result.hpp @@ -0,0 +1,44 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// The result of an "insertMany" operation. +/// +/// @see +/// - [Insert Methods (MongoDB Manual)](https://www.mongodb.com/docs/manual/reference/insert-methods/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class insert_many_result {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::insert_many_result. +/// diff --git a/src/mongocxx/include/mongocxx/v1/insert_one_options-fwd.hpp b/src/mongocxx/include/mongocxx/v1/insert_one_options-fwd.hpp new file mode 100644 index 0000000000..f5a6fe8209 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/insert_one_options-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class insert_one_options; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::insert_one_options. +/// diff --git a/src/mongocxx/include/mongocxx/v1/insert_one_options.hpp b/src/mongocxx/include/mongocxx/v1/insert_one_options.hpp new file mode 100644 index 0000000000..64982fe0ca --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/insert_one_options.hpp @@ -0,0 +1,44 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// Options for an "insertOne" operation. +/// +/// @see +/// - [Insert Methods (MongoDB Manual)](https://www.mongodb.com/docs/manual/reference/insert-methods/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class insert_one_options {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::insert_one_options. +/// diff --git a/src/mongocxx/include/mongocxx/v1/insert_one_result-fwd.hpp b/src/mongocxx/include/mongocxx/v1/insert_one_result-fwd.hpp new file mode 100644 index 0000000000..2507aaee21 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/insert_one_result-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class insert_one_result; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::insert_one_result. +/// diff --git a/src/mongocxx/include/mongocxx/v1/insert_one_result.hpp b/src/mongocxx/include/mongocxx/v1/insert_one_result.hpp new file mode 100644 index 0000000000..4c00ce09b4 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/insert_one_result.hpp @@ -0,0 +1,44 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// The result of an "insertOne" operation. +/// +/// @see +/// - [Insert Methods (MongoDB Manual)](https://www.mongodb.com/docs/manual/reference/insert-methods/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class insert_one_result {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::insert_one_result. +/// diff --git a/src/mongocxx/include/mongocxx/v1/instance-fwd.hpp b/src/mongocxx/include/mongocxx/v1/instance-fwd.hpp new file mode 100644 index 0000000000..5978bb90da --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/instance-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class instance; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::instance. +/// diff --git a/src/mongocxx/include/mongocxx/v1/instance.hpp b/src/mongocxx/include/mongocxx/v1/instance.hpp new file mode 100644 index 0000000000..90f276f9b4 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/instance.hpp @@ -0,0 +1,67 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// An instance of the MongoDB C++ Driver. +/// +/// @attention This feature is experimental! It is not ready for use! +/// +/// All mongocxx API **MUST** be used within the lifetime of the instance object, with special exemptions listed below. +/// Only **ONE** instance object may exist for the lifetime of a given process. It is undefined behavior to use the +/// mongocxx API _before_ the instance object is initialized or _after_ the instance object is destroyed. It is +/// undefined behavior to create more than one instance object. +/// +/// ```cpp +/// int main() { +/// // ... +/// // MUST NOT call mongocxx API before this point. +/// { +/// mongocxx::v1::instance instance; +/// // MAY call mongocxx API at this point. +/// // ... +/// } +/// // MUST NOT call mongocxx API after this point. +/// // ... +/// } +/// ``` +/// +/// @par Special exemptions +/// Only the following API are permitted to be used outside the lifetime of an instance object: +/// - @ref mongocxx::v1::logger +/// +/// @see +/// - [Initialization and Cleanup (mongoc)](https://mongoc.org/libmongoc/current/init-cleanup.html) +/// +class instance {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::instance. +/// diff --git a/src/mongocxx/include/mongocxx/v1/logger-fwd.hpp b/src/mongocxx/include/mongocxx/v1/logger-fwd.hpp new file mode 100644 index 0000000000..c4a155ba23 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/logger-fwd.hpp @@ -0,0 +1,35 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +enum class log_level; + +class logger; +class default_logger; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::logger. +/// diff --git a/src/mongocxx/include/mongocxx/v1/logger.hpp b/src/mongocxx/include/mongocxx/v1/logger.hpp new file mode 100644 index 0000000000..8f35665b92 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/logger.hpp @@ -0,0 +1,57 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// The log level for an unstructured log message. +/// +/// @attention This feature is experimental! It is not ready for use! +/// +enum class log_level {}; + +/// +/// The interface for an unstructured log message handler. +/// +/// @important This interface does NOT fully conform to the CMAP specification! +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class logger {}; + +/// +/// A tag type representing mongoc's default unstructured log handler. +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class default_logger {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::logger. +/// diff --git a/src/mongocxx/include/mongocxx/v1/pipeline-fwd.hpp b/src/mongocxx/include/mongocxx/v1/pipeline-fwd.hpp new file mode 100644 index 0000000000..f36abcae0b --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/pipeline-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class pipeline; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::pipeline. +/// diff --git a/src/mongocxx/include/mongocxx/v1/pipeline.hpp b/src/mongocxx/include/mongocxx/v1/pipeline.hpp new file mode 100644 index 0000000000..1169b5d608 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/pipeline.hpp @@ -0,0 +1,44 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// A MongoDB aggregation pipeline. +/// +/// @see +/// - [Aggregation Operations (MongoDB Manual)](https://www.mongodb.com/docs/manual/core/aggregates/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class pipeline {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::pipeline. +/// diff --git a/src/mongocxx/include/mongocxx/v1/pool-fwd.hpp b/src/mongocxx/include/mongocxx/v1/pool-fwd.hpp new file mode 100644 index 0000000000..e1c17ffb0d --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/pool-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class pool; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::pool. +/// diff --git a/src/mongocxx/include/mongocxx/v1/pool.hpp b/src/mongocxx/include/mongocxx/v1/pool.hpp new file mode 100644 index 0000000000..7962f8eabb --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/pool.hpp @@ -0,0 +1,55 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// A thread-safe pool of client objects. +/// +/// @important This interface does NOT fully conform to the CMAP specification! +/// +/// @see +/// - [`mongoc_client_pool_t` (mongoc)](https://mongoc.org/libmongoc/current/mongoc_client_pool_t.html) +/// - [Connection Monitoring and Pooling (MongoDB Specifications)](https://specifications.readthedocs.io/en/latest/connection-monitoring-and-pooling/connection-monitoring-and-pooling/) +/// - [Connection Pool Overview (MongoDB Manual)](https://www.mongodb.com/docs/manual/administration/connection-pool-overview/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class pool { + /// + /// Options for @ref mongocxx::v1::pool. + /// + /// @attention This feature is experimental! It is not ready for use! + /// + class options {}; +}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::pool. +/// diff --git a/src/mongocxx/include/mongocxx/v1/range-fwd.hpp b/src/mongocxx/include/mongocxx/v1/range-fwd.hpp new file mode 100644 index 0000000000..2d427532cb --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/range-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class range; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::range. +/// diff --git a/src/mongocxx/include/mongocxx/v1/range.hpp b/src/mongocxx/include/mongocxx/v1/range.hpp new file mode 100644 index 0000000000..58bced2d7c --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/range.hpp @@ -0,0 +1,44 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// Options related to range queries for Queryable Encryption. +/// +/// @see +/// - [Encrypted Fields and Enabled Queries](https://www.mongodb.com/docs/manual/core/queryable-encryption/fundamentals/encrypt-and-query/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class range {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::range. +/// diff --git a/src/mongocxx/include/mongocxx/v1/read_concern-fwd.hpp b/src/mongocxx/include/mongocxx/v1/read_concern-fwd.hpp new file mode 100644 index 0000000000..0d18f45ff0 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/read_concern-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class read_concern; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::read_concern. +/// diff --git a/src/mongocxx/include/mongocxx/v1/read_concern.hpp b/src/mongocxx/include/mongocxx/v1/read_concern.hpp new file mode 100644 index 0000000000..2cb5de4de3 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/read_concern.hpp @@ -0,0 +1,44 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// Options related to a MongoDB Read Concern. +/// +/// @see +/// - [Read Concern (MongoDB Manual)](https://www.mongodb.com/docs/manual/reference/read-concern/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class read_concern {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::read_concern. +/// diff --git a/src/mongocxx/include/mongocxx/v1/read_preference-fwd.hpp b/src/mongocxx/include/mongocxx/v1/read_preference-fwd.hpp new file mode 100644 index 0000000000..d233266d42 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/read_preference-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class read_preference; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::read_preference. +/// diff --git a/src/mongocxx/include/mongocxx/v1/read_preference.hpp b/src/mongocxx/include/mongocxx/v1/read_preference.hpp new file mode 100644 index 0000000000..89cfd4c190 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/read_preference.hpp @@ -0,0 +1,44 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// Options related to a MongoDB Read Preference. +/// +/// @see +/// - [Read Preference (MongoDB Manual)](https://www.mongodb.com/docs/manual/core/read-preference/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class read_preference {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::read_preference. +/// diff --git a/src/mongocxx/include/mongocxx/v1/replace_one_options-fwd.hpp b/src/mongocxx/include/mongocxx/v1/replace_one_options-fwd.hpp new file mode 100644 index 0000000000..4010016634 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/replace_one_options-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class replace_one_options; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::replace_one_options. +/// diff --git a/src/mongocxx/include/mongocxx/v1/replace_one_options.hpp b/src/mongocxx/include/mongocxx/v1/replace_one_options.hpp new file mode 100644 index 0000000000..9fae0560bd --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/replace_one_options.hpp @@ -0,0 +1,44 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// Options for a "replaceOne" operation. +/// +/// @see +/// - [Update Methods (MongoDB Manual)](https://www.mongodb.com/docs/manual/reference/update-methods/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class replace_one_options {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::replace_one_options. +/// diff --git a/src/mongocxx/include/mongocxx/v1/replace_one_result-fwd.hpp b/src/mongocxx/include/mongocxx/v1/replace_one_result-fwd.hpp new file mode 100644 index 0000000000..d901ed7add --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/replace_one_result-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class replace_one_result; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::replace_one_result. +/// diff --git a/src/mongocxx/include/mongocxx/v1/replace_one_result.hpp b/src/mongocxx/include/mongocxx/v1/replace_one_result.hpp new file mode 100644 index 0000000000..843e47ffb4 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/replace_one_result.hpp @@ -0,0 +1,44 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// The result of a "replaceOne" operation. +/// +/// @see +/// - [Update Methods (MongoDB Manual)](https://www.mongodb.com/docs/manual/reference/update-methods/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class replace_one_result {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::replace_one_result. +/// diff --git a/src/mongocxx/include/mongocxx/v1/return_document-fwd.hpp b/src/mongocxx/include/mongocxx/v1/return_document-fwd.hpp new file mode 100644 index 0000000000..7d6590b590 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/return_document-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +enum class return_document; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::return_document. +/// diff --git a/src/mongocxx/include/mongocxx/v1/return_document.hpp b/src/mongocxx/include/mongocxx/v1/return_document.hpp new file mode 100644 index 0000000000..08ffec753b --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/return_document.hpp @@ -0,0 +1,42 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// `returnDocument` from the CRUD API specification. +/// +/// @see +/// - [CRUD API (MongoDB Specifications)](https://www.mongodb.com/docs/manual/reference/command/return_document/) +/// +enum class return_document {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::return_document. +/// diff --git a/src/mongocxx/include/mongocxx/v1/rewrap_many_datakey_options-fwd.hpp b/src/mongocxx/include/mongocxx/v1/rewrap_many_datakey_options-fwd.hpp new file mode 100644 index 0000000000..589766de7b --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/rewrap_many_datakey_options-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class rewrap_many_datakey_options; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::rewrap_many_datakey_options. +/// diff --git a/src/mongocxx/include/mongocxx/v1/rewrap_many_datakey_options.hpp b/src/mongocxx/include/mongocxx/v1/rewrap_many_datakey_options.hpp new file mode 100644 index 0000000000..d67d3e30c6 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/rewrap_many_datakey_options.hpp @@ -0,0 +1,44 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// Options for a "rewrapManyDataKey" operation. +/// +/// @see +/// - [Rotate and Rewrap Encryption Keys (MongoDB Manual)](https://www.mongodb.com/docs/manual/core/queryable-encryption/fundamentals/manage-keys/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class rewrap_many_datakey_options {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::rewrap_many_datakey_options. +/// diff --git a/src/mongocxx/include/mongocxx/v1/rewrap_many_datakey_result-fwd.hpp b/src/mongocxx/include/mongocxx/v1/rewrap_many_datakey_result-fwd.hpp new file mode 100644 index 0000000000..a5b5b27bbf --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/rewrap_many_datakey_result-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class rewrap_many_datakey_result; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::rewrap_many_datakey_result. +/// diff --git a/src/mongocxx/include/mongocxx/v1/rewrap_many_datakey_result.hpp b/src/mongocxx/include/mongocxx/v1/rewrap_many_datakey_result.hpp new file mode 100644 index 0000000000..cf94b863e1 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/rewrap_many_datakey_result.hpp @@ -0,0 +1,44 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// The result of a "rewrapManyDataKey" operation. +/// +/// @see +/// - [Rotate and Rewrap Encryption Keys (MongoDB Manual)](https://www.mongodb.com/docs/manual/core/queryable-encryption/fundamentals/manage-keys/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class rewrap_many_datakey_result {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::rewrap_many_datakey_result. +/// diff --git a/src/mongocxx/include/mongocxx/v1/search_indexes-fwd.hpp b/src/mongocxx/include/mongocxx/v1/search_indexes-fwd.hpp new file mode 100644 index 0000000000..978548844e --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/search_indexes-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class search_indexes; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::search_indexes. +/// diff --git a/src/mongocxx/include/mongocxx/v1/search_indexes.hpp b/src/mongocxx/include/mongocxx/v1/search_indexes.hpp new file mode 100644 index 0000000000..f6835c3108 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/search_indexes.hpp @@ -0,0 +1,56 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// Support for MongoDB Atlas Search indexes. +/// +/// @note Not to be confused with collection indexes or Atlas Vector Search indexes. +/// +/// @see +/// - [Queries and Indexes (MongoDB Manual)](https://www.mongodb.com/docs/atlas/atlas-search/searching/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class search_indexes { + /// + /// A description of a MongoDB Atlas Search index. + /// + /// @see + /// - [Queries and Indexes (MongoDB Manual)](https://www.mongodb.com/docs/atlas/atlas-search/searching/) + /// + /// @attention This feature is experimental! It is not ready for use! + /// + class model {}; +}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::search_indexes. +/// diff --git a/src/mongocxx/include/mongocxx/v1/server_api-fwd.hpp b/src/mongocxx/include/mongocxx/v1/server_api-fwd.hpp new file mode 100644 index 0000000000..c18c5a59a1 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/server_api-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class server_api; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::server_api. +/// diff --git a/src/mongocxx/include/mongocxx/v1/server_api.hpp b/src/mongocxx/include/mongocxx/v1/server_api.hpp new file mode 100644 index 0000000000..91b19027fd --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/server_api.hpp @@ -0,0 +1,45 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// Options related to MongoDB Stable API configuration. +/// +/// @see +/// - [Stable API (MongoDB Manual)](https://www.mongodb.com/docs/manual/reference/stable-api/) +/// +class server_api { + // This class implements `ServerApi`: + // - https://specifications.readthedocs.io/en/latest/versioned-api/versioned-api/ +}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::server_api. +/// diff --git a/src/mongocxx/include/mongocxx/v1/server_error-fwd.hpp b/src/mongocxx/include/mongocxx/v1/server_error-fwd.hpp new file mode 100644 index 0000000000..23dc75320a --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/server_error-fwd.hpp @@ -0,0 +1,36 @@ +// 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 + +#include + +namespace mongocxx { +namespace v1 { + +enum server_errc : int; + +class server_error; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::server_error. +/// diff --git a/src/mongocxx/include/mongocxx/v1/server_error.hpp b/src/mongocxx/include/mongocxx/v1/server_error.hpp new file mode 100644 index 0000000000..7ca8863492 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/server_error.hpp @@ -0,0 +1,46 @@ +// 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 + +// + +#include +#include + +namespace mongocxx { +namespace v1 { + +/// +/// A MongoDB server error. +/// +/// @important This class may contain both a client error code _and_ a server error code: +/// - Use `this->code()` to obtain the primary error code (which may equal `this->server_code()`). +/// - Use `this->server_code()` to obtain the server error code (which may equal `zero`). +/// Use @ref mongocxx::v1::source_errc to determine the origin of `this->code()`. +/// +/// @par Inherits: +/// - @ref mongocxx::v1::exception +/// +class server_error {}; + +} // namespace v1 +} // namespace mongocxx + +/// +/// @file +/// Provides @ref mongocxx::v1::server_error. +/// diff --git a/src/mongocxx/include/mongocxx/v1/tls-fwd.hpp b/src/mongocxx/include/mongocxx/v1/tls-fwd.hpp new file mode 100644 index 0000000000..c82bb63236 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/tls-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class tls; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::tls. +/// diff --git a/src/mongocxx/include/mongocxx/v1/tls.hpp b/src/mongocxx/include/mongocxx/v1/tls.hpp new file mode 100644 index 0000000000..1162f9a266 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/tls.hpp @@ -0,0 +1,42 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// Options related to TLS configuration. +/// +/// @see +/// - [TLS/SSL (Transport Encryption) (MongoDB Manual)](https://www.mongodb.com/docs/manual/core/security-transport-encryption/) +/// +class tls {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::tls. +/// diff --git a/src/mongocxx/include/mongocxx/v1/transaction-fwd.hpp b/src/mongocxx/include/mongocxx/v1/transaction-fwd.hpp new file mode 100644 index 0000000000..c6b8b3d5f9 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/transaction-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class transaction; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::transaction. +/// diff --git a/src/mongocxx/include/mongocxx/v1/transaction.hpp b/src/mongocxx/include/mongocxx/v1/transaction.hpp new file mode 100644 index 0000000000..7bcb163159 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/transaction.hpp @@ -0,0 +1,44 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// Options related to a distributed transaction. +/// +/// @see +/// - [Transactions (MongoDB Manual)](https://www.mongodb.com/docs/manual/core/transactions/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class transaction {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::transaction. +/// diff --git a/src/mongocxx/include/mongocxx/v1/update_many_options-fwd.hpp b/src/mongocxx/include/mongocxx/v1/update_many_options-fwd.hpp new file mode 100644 index 0000000000..2338ad45b5 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/update_many_options-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class update_many_options; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::update_many_options. +/// diff --git a/src/mongocxx/include/mongocxx/v1/update_many_options.hpp b/src/mongocxx/include/mongocxx/v1/update_many_options.hpp new file mode 100644 index 0000000000..6d20a3ebbd --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/update_many_options.hpp @@ -0,0 +1,44 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// Options for an "updateMany" operation. +/// +/// @see +/// - [Update Methods (MongoDB Manual)](https://www.mongodb.com/docs/manual/reference/update-methods/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class update_many_options {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::update_many_options. +/// diff --git a/src/mongocxx/include/mongocxx/v1/update_many_result-fwd.hpp b/src/mongocxx/include/mongocxx/v1/update_many_result-fwd.hpp new file mode 100644 index 0000000000..cf0c281c64 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/update_many_result-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class update_many_result; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::update_many_result. +/// diff --git a/src/mongocxx/include/mongocxx/v1/update_many_result.hpp b/src/mongocxx/include/mongocxx/v1/update_many_result.hpp new file mode 100644 index 0000000000..d05c3959af --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/update_many_result.hpp @@ -0,0 +1,44 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// The result of an "updateMany" operation. +/// +/// @see +/// - [Update Methods (MongoDB Manual)](https://www.mongodb.com/docs/manual/reference/update-methods/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class update_many_result {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::update_many_result. +/// diff --git a/src/mongocxx/include/mongocxx/v1/update_one_options-fwd.hpp b/src/mongocxx/include/mongocxx/v1/update_one_options-fwd.hpp new file mode 100644 index 0000000000..8bdd2f300d --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/update_one_options-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class update_one_options; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::update_one_options. +/// diff --git a/src/mongocxx/include/mongocxx/v1/update_one_options.hpp b/src/mongocxx/include/mongocxx/v1/update_one_options.hpp new file mode 100644 index 0000000000..ea4d4ab621 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/update_one_options.hpp @@ -0,0 +1,44 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// Options for an "updateOne" operation. +/// +/// @see +/// - [Update Methods (MongoDB Manual)](https://www.mongodb.com/docs/manual/reference/update-methods/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class update_one_options {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::update_one_options. +/// diff --git a/src/mongocxx/include/mongocxx/v1/update_one_result-fwd.hpp b/src/mongocxx/include/mongocxx/v1/update_one_result-fwd.hpp new file mode 100644 index 0000000000..1746e0441f --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/update_one_result-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class update_one_result; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::update_one_result. +/// diff --git a/src/mongocxx/include/mongocxx/v1/update_one_result.hpp b/src/mongocxx/include/mongocxx/v1/update_one_result.hpp new file mode 100644 index 0000000000..ebf3df6aa3 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/update_one_result.hpp @@ -0,0 +1,44 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// The result of an "updateOne" operation. +/// +/// @see +/// - [Update Methods (MongoDB Manual)](https://www.mongodb.com/docs/manual/reference/update-methods/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class update_one_result {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::update_one_result. +/// diff --git a/src/mongocxx/include/mongocxx/v1/uri-fwd.hpp b/src/mongocxx/include/mongocxx/v1/uri-fwd.hpp new file mode 100644 index 0000000000..1940ecb090 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/uri-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class uri; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::uri. +/// diff --git a/src/mongocxx/include/mongocxx/v1/uri.hpp b/src/mongocxx/include/mongocxx/v1/uri.hpp new file mode 100644 index 0000000000..d23a8a4e80 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/uri.hpp @@ -0,0 +1,44 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// A MongoDB connection string. +/// +/// @see +/// - [Connection Strings (MongoDB Manual)](https://www.mongodb.com/docs/manual/reference/connection-string/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class uri {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::uri. +/// diff --git a/src/mongocxx/include/mongocxx/v1/write_concern-fwd.hpp b/src/mongocxx/include/mongocxx/v1/write_concern-fwd.hpp new file mode 100644 index 0000000000..588e6df485 --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/write_concern-fwd.hpp @@ -0,0 +1,32 @@ +// 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 + +namespace mongocxx { +namespace v1 { + +class write_concern; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Declares @ref mongocxx::v1::write_concern. +/// diff --git a/src/mongocxx/include/mongocxx/v1/write_concern.hpp b/src/mongocxx/include/mongocxx/v1/write_concern.hpp new file mode 100644 index 0000000000..aa07b17b3e --- /dev/null +++ b/src/mongocxx/include/mongocxx/v1/write_concern.hpp @@ -0,0 +1,44 @@ +// 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 + +// + +#include + +namespace mongocxx { +namespace v1 { + +/// +/// Options related to a MongoDB Write Concern. +/// +/// @see +/// - [Write Concern (MongoDB Manual)](https://www.mongodb.com/docs/manual/reference/write-concern/) +/// +/// @attention This feature is experimental! It is not ready for use! +/// +class write_concern {}; + +} // namespace v1 +} // namespace mongocxx + +#include + +/// +/// @file +/// Provides @ref mongocxx::v1::write_concern. +/// diff --git a/src/mongocxx/lib/CMakeLists.txt b/src/mongocxx/lib/CMakeLists.txt index 85728241dc..fbf89fac90 100644 --- a/src/mongocxx/lib/CMakeLists.txt +++ b/src/mongocxx/lib/CMakeLists.txt @@ -121,11 +121,84 @@ set(mongocxx_sources_v_noabi ) set(mongocxx_sources_v1 + mongocxx/v1/aggregate_options.cpp + mongocxx/v1/apm.cpp + mongocxx/v1/auto_encryption.cpp + mongocxx/v1/bulk_write.cpp + mongocxx/v1/change_stream.cpp + mongocxx/v1/client_encryption.cpp + mongocxx/v1/client_session.cpp + mongocxx/v1/client.cpp + mongocxx/v1/collection.cpp mongocxx/v1/config/config.cpp mongocxx/v1/config/export.cpp mongocxx/v1/config/version.cpp + mongocxx/v1/count_options.cpp + mongocxx/v1/cursor.cpp + mongocxx/v1/data_key.cpp + mongocxx/v1/database.cpp + mongocxx/v1/delete_many_options.cpp + mongocxx/v1/delete_many_result.cpp + mongocxx/v1/delete_one_options.cpp + mongocxx/v1/delete_one_result.cpp mongocxx/v1/detail/postlude.cpp mongocxx/v1/detail/prelude.cpp + mongocxx/v1/distinct_options.cpp + mongocxx/v1/encrypt.cpp + mongocxx/v1/estimated_document_count_options.cpp + mongocxx/v1/events/command_failed.cpp + mongocxx/v1/events/command_started.cpp + mongocxx/v1/events/command_succeeded.cpp + mongocxx/v1/events/server_closed.cpp + mongocxx/v1/events/server_description_changed.cpp + mongocxx/v1/events/server_description.cpp + mongocxx/v1/events/server_heartbeat_failed.cpp + mongocxx/v1/events/server_heartbeat_started.cpp + mongocxx/v1/events/server_heartbeat_succeeded.cpp + mongocxx/v1/events/server_opening.cpp + mongocxx/v1/events/topology_closed.cpp + mongocxx/v1/events/topology_description_changed.cpp + mongocxx/v1/events/topology_description.cpp + mongocxx/v1/events/topology_opening.cpp + mongocxx/v1/exception.cpp + mongocxx/v1/find_one_and_delete_options.cpp + mongocxx/v1/find_one_and_replace_options.cpp + mongocxx/v1/find_one_and_update_options.cpp + mongocxx/v1/find_options.cpp + mongocxx/v1/gridfs/bucket.cpp + mongocxx/v1/gridfs/downloader.cpp + mongocxx/v1/gridfs/upload_options.cpp + mongocxx/v1/gridfs/upload_result.cpp + mongocxx/v1/gridfs/uploader.cpp + mongocxx/v1/hint.cpp + mongocxx/v1/indexes.cpp + mongocxx/v1/insert_many_options.cpp + mongocxx/v1/insert_many_result.cpp + mongocxx/v1/insert_one_options.cpp + mongocxx/v1/insert_one_result.cpp + mongocxx/v1/instance.cpp + mongocxx/v1/logger.cpp + mongocxx/v1/pipeline.cpp + mongocxx/v1/pool.cpp + mongocxx/v1/range.cpp + mongocxx/v1/read_concern.cpp + mongocxx/v1/read_preference.cpp + mongocxx/v1/replace_one_options.cpp + mongocxx/v1/replace_one_result.cpp + mongocxx/v1/return_document.cpp + mongocxx/v1/rewrap_many_datakey_options.cpp + mongocxx/v1/rewrap_many_datakey_result.cpp + mongocxx/v1/search_indexes.cpp + mongocxx/v1/server_api.cpp + mongocxx/v1/server_error.cpp + mongocxx/v1/tls.cpp + mongocxx/v1/transaction.cpp + mongocxx/v1/update_many_options.cpp + mongocxx/v1/update_many_result.cpp + mongocxx/v1/update_one_options.cpp + mongocxx/v1/update_one_result.cpp + mongocxx/v1/uri.cpp + mongocxx/v1/write_concern.cpp ) list(APPEND mongocxx_sources diff --git a/src/mongocxx/lib/mongocxx/v1/aggregate_options.cpp b/src/mongocxx/lib/mongocxx/v1/aggregate_options.cpp new file mode 100644 index 0000000000..ce960bf853 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/aggregate_options.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/apm.cpp b/src/mongocxx/lib/mongocxx/v1/apm.cpp new file mode 100644 index 0000000000..b6c003f236 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/apm.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/auto_encryption.cpp b/src/mongocxx/lib/mongocxx/v1/auto_encryption.cpp new file mode 100644 index 0000000000..8ed867b16c --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/auto_encryption.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/bulk_write.cpp b/src/mongocxx/lib/mongocxx/v1/bulk_write.cpp new file mode 100644 index 0000000000..f4a736d035 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/bulk_write.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/change_stream.cpp b/src/mongocxx/lib/mongocxx/v1/change_stream.cpp new file mode 100644 index 0000000000..bfefbc623e --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/change_stream.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/client.cpp b/src/mongocxx/lib/mongocxx/v1/client.cpp new file mode 100644 index 0000000000..aa94c84363 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/client.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/client_encryption.cpp b/src/mongocxx/lib/mongocxx/v1/client_encryption.cpp new file mode 100644 index 0000000000..3ab815821c --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/client_encryption.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/client_session.cpp b/src/mongocxx/lib/mongocxx/v1/client_session.cpp new file mode 100644 index 0000000000..48ccc4ec29 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/client_session.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/collection.cpp b/src/mongocxx/lib/mongocxx/v1/collection.cpp new file mode 100644 index 0000000000..3f05ff5e0c --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/collection.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/count_options.cpp b/src/mongocxx/lib/mongocxx/v1/count_options.cpp new file mode 100644 index 0000000000..f5516db5ec --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/count_options.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/cursor.cpp b/src/mongocxx/lib/mongocxx/v1/cursor.cpp new file mode 100644 index 0000000000..7f365eee6f --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/cursor.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/data_key.cpp b/src/mongocxx/lib/mongocxx/v1/data_key.cpp new file mode 100644 index 0000000000..acabcf1aa9 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/data_key.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/database.cpp b/src/mongocxx/lib/mongocxx/v1/database.cpp new file mode 100644 index 0000000000..7398ba28f8 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/database.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/delete_many_options.cpp b/src/mongocxx/lib/mongocxx/v1/delete_many_options.cpp new file mode 100644 index 0000000000..33f29efb25 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/delete_many_options.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/delete_many_result.cpp b/src/mongocxx/lib/mongocxx/v1/delete_many_result.cpp new file mode 100644 index 0000000000..bdd419f400 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/delete_many_result.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/delete_one_options.cpp b/src/mongocxx/lib/mongocxx/v1/delete_one_options.cpp new file mode 100644 index 0000000000..a2ed7fd572 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/delete_one_options.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/delete_one_result.cpp b/src/mongocxx/lib/mongocxx/v1/delete_one_result.cpp new file mode 100644 index 0000000000..31f430e41c --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/delete_one_result.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/distinct_options.cpp b/src/mongocxx/lib/mongocxx/v1/distinct_options.cpp new file mode 100644 index 0000000000..41422561d3 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/distinct_options.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/encrypt.cpp b/src/mongocxx/lib/mongocxx/v1/encrypt.cpp new file mode 100644 index 0000000000..5acbd1b8b8 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/encrypt.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/estimated_document_count_options.cpp b/src/mongocxx/lib/mongocxx/v1/estimated_document_count_options.cpp new file mode 100644 index 0000000000..24e018e182 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/estimated_document_count_options.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/events/command_failed.cpp b/src/mongocxx/lib/mongocxx/v1/events/command_failed.cpp new file mode 100644 index 0000000000..5b69570be2 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/events/command_failed.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/events/command_started.cpp b/src/mongocxx/lib/mongocxx/v1/events/command_started.cpp new file mode 100644 index 0000000000..08ec712f48 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/events/command_started.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/events/command_succeeded.cpp b/src/mongocxx/lib/mongocxx/v1/events/command_succeeded.cpp new file mode 100644 index 0000000000..458ad5d19e --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/events/command_succeeded.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/events/server_closed.cpp b/src/mongocxx/lib/mongocxx/v1/events/server_closed.cpp new file mode 100644 index 0000000000..50b50a34de --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/events/server_closed.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/events/server_description.cpp b/src/mongocxx/lib/mongocxx/v1/events/server_description.cpp new file mode 100644 index 0000000000..663da5d6e2 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/events/server_description.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/events/server_description_changed.cpp b/src/mongocxx/lib/mongocxx/v1/events/server_description_changed.cpp new file mode 100644 index 0000000000..65ca4a77a7 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/events/server_description_changed.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/events/server_heartbeat_failed.cpp b/src/mongocxx/lib/mongocxx/v1/events/server_heartbeat_failed.cpp new file mode 100644 index 0000000000..d441ef77d8 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/events/server_heartbeat_failed.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/events/server_heartbeat_started.cpp b/src/mongocxx/lib/mongocxx/v1/events/server_heartbeat_started.cpp new file mode 100644 index 0000000000..0361dd2ff7 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/events/server_heartbeat_started.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/events/server_heartbeat_succeeded.cpp b/src/mongocxx/lib/mongocxx/v1/events/server_heartbeat_succeeded.cpp new file mode 100644 index 0000000000..ea644d9f8a --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/events/server_heartbeat_succeeded.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/events/server_opening.cpp b/src/mongocxx/lib/mongocxx/v1/events/server_opening.cpp new file mode 100644 index 0000000000..c7843323ab --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/events/server_opening.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/events/topology_closed.cpp b/src/mongocxx/lib/mongocxx/v1/events/topology_closed.cpp new file mode 100644 index 0000000000..0a280dc670 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/events/topology_closed.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/events/topology_description.cpp b/src/mongocxx/lib/mongocxx/v1/events/topology_description.cpp new file mode 100644 index 0000000000..0cb11dc09e --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/events/topology_description.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/events/topology_description_changed.cpp b/src/mongocxx/lib/mongocxx/v1/events/topology_description_changed.cpp new file mode 100644 index 0000000000..c014711679 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/events/topology_description_changed.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/events/topology_opening.cpp b/src/mongocxx/lib/mongocxx/v1/events/topology_opening.cpp new file mode 100644 index 0000000000..35a14f3139 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/events/topology_opening.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/exception.cpp b/src/mongocxx/lib/mongocxx/v1/exception.cpp new file mode 100644 index 0000000000..38ad005621 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/exception.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/find_one_and_delete_options.cpp b/src/mongocxx/lib/mongocxx/v1/find_one_and_delete_options.cpp new file mode 100644 index 0000000000..f0cb290c23 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/find_one_and_delete_options.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/find_one_and_replace_options.cpp b/src/mongocxx/lib/mongocxx/v1/find_one_and_replace_options.cpp new file mode 100644 index 0000000000..150a9837dd --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/find_one_and_replace_options.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/find_one_and_update_options.cpp b/src/mongocxx/lib/mongocxx/v1/find_one_and_update_options.cpp new file mode 100644 index 0000000000..8d1baee10e --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/find_one_and_update_options.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/find_options.cpp b/src/mongocxx/lib/mongocxx/v1/find_options.cpp new file mode 100644 index 0000000000..789e54ace7 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/find_options.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/gridfs/bucket.cpp b/src/mongocxx/lib/mongocxx/v1/gridfs/bucket.cpp new file mode 100644 index 0000000000..7d7d858c61 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/gridfs/bucket.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/gridfs/downloader.cpp b/src/mongocxx/lib/mongocxx/v1/gridfs/downloader.cpp new file mode 100644 index 0000000000..401d9d1d64 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/gridfs/downloader.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/gridfs/upload_options.cpp b/src/mongocxx/lib/mongocxx/v1/gridfs/upload_options.cpp new file mode 100644 index 0000000000..8a30b18f6a --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/gridfs/upload_options.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/gridfs/upload_result.cpp b/src/mongocxx/lib/mongocxx/v1/gridfs/upload_result.cpp new file mode 100644 index 0000000000..e836cd497e --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/gridfs/upload_result.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/gridfs/uploader.cpp b/src/mongocxx/lib/mongocxx/v1/gridfs/uploader.cpp new file mode 100644 index 0000000000..f828d03a7c --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/gridfs/uploader.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/hint.cpp b/src/mongocxx/lib/mongocxx/v1/hint.cpp new file mode 100644 index 0000000000..f42661e32b --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/hint.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/indexes.cpp b/src/mongocxx/lib/mongocxx/v1/indexes.cpp new file mode 100644 index 0000000000..eec65d28de --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/indexes.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/insert_many_options.cpp b/src/mongocxx/lib/mongocxx/v1/insert_many_options.cpp new file mode 100644 index 0000000000..7be00b39b0 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/insert_many_options.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/insert_many_result.cpp b/src/mongocxx/lib/mongocxx/v1/insert_many_result.cpp new file mode 100644 index 0000000000..4bc85d5cc0 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/insert_many_result.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/insert_one_options.cpp b/src/mongocxx/lib/mongocxx/v1/insert_one_options.cpp new file mode 100644 index 0000000000..0820d1bb3a --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/insert_one_options.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/insert_one_result.cpp b/src/mongocxx/lib/mongocxx/v1/insert_one_result.cpp new file mode 100644 index 0000000000..d327f80d2e --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/insert_one_result.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/instance.cpp b/src/mongocxx/lib/mongocxx/v1/instance.cpp new file mode 100644 index 0000000000..82b5800947 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/instance.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/logger.cpp b/src/mongocxx/lib/mongocxx/v1/logger.cpp new file mode 100644 index 0000000000..d1a70367cd --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/logger.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/pipeline.cpp b/src/mongocxx/lib/mongocxx/v1/pipeline.cpp new file mode 100644 index 0000000000..a37b51f0d3 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/pipeline.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/pool.cpp b/src/mongocxx/lib/mongocxx/v1/pool.cpp new file mode 100644 index 0000000000..b247aa8b4d --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/pool.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/range.cpp b/src/mongocxx/lib/mongocxx/v1/range.cpp new file mode 100644 index 0000000000..e321481bfa --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/range.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/read_concern.cpp b/src/mongocxx/lib/mongocxx/v1/read_concern.cpp new file mode 100644 index 0000000000..caaab1f89e --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/read_concern.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/read_preference.cpp b/src/mongocxx/lib/mongocxx/v1/read_preference.cpp new file mode 100644 index 0000000000..c953cde00a --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/read_preference.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/replace_one_options.cpp b/src/mongocxx/lib/mongocxx/v1/replace_one_options.cpp new file mode 100644 index 0000000000..197b73a98a --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/replace_one_options.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/replace_one_result.cpp b/src/mongocxx/lib/mongocxx/v1/replace_one_result.cpp new file mode 100644 index 0000000000..74e9b7bfaf --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/replace_one_result.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/return_document.cpp b/src/mongocxx/lib/mongocxx/v1/return_document.cpp new file mode 100644 index 0000000000..481c23af9e --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/return_document.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/rewrap_many_datakey_options.cpp b/src/mongocxx/lib/mongocxx/v1/rewrap_many_datakey_options.cpp new file mode 100644 index 0000000000..47cb5bbec5 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/rewrap_many_datakey_options.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/rewrap_many_datakey_result.cpp b/src/mongocxx/lib/mongocxx/v1/rewrap_many_datakey_result.cpp new file mode 100644 index 0000000000..984c8e1c18 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/rewrap_many_datakey_result.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/search_indexes.cpp b/src/mongocxx/lib/mongocxx/v1/search_indexes.cpp new file mode 100644 index 0000000000..add3a180da --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/search_indexes.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/server_api.cpp b/src/mongocxx/lib/mongocxx/v1/server_api.cpp new file mode 100644 index 0000000000..db7813ec12 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/server_api.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/server_error.cpp b/src/mongocxx/lib/mongocxx/v1/server_error.cpp new file mode 100644 index 0000000000..4e03449e62 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/server_error.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/tls.cpp b/src/mongocxx/lib/mongocxx/v1/tls.cpp new file mode 100644 index 0000000000..19f82c4195 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/tls.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/transaction.cpp b/src/mongocxx/lib/mongocxx/v1/transaction.cpp new file mode 100644 index 0000000000..298cf03a14 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/transaction.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/update_many_options.cpp b/src/mongocxx/lib/mongocxx/v1/update_many_options.cpp new file mode 100644 index 0000000000..b5d28b4606 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/update_many_options.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/update_many_result.cpp b/src/mongocxx/lib/mongocxx/v1/update_many_result.cpp new file mode 100644 index 0000000000..fdd6227a11 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/update_many_result.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/update_one_options.cpp b/src/mongocxx/lib/mongocxx/v1/update_one_options.cpp new file mode 100644 index 0000000000..3907ce40f2 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/update_one_options.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/update_one_result.cpp b/src/mongocxx/lib/mongocxx/v1/update_one_result.cpp new file mode 100644 index 0000000000..2e11d542ba --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/update_one_result.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/uri.cpp b/src/mongocxx/lib/mongocxx/v1/uri.cpp new file mode 100644 index 0000000000..a5802ea934 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/uri.cpp @@ -0,0 +1,15 @@ +// 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. + +#include diff --git a/src/mongocxx/lib/mongocxx/v1/write_concern.cpp b/src/mongocxx/lib/mongocxx/v1/write_concern.cpp new file mode 100644 index 0000000000..dc67d7aef1 --- /dev/null +++ b/src/mongocxx/lib/mongocxx/v1/write_concern.cpp @@ -0,0 +1,15 @@ +// 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. + +#include