userver: userver/cache/exceptions.hpp Source File
⚠️ This is the documentation for an old userver version. Click here to switch to the latest version.
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages Concepts
exceptions.hpp
Go to the documentation of this file.
1#pragma once
2
3/// @file userver/cache/exceptions.hpp
4/// @brief Exceptions thrown by components::CachingComponentBase
5
6#include <stdexcept>
7#include <string>
8#include <string_view>
9
10USERVER_NAMESPACE_BEGIN
11
12namespace cache {
13
14/// Thrown by components::CachingComponentBase::Get if the cache is empty and
15/// `MayReturnNull` returns `false` (as by default).
16class EmptyCacheError final : public std::runtime_error {
17 public:
18 explicit EmptyCacheError(std::string_view cache_name);
19};
20
21/// Thrown by components::CachingComponentBase::PreAssignCheck when the new
22/// value does not pass the check.
23class DataError : public std::runtime_error {
24 using std::runtime_error::runtime_error;
25};
26
27class EmptyDataError final : public DataError {
28 public:
29 explicit EmptyDataError(std::string_view cache_name);
30};
31
32} // namespace cache
33
34USERVER_NAMESPACE_END