12#ifndef RTCTK_COMPONENTFRAMEWORK_TEST_FAKEREPOSITORYSUBSCRIBER_HPP
13#define RTCTK_COMPONENTFRAMEWORK_TEST_FAKEREPOSITORYSUBSCRIBER_HPP
107 template <
typename T>
This class provides a wrapper for a data point path.
Definition dataPointPath.hpp:76
std::function< void(const DataPointPath &)> CallbackType
Signature of the callback functions that can be registered with the repository requests.
Definition repositoryIf.hpp:60
std::function< void(std::exception_ptr)> ErrorCallbackType
Definition repositorySubscriberIf.hpp:48
std::function< void(const DataPointPath &, const MetaData &)> NotifyCallbackType
Definition repositorySubscriberIf.hpp:47
size_t SubscriptionId
Definition repositorySubscriberIf.hpp:50
RepositorySubscriberIf()=default
Definition requestDispatcher.hpp:36
Definition requestDispatcher.hpp:30
bool ShouldInvokeErrorCallbacks()
Definition fakeRepositorySubscriber.cpp:287
Data & GetDataNode(const DataPointPath &path) override
Definition fakeRepositorySubscriber.cpp:181
void InvokeRequestHandler(std::any &request) override
Definition fakeRepositorySubscriber.cpp:191
void ExistsImpl(detail::ExistsRequest &req)
Definition fakeRepositorySubscriber.cpp:89
static RequestDispatcher< FakeRepositorySubscriber >::TableEntries BindTypeHandlers()
void GetChildrenImpl(detail::GetChildrenRequest &req)
Definition fakeRepositorySubscriber.cpp:93
FakeRepositorySubscriber()
Definition fakeRepositorySubscriber.cpp:20
void InvokeDeleteCallbacks(const DataPointPath &)
Definition fakeRepositorySubscriber.cpp:265
void PartialWriteImpl(detail::PartialWriteRequest< T > &req)
Definition fakeRepositorySubscriber.cpp:63
void UnsubscribeImpl(detail::UnsubscribeRequest &req)
Definition fakeRepositorySubscriber.cpp:140
void CreateImpl(detail::CreateRequest< T > &req)
Definition fakeRepositorySubscriber.cpp:33
void WriteMetaDataImpl(detail::WriteMetaDataRequest &req)
Definition fakeRepositorySubscriber.cpp:76
void InvokeCreateCallbacks(const DataPointPath &)
Definition fakeRepositorySubscriber.cpp:243
~FakeRepositorySubscriber() override=default
void ReadMetaDataImpl(detail::ReadMetaDataRequest &req)
Definition fakeRepositorySubscriber.cpp:72
static const RequestDispatcher< FakeRepositorySubscriber > S_REQUEST_DISPATCHER
Definition fakeRepositorySubscriber.hpp:113
void WriteImpl(detail::WriteRequest< T > &req)
Definition fakeRepositorySubscriber.cpp:48
void InvokeWriteCallbacks(const DataPointPath &)
Definition fakeRepositorySubscriber.cpp:195
void CreateLinkImpl(detail::CreateSymlinkRequest &req)
Definition fakeRepositorySubscriber.cpp:97
std::list< ValueSubscription > m_value_subscriptions
Definition fakeRepositorySubscriber.hpp:104
void CreateDeleteSubscribeImpl(detail::CreateDeleteSubscribeRequest &req)
Definition fakeRepositorySubscriber.cpp:174
void InvokeErrorCallbacks()
Definition fakeRepositorySubscriber.cpp:292
void PartialReadImpl(detail::PartialReadRequest< T > &req)
Definition fakeRepositorySubscriber.cpp:58
void DeleteImpl(detail::DeleteRequest &req)
Definition fakeRepositorySubscriber.cpp:80
void UpdateLinkImpl(detail::UpdateSymlinkRequest &req)
Definition fakeRepositorySubscriber.cpp:106
void SubscribeImpl(detail::ValueSubscribeRequest &req)
Definition fakeRepositorySubscriber.cpp:132
Data m_invoke_error_callbacks
Stores a boolean flag indicating if subscription callbacks should produce errors for testing.
Definition fakeRepositorySubscriber.hpp:120
void ReadImpl(detail::ReadRequest< T > &req)
Definition fakeRepositorySubscriber.cpp:43
std::list< CreateDeleteSubscription > m_create_delete_subscriptions
Definition fakeRepositorySubscriber.hpp:105
FakeRepository()
Definition fakeRepository.cpp:78
Header file for an in-memory fake RepositoryIf.
Definition fakeClock.cpp:14
Header file for RepositorySubscriberIf and related base classes.
Definition repositorySubscriberIf.ipp:33
Definition repositoryIf.ipp:39
Definition repositoryIf.ipp:123
Definition repositoryIf.ipp:47
Definition repositoryIf.ipp:52
Definition repositoryIf.ipp:58
Definition repositoryIf.ipp:90
Definition repositoryIf.ipp:101
Definition repositoryIf.ipp:66
Definition repositorySubscriberIf.ipp:40
Definition repositoryIf.ipp:129
Definition repositorySubscriberIf.ipp:26
Definition repositoryIf.ipp:80
CallbackType cb_created
Definition fakeRepositorySubscriber.hpp:96
std::atomic< size_t > cb_error_busy
Definition fakeRepositorySubscriber.hpp:101
std::atomic< size_t > cb_created_busy
Definition fakeRepositorySubscriber.hpp:99
std::atomic< size_t > cb_deleted_busy
Definition fakeRepositorySubscriber.hpp:100
ErrorCallbackType cb_error
Definition fakeRepositorySubscriber.hpp:98
SubscriptionId id
Definition fakeRepositorySubscriber.hpp:95
CallbackType cb_deleted
Definition fakeRepositorySubscriber.hpp:97
CreateDeleteSubscription(SubscriptionId, CallbackType, CallbackType, ErrorCallbackType)
Definition fakeRepositorySubscriber.cpp:124
std::atomic< size_t > cb_error_busy
Definition fakeRepositorySubscriber.hpp:90
SubscriptionId id
Definition fakeRepositorySubscriber.hpp:85
DataPointPath path
Definition fakeRepositorySubscriber.hpp:86
ErrorCallbackType cb_error
Definition fakeRepositorySubscriber.hpp:88
ValueSubscription(SubscriptionId, const DataPointPath &, NotifyCallbackType, ErrorCallbackType)
Definition fakeRepositorySubscriber.cpp:117
NotifyCallbackType cb_value
Definition fakeRepositorySubscriber.hpp:87
std::atomic< size_t > cb_value_busy
Definition fakeRepositorySubscriber.hpp:89
Definition fakeRepository.hpp:32