lintel 0.2.0
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | List of all members
lintel::UserApi Class Reference

#include <UserApi.h>

Public Member Functions

 UserApi (const std::shared_ptr< ClientProvider > &clientProvider)
 
virtual ~UserApi ()=default
 
virtual std::optional< UserDto > loginOf (const UserLoginDto &userLoginDto)
 
virtual bool logoutOf (const UserTokenDto &userTokenDto)
 
virtual bool changePasswordOf (const UserPasswordChangeDto &passwordChangeDto)
 
virtual std::vector< UserSessionDto > sessionsOf ()
 
virtual bool revokeSessionOf (const std::string &sessionId)
 
virtual bool isLoggedIn ()
 
virtual std::vector< GroupDto > allOf ()
 
virtual std::vector< GroupDto > allOf (const std::string &groupName)
 
virtual std::vector< GroupDto > allOf (const std::string &groupName, bool isVirtualGroup)
 
virtual std::vector< GroupDto > allOf (bool isVirtualGroup)
 
virtual std::vector< UserDto > allUsersOf ()
 
virtual std::vector< UserDto > allUsersOf (const std::string &userName)
 
virtual void createOf (const UserDto &userDto)
 
virtual void updateOf (const std::string &userName, const std::set< std::string > &addGroups, const std::set< std::string > &removeGroups)
 
virtual void deleteOf (const std::vector< std::string > &userNames)
 

Protected Member Functions

 UserApi ()=default
 

Detailed Description

API client for user authentication and management via HTTP

Constructor & Destructor Documentation

◆ UserApi() [1/2]

lintel::UserApi::UserApi ( )
protecteddefault

◆ UserApi() [2/2]

lintel::UserApi::UserApi ( const std::shared_ptr< ClientProvider > &  clientProvider)
explicit

◆ ~UserApi()

virtual lintel::UserApi::~UserApi ( )
virtualdefault

Virtual destructor: controllers hold a UserApi and may delete it through this interface

Member Function Documentation

◆ allOf() [1/4]

virtual std::vector< GroupDto > lintel::UserApi::allOf ( )
virtual
Returns
all groups

◆ allOf() [2/4]

virtual std::vector< GroupDto > lintel::UserApi::allOf ( bool  isVirtualGroup)
virtual
Parameters
isVirtualGroupfilter by virtual flag; return matching groups

◆ allOf() [3/4]

virtual std::vector< GroupDto > lintel::UserApi::allOf ( const std::string &  groupName)
virtual
Parameters
groupNamefilter by name; return matching groups

◆ allOf() [4/4]

virtual std::vector< GroupDto > lintel::UserApi::allOf ( const std::string &  groupName,
bool  isVirtualGroup 
)
virtual
Parameters
groupNamefilter by name;
isVirtualGroupfilter by virtual flag

◆ allUsersOf() [1/2]

virtual std::vector< UserDto > lintel::UserApi::allUsersOf ( )
virtual
Returns
all users

◆ allUsersOf() [2/2]

virtual std::vector< UserDto > lintel::UserApi::allUsersOf ( const std::string &  userName)
virtual
Parameters
userNamefilter by name; return matching users

◆ changePasswordOf()

virtual bool lintel::UserApi::changePasswordOf ( const UserPasswordChangeDto &  passwordChangeDto)
virtual

Change a user's password.

Parameters
passwordChangeDtotarget user, old (self-service) and new password
Returns
true on success

◆ createOf()

virtual void lintel::UserApi::createOf ( const UserDto &  userDto)
virtual

Create a new user

◆ deleteOf()

virtual void lintel::UserApi::deleteOf ( const std::vector< std::string > &  userNames)
virtual

Delete users by name

◆ isLoggedIn()

virtual bool lintel::UserApi::isLoggedIn ( )
virtual
Returns
true if a user is currently logged in

◆ loginOf()

virtual std::optional< UserDto > lintel::UserApi::loginOf ( const UserLoginDto &  userLoginDto)
virtual
Parameters
userLoginDtologin credentials; return authenticated user if successful

◆ logoutOf()

virtual bool lintel::UserApi::logoutOf ( const UserTokenDto &  userTokenDto)
virtual
Parameters
userTokenDtotoken to invalidate; return true on success

◆ revokeSessionOf()

virtual bool lintel::UserApi::revokeSessionOf ( const std::string &  sessionId)
virtual
Parameters
sessionIdid of the session to revoke; return true on success

◆ sessionsOf()

virtual std::vector< UserSessionDto > lintel::UserApi::sessionsOf ( )
virtual
Returns
all active sessions of the current user

◆ updateOf()

virtual void lintel::UserApi::updateOf ( const std::string &  userName,
const std::set< std::string > &  addGroups,
const std::set< std::string > &  removeGroups 
)
virtual

Update user group memberships

Parameters
userNameuser to update
addGroupsgroups to add
removeGroupsgroups to remove

The documentation for this class was generated from the following file: