userver: userver/cache/update_type.hpp Source File
Loading...
Searching...
No Matches
update_type.hpp
Go to the documentation of this file.
1#pragma once
2
3/// @file userver/cache/update_type.hpp
4/// @brief Enums representing periodic update types for `CachingComponentBase`
5
6#include <string_view>
7
8#include <userver/formats/json_fwd.hpp>
9#include <userver/yaml_config/fwd.hpp>
10
11USERVER_NAMESPACE_BEGIN
12
13namespace cache {
14
15/// Type of `CachingComponentBase` update
16enum class UpdateType {
17 kFull, ///< requests all the items, starting from scratch
18 kIncremental, ///< requests only newly updated items
19};
20
21UpdateType Parse(const formats::json::Value& value, formats::parse::To<UpdateType>);
22
23std::string_view ToString(UpdateType update_type);
24
25/// Update types allowed for a `CachingComponentBase` instance by static config
27 kFullAndIncremental,
28 kOnlyFull,
29 kOnlyIncremental,
30};
31
33
34std::string_view ToString(AllowedUpdateTypes allowed_update_types);
35
36} // namespace cache
37
38USERVER_NAMESPACE_END