Leosac
0.8.0
Open Source Access Control
|
Provides an implementation of IUserGroupMembershipEvent. More...
#include <UserGroupMembershipEvent.hpp>
Public Member Functions | |
virtual | ~UserGroupMembershipEvent ()=default |
virtual void | target_user (Auth::UserPtr user) override |
The user that joined or left the group. More... | |
virtual void | target_group (Auth::GroupPtr grp) override |
The group that gained or lost an user. More... | |
Auth::UserId | target_user_id () const override |
Auth::GroupId | target_group_id () const override |
std::string | generate_description () const override |
Generate a description for this event. More... | |
Public Member Functions inherited from Leosac::Audit::IUserGroupMembershipEvent | |
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 parent as 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... | |
Private Member Functions | |
UserGroupMembershipEvent ()=default | |
std::string | generate_target_user_description () const |
std::string | generate_target_group_description () const |
Static Private Member Functions | |
static UserGroupMembershipEventPtr | create (const DBPtr &database, Auth::GroupPtr target_group, Auth::UserPtr target_user, AuditEntryPtr parent) |
Private Attributes | |
Auth::GroupLWPtr | target_group_ |
Auth::UserLWPtr | target_user_ |
Auth::GroupId | target_group_id_ |
This is equals to target_group_->id(). More... | |
Auth::UserId | target_user_id_ |
Set to target_user_->id() More... | |
Friends | |
class | Factory |
class | odb::access |
Additional Inherited Members | |
Static Public Member Functions inherited from Leosac::Audit::AuditEntry | |
static AuditEntryPtr | get_last_audit (DBPtr db) |
Retrieve the last (finalized) audit entry. More... | |
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 IUserGroupMembershipEvent.
Definition at line 33 of file UserGroupMembershipEvent.hpp.
|
privatedefault |
|
virtualdefault |
|
staticprivate |
Definition at line 42 of file UserGroupMembershipEvent.cpp.
|
overridevirtual |
Generate a description for this event.
todo: should be pure virtual
Reimplemented from Leosac::Audit::IAuditEntry.
Definition at line 83 of file UserGroupMembershipEvent.cpp.
|
private |
Definition at line 110 of file UserGroupMembershipEvent.cpp.
|
private |
Definition at line 98 of file UserGroupMembershipEvent.cpp.
|
overridevirtual |
The group that gained or lost an user.
Implements Leosac::Audit::IUserGroupMembershipEvent.
Definition at line 35 of file UserGroupMembershipEvent.cpp.
|
overridevirtual |
Implements Leosac::Audit::IUserGroupMembershipEvent.
Definition at line 76 of file UserGroupMembershipEvent.cpp.
|
overridevirtual |
The user that joined or left the group.
Implements Leosac::Audit::IUserGroupMembershipEvent.
Definition at line 29 of file UserGroupMembershipEvent.cpp.
|
overridevirtual |
Implements Leosac::Audit::IUserGroupMembershipEvent.
Definition at line 69 of file UserGroupMembershipEvent.cpp.
|
friend |
Definition at line 39 of file UserGroupMembershipEvent.hpp.
|
friend |
Definition at line 82 of file UserGroupMembershipEvent.hpp.
|
private |
Definition at line 64 of file UserGroupMembershipEvent.hpp.
|
private |
This is equals to target_group_->id().
The reason for this data duplication is to keep a trail of which group this event used to refer to.
Definition at line 75 of file UserGroupMembershipEvent.hpp.
|
private |
Definition at line 67 of file UserGroupMembershipEvent.hpp.
|
private |
Set to target_user_->id()
Definition at line 80 of file UserGroupMembershipEvent.hpp.