Leosac
0.8.0
Open Source Access Control
|
This service provides various update management utilities. More...
#include <UpdateService.hpp>
Public Member Functions | |
std::vector< UpdateDescriptorPtr > | check_update () |
IUpdatePtr | create_update (const std::string &update_descriptor_uuid, const ExecutionContext &ec) |
Create an Update object corresponding to the update descriptor whose uuid is update_descriptor_uuid . More... | |
std::vector< IUpdatePtr > | pending_updates () |
Retrieve the list of pending updates. More... | |
void | ack_update (IUpdatePtr update, const ExecutionContext &ec) |
void | cancel_update (IUpdatePtr update, const ExecutionContext &ec) |
void | register_backend (UpdateBackendPtr backend) |
Register a backend object. More... | |
Public Member Functions inherited from Leosac::ExtensibleSerializer< json, IUpdate, const SecurityContext & > | |
json | serialize (const IUpdate &input, AdditionalArgs &&... args) const |
void | register_serializer (Callable &&callable) |
Register a serializer for T. More... | |
void | unregister_serializer () |
Private Types | |
using | CheckUpdateT = boost::signals2::signal< std::vector< UpdateDescriptorPtr >(void), VectorAppenderCombiner< UpdateDescriptorPtr > > |
using | CreateUpdateT = boost::signals2::signal< IUpdatePtr(const UpdateDescriptor &, const ExecutionContext &), AtMostOneCombiner< IUpdatePtr > > |
using | AckUpdateT = boost::signals2::signal< void(IUpdatePtr, const ExecutionContext &)> |
using | CancelUpdateT = boost::signals2::signal< void(IUpdatePtr, const ExecutionContext &)> |
Private Attributes | |
std::mutex | mutex_ |
CheckUpdateT | check_update_sig_ |
CreateUpdateT | create_update_sig_ |
AckUpdateT | ack_update_sig_ |
CancelUpdateT | cancel_update_sig_ |
std::map< std::string, UpdateDescriptorPtr > | published_descriptors_ |
Additional Inherited Members | |
Public Types inherited from Leosac::ExtensibleSerializer< json, IUpdate, const SecurityContext & > | |
using | SerializationCallable = std::function< json(const IUpdate &, AdditionalArgs &&...)> |
Callable type for serialization. More... | |
This service provides various update management utilities.
It's goal is to unify update management between various modules. Modules can register their UpdateBackend object against this service in order to participates in update detection.
Definition at line 126 of file UpdateService.hpp.
|
private |
Definition at line 175 of file UpdateService.hpp.
|
private |
Definition at line 178 of file UpdateService.hpp.
|
private |
Definition at line 167 of file UpdateService.hpp.
|
private |
Definition at line 172 of file UpdateService.hpp.
void Leosac::update::UpdateService::ack_update | ( | IUpdatePtr | update, |
const ExecutionContext & | ec | ||
) |
Definition at line 103 of file UpdateService.cpp.
void Leosac::update::UpdateService::cancel_update | ( | IUpdatePtr | update, |
const ExecutionContext & | ec | ||
) |
Definition at line 108 of file UpdateService.cpp.
std::vector< UpdateDescriptorPtr > Leosac::update::UpdateService::check_update | ( | ) |
Definition at line 52 of file UpdateService.cpp.
IUpdatePtr Leosac::update::UpdateService::create_update | ( | const std::string & | update_descriptor_uuid, |
const ExecutionContext & | ec | ||
) |
Create an Update object corresponding to the update descriptor whose uuid is update_descriptor_uuid
.
Definition at line 91 of file UpdateService.cpp.
std::vector< IUpdatePtr > Leosac::update::UpdateService::pending_updates | ( | ) |
Retrieve the list of pending updates.
Definition at line 71 of file UpdateService.cpp.
void Leosac::update::UpdateService::register_backend | ( | UpdateBackendPtr | backend | ) |
Register a backend object.
The backend is automatically deregistered when the backend
object is deleted.
Definition at line 30 of file UpdateService.cpp.
|
private |
Definition at line 182 of file UpdateService.hpp.
|
private |
Definition at line 183 of file UpdateService.hpp.
|
private |
Definition at line 180 of file UpdateService.hpp.
|
private |
Definition at line 181 of file UpdateService.hpp.
|
mutableprivate |
Definition at line 163 of file UpdateService.hpp.
|
private |
Definition at line 185 of file UpdateService.hpp.