本文整理汇总了C++中options::update::write_concern方法的典型用法代码示例。如果您正苦于以下问题:C++ update::write_concern方法的具体用法?C++ update::write_concern怎么用?C++ update::write_concern使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类options::update
的用法示例。
在下文中一共展示了update::write_concern方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: bulk_op
stdx::optional<result::update> collection::update_one(view_or_value filter,
view_or_value update,
const options::update& options) {
options::bulk_write bulk_opts;
bulk_opts.ordered(false);
if (options.bypass_document_validation()) {
bulk_opts.bypass_document_validation(*options.bypass_document_validation());
}
if (options.write_concern()) {
bulk_opts.write_concern(*options.write_concern());
}
class bulk_write bulk_op(bulk_opts);
model::update_one update_op(filter, update);
if (options.collation()) {
update_op.collation(*options.collation());
}
if (options.upsert()) {
update_op.upsert(*options.upsert());
}
bulk_op.append(update_op);
auto result = bulk_write(bulk_op);
if (!result) {
return stdx::nullopt;
}
return stdx::optional<result::update>(result::update(std::move(result.value())));
}
示例2: bulk_op
bsoncxx::stdx::optional<result::update> collection::update_one(bsoncxx::document::view filter,
bsoncxx::document::view update,
const options::update& options) {
class bulk_write bulk_op(false);
model::update_one update_op(filter, update);
if (options.upsert()) update_op.upsert(options.upsert().value());
bulk_op.append(update_op);
if (options.write_concern()) bulk_op.write_concern(*options.write_concern());
auto result = bulk_write(bulk_op);
if (!result) {
return bsoncxx::stdx::optional<result::update>();
}
return bsoncxx::stdx::optional<result::update>(result::update(std::move(result.value())));
}
示例3: bulk_op
stdx::optional<result::update> collection::update_many(view_or_value filter, view_or_value update,
const options::update& options) {
class bulk_write bulk_op(false);
model::update_many update_op(filter, update);
if (options.upsert()) update_op.upsert(options.upsert().value());
bulk_op.append(update_op);
if (options.bypass_document_validation())
bulk_op.bypass_document_validation(*options.bypass_document_validation());
if (options.write_concern()) bulk_op.write_concern(*options.write_concern());
auto result = bulk_write(bulk_op);
if (!result) {
return stdx::optional<result::update>();
}
return stdx::optional<result::update>(result::update(std::move(result.value())));
}
示例4: bulk_op
stdx::optional<result::replace_one> collection::replace_one(view_or_value filter,
view_or_value replacement,
const options::update& options) {
options::bulk_write bulk_opts;
bulk_opts.ordered(false);
if (options.bypass_document_validation())
bulk_opts.bypass_document_validation(*options.bypass_document_validation());
if (options.write_concern()) bulk_opts.write_concern(*options.write_concern());
class bulk_write bulk_op(bulk_opts);
model::replace_one replace_op(filter, replacement);
if (options.upsert()) replace_op.upsert(options.upsert().value());
bulk_op.append(replace_op);
auto result = bulk_write(bulk_op);
if (!result) {
return stdx::optional<result::replace_one>();
}
return stdx::optional<result::replace_one>(result::replace_one(std::move(result.value())));
};