Couchbase C++ SDK 1.0.4 (rev. 5355b0f)
Loading...
Searching...
No Matches
update_collection_options.hxx
Go to the documentation of this file.
1/* -*- Mode: C++; tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- */
2/*
3 * Copyright 2020-Present Couchbase, Inc.
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17
18#pragma once
19
21
22#include <cstdint>
23#include <memory>
24#include <optional>
25
26namespace couchbase
27{
28struct update_collection_options : public common_options<update_collection_options> {
29public:
36 struct built : public common_options<update_collection_options>::built {
37 };
38
50 [[nodiscard]] auto build() const -> built
51 {
52 return { build_common_options() };
53 }
54};
55
65 std::optional<std::int32_t> max_expiry{};
66
70 std::optional<bool> history{};
71};
72
73using update_collection_handler = std::function<void(error)>;
74} // namespace couchbase
Common options that used by most operations.
Definition common_options.hxx:38
auto build_common_options() const -> built
Definition common_options.hxx:103
Definition error.hxx:30
Represents a single item from the result of collection::scan()
Definition allow_querying_search_index_options.hxx:28
std::function< void(error)> update_collection_handler
Definition update_collection_options.hxx:73
Immutable value object representing consistent options.
Definition update_collection_options.hxx:36
Definition update_collection_options.hxx:28
auto build() const -> built
Validates the options and returns them as an immutable value.
Definition update_collection_options.hxx:50
The settings that should be updated for the collection.
Definition update_collection_options.hxx:59
std::optional< bool > history
Whether history retention should be enabled.
Definition update_collection_options.hxx:70
std::optional< std::int32_t > max_expiry
The maximum expiry, in seconds, for documents in this collection.
Definition update_collection_options.hxx:65