|  | Leosac
    0.8.0
    Open Source Access Control | 
Provides an implementation of IUserEvent. More...
#include <UserEvent.hpp>
 Inheritance diagram for Leosac::Audit::UserEvent:
 Inheritance diagram for Leosac::Audit::UserEvent: Collaboration diagram for Leosac::Audit::UserEvent:
 Collaboration diagram for Leosac::Audit::UserEvent:| Public Member Functions | |
| virtual | ~UserEvent ()=default | 
| virtual void | target (Auth::UserPtr user) override | 
| Set the user that is targeted by the event.  More... | |
| virtual Auth::UserLPtr | target () const override | 
| Auth::UserId | target_id () const override | 
| Retrieve the user_id that was targeted by this event.  More... | |
| virtual void | before (const std::string &repr) override | 
| An optional JSON representation of the object before the event took place.  More... | |
| const std::string & | before () const override | 
| const std::string & | after () const override | 
| virtual void | after (const std::string &repr) override | 
| An optional JSON representation of the object after the event took place.  More... | |
| std::string | generate_description () const override | 
| Generate a description for this event.  More... | |
|  Public Member Functions inherited from Leosac::Audit::IUserEvent | |
| MAKE_VISITABLE () | |
|  Public Member Functions inherited from Leosac::Audit::IAuditEntry | |
| MAKE_VISITABLE () | |
|  Public Member Functions inherited from Leosac::Tools::IVisitable | |
| virtual void | accept (::Leosac::Tools::BaseVisitor &)=0 | 
| Accept a visitor that may mutate this.  More... | |
| virtual void | accept (::Leosac::Tools::BaseVisitor &) const =0 | 
| Accept a visitor that will not mutate this.  More... | |
|  Public Member Functions inherited from Leosac::Audit::AuditEntry | |
| AuditEntry (const AuditEntry &)=delete | |
| virtual | ~AuditEntry ()=default | 
| virtual AuditEntryId | id () const override | 
| Retrieve the identifier of the entry.  More... | |
| virtual void | finalize () override | 
| Mark the entry as finalized, and update it wrt the database.  More... | |
| virtual bool | finalized () const override | 
| Is this entry finalized.  More... | |
| virtual void | event_mask (const EventMask &mask) override | 
| Set the event mask for the entry.  More... | |
| virtual const EventMask & | event_mask () const override | 
| Retrieve the current event mask.  More... | |
| virtual void | author (Auth::UserPtr user) override | 
| Set the author of the entry.  More... | |
| virtual Auth::UserId | author_id () const override | 
| Retrieve the user id of the author of this entry.  More... | |
| virtual void | set_parent (IAuditEntryPtr parent) override | 
| Set parentas the parent audit entry for this entry.  More... | |
| virtual IAuditEntryPtr | parent () const override | 
| Retrieve the parent of this entry.  More... | |
| virtual void | remove_parent () override | 
| Remove the parent-child relationship between this entry and its parent.  More... | |
| virtual size_t | children_count () const override | 
| Returns the number of children that this entry has.  More... | |
| virtual size_t | version () const override | 
| Returns the ODB version of the object.  More... | |
| virtual void | reload () override | 
| Reload the object from the database.  More... | |
| virtual boost::posix_time::ptime | timestamp () const override | 
| Retrieve unix timestamp.  More... | |
| void | database (DBPtr db) | 
| Set the database pointer.  More... | |
| Static Public Member Functions | |
| static std::shared_ptr< UserEvent > | create_empty () | 
|  Static Public Member Functions inherited from Leosac::Audit::AuditEntry | |
| static AuditEntryPtr | get_last_audit (DBPtr db) | 
| Retrieve the last (finalized) audit entry.  More... | |
| Private Member Functions | |
| UserEvent ()=default | |
| std::string | generate_target_description () const | 
| Generate a small json-string to describe the target user.  More... | |
| Static Private Member Functions | |
| static std::shared_ptr< UserEvent > | create (const DBPtr &database, Auth::UserPtr target_user, AuditEntryPtr parent) | 
| Private Attributes | |
| Auth::UserLWPtr | target_ | 
| std::string | before_ | 
| Optional JSON dump of the object before the event took place.  More... | |
| std::string | after_ | 
| Optional JSON dump of the object after the event took place.  More... | |
| Friends | |
| class | Factory | 
| class | odb::access | 
| Additional Inherited Members | |
|  Protected Member Functions inherited from Leosac::Audit::AuditEntry | |
| AuditEntry () | |
|  Static Protected Member Functions inherited from Leosac::Tools::IVisitable | |
| template<class T > | |
| static bool | visitor_dispatch (T &visited, BaseVisitor &visitor, bool abort_on_failure) | 
|  Protected Attributes inherited from Leosac::Audit::AuditEntry | |
| AuditEntryWPtr | parent_ | 
| std::string | msg_ | 
| Auth::UserLPtr | author_ | 
| The user at the source of the entry.  More... | |
| EventMask | event_mask_ | 
| size_t | duration_ | 
| How long did it take for the Audit object to be finalized.  More... | |
| bool | finalized_ | 
| Audit entry are sometime persisted multiple time before reaching their final state.  More... | |
| DBPtr | database_ | 
| Pointer to the database.  More... | |
| Tools::ElapsedTimeCounter | etc_ | 
| Keep track of how long the object has been alive.  More... | |
Provides an implementation of IUserEvent.
Definition at line 33 of file UserEvent.hpp.
| 
 | privatedefault | 
| 
 | virtualdefault | 
| 
 | overridevirtual | 
Implements Leosac::Audit::IUserEvent.
Definition at line 87 of file UserEvent.cpp.
| 
 | overridevirtual | 
An optional JSON representation of the object after the event took place.
Implements Leosac::Audit::IUserEvent.
Definition at line 69 of file UserEvent.cpp.
| 
 | overridevirtual | 
Implements Leosac::Audit::IUserEvent.
Definition at line 82 of file UserEvent.cpp.
| 
 | overridevirtual | 
An optional JSON representation of the object before the event took place.
Implements Leosac::Audit::IUserEvent.
Definition at line 63 of file UserEvent.cpp.
| 
 | staticprivate | 
Definition at line 30 of file UserEvent.cpp.
| 
 | static | 
Definition at line 118 of file UserEvent.cpp.
| 
 | overridevirtual | 
Generate a description for this event.
todo: should be pure virtual
Reimplemented from Leosac::Audit::IAuditEntry.
Definition at line 92 of file UserEvent.cpp.
| 
 | private | 
Generate a small json-string to describe the target user.
Definition at line 107 of file UserEvent.cpp.
| 
 | overridevirtual | 
Implements Leosac::Audit::IUserEvent.
Definition at line 123 of file UserEvent.cpp.
| 
 | overridevirtual | 
Set the user that is targeted by the event.
Implements Leosac::Audit::IUserEvent.
Definition at line 57 of file UserEvent.cpp.
| 
 | overridevirtual | 
Retrieve the user_id that was targeted by this event.
Implements Leosac::Audit::IUserEvent.
Definition at line 75 of file UserEvent.cpp.
| 
 | friend | 
Definition at line 38 of file UserEvent.hpp.
| 
 | friend | 
Definition at line 84 of file UserEvent.hpp.
| 
 | private | 
Optional JSON dump of the object after the event took place.
Definition at line 82 of file UserEvent.hpp.
| 
 | private | 
Optional JSON dump of the object before the event took place.
Definition at line 77 of file UserEvent.hpp.
| 
 | private | 
Definition at line 72 of file UserEvent.hpp.