userver: userver/cache/exceptions.hpp Source File
Loading...
Searching...
No Matches
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 {
17public:
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 {
28public:
29 explicit EmptyDataError(std::string_view cache_name);
30};
31
32} // namespace cache
33
34USERVER_NAMESPACE_END