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_view>
8
9USERVER_NAMESPACE_BEGIN
10
11namespace cache {
12
13/// Thrown by components::CachingComponentBase::Get if the cache is empty and
14/// `MayReturnNull` returns `false` (as by default).
15class EmptyCacheError final : public std::runtime_error {
16public:
17 explicit EmptyCacheError(std::string_view cache_name);
18};
19
20/// Thrown by components::CachingComponentBase::PreAssignCheck when the new
21/// value does not pass the check.
22class DataError : public std::runtime_error {
23 using std::runtime_error::runtime_error;
24};
25
26class EmptyDataError final : public DataError {
27public:
28 explicit EmptyDataError(std::string_view cache_name);
29};
30
31} // namespace cache
32
33USERVER_NAMESPACE_END