21 #include <bsoncxx/document/value.hpp>
22 #include <bsoncxx/stdx/optional.hpp>
23 #include <bsoncxx/stdx/string_view.hpp>
24 #include <bsoncxx/types/bson_value/view.hpp>
25 #include <bsoncxx/view_or_value.hpp>
26 #include <mongocxx/client_session.hpp>
27 #include <mongocxx/collection.hpp>
28 #include <mongocxx/result/gridfs/upload.hpp>
29 #include <mongocxx/stdx.hpp>
31 #include <mongocxx/config/prelude.hpp>
34 MONGOCXX_INLINE_NAMESPACE_BEGIN
71 explicit operator
bool() const noexcept;
91 void write(const std::uint8_t* bytes, std::
size_t length);
105 result::gridfs::upload close();
123 std::int32_t chunk_size() const;
150 bsoncxx::types::bson_value::view
id,
151 stdx::string_view filename,
154 std::int32_t chunk_size,
155 stdx::optional<
bsoncxx::document::view_or_value> metadata = {});
157 MONGOCXX_PRIVATE
void finish_chunk();
158 MONGOCXX_PRIVATE
void flush_chunks();
160 class MONGOCXX_PRIVATE impl;
162 MONGOCXX_PRIVATE impl& _get_impl();
163 MONGOCXX_PRIVATE
const impl& _get_impl()
const;
165 std::unique_ptr<impl> _impl;
169 MONGOCXX_INLINE_NAMESPACE_END