57 "The serializer didn't set a type.");
63 : security_context_(sc)
125 "Cannot retrieve Audit::Serializer::JSONService. Since this a " 126 "core service, something must be very wrong.");
virtual void cannot_visit(const Tools::IVisitable &visitable) override
Called when no "hardcoded" audit type match, this method will delegate to runtime-registered serializ...
static json serialize(const Audit::IDoorEvent &in, const SecurityContext &sc)
This is the header file for a generated source file, GitSHA1.cpp.
static SecurityContext & instance()
static json serialize(const Audit::IZoneEvent &in, const SecurityContext &sc)
static json serialize(const Audit::IScheduleEvent &in, const SecurityContext &sc)
Interface to audit object that take care of tracking user/group membership change.
Interface that describes an Audit object for group related event.
static std::string type_name(const Audit::IAuditEntry &in)
Returns the "type-name" of the audit entry.
static json serialize(const Audit::ICredentialEvent &in, const SecurityContext &sc)
ServiceRegistry & get_service_registry()
A function to retrieve the ServiceRegistry from pretty much anywhere.
static json serialize(const Audit::IUserGroupMembershipEvent &in, const SecurityContext &sc)
static json serialize(const Audit::IUpdateEvent &in, const SecurityContext &sc)
Audit interface to Schedule related events.
static json serialize(const Audit::IUserEvent &in, const SecurityContext &sc)
static json serialize(const Audit::IWSAPICall &in, const SecurityContext &sc)
Base interface to Audit object.
Interface that describes an Audit object for zone related event.
json result_
Store the result here because we can't return from the visit() method.
static json serialize(const Audit::IGroupEvent &in, const SecurityContext &sc)
This service manages runtime registered serializer that target AuditEntry object. ...
A SecurityContext is used to query permission while doing an operation.
const SecurityContext & security_context_
Reference to the security context.
#define ASSERT_LOG(cond, msg)
Interface for update-related event.
An audit entry dedicated to tracing API call.
std::shared_ptr< ServiceInterface > get_service() const
Retrieve the service instance implementing the ServiceInterface, or nullptr if no such service was re...
static json serialize(const Audit::IAuditEntry &in, const SecurityContext &sc)
Perform deep serialization of the AuditEntry in.
HelperSerialize(const SecurityContext &sc)
virtual void visit(const Audit::IUserEvent &t) override
Interface that describes an Audit object for door related event.
std::enable_if_t< is_shared_ptr_v< Out >, Out > assert_cast(const std::shared_ptr< In > &in)
Audit interface to Credential related events.
Interface that describes an Audit object when a user-related event happens.
Non static helper that can visit a core audit object.