PACS System 0.1.0
PACS DICOM system library
Loading...
Searching...
No Matches
kcenon::pacs::security::security_storage_interface Class Referenceabstract

Abstract interface for persisting security data (Users, Roles) More...

#include <security_storage_interface.h>

Collaboration diagram for kcenon::pacs::security::security_storage_interface:
Collaboration graph

Public Types

template<typename T >
using Result = kcenon::common::Result<T>
 
using VoidResult = kcenon::common::VoidResult
 

Public Member Functions

virtual ~security_storage_interface ()=default
 
virtual auto create_user (const User &user) -> VoidResult=0
 
virtual auto get_user (std::string_view id) -> Result< User >=0
 
virtual auto get_user_by_username (std::string_view username) -> Result< User >=0
 
virtual auto update_user (const User &user) -> VoidResult=0
 
virtual auto delete_user (std::string_view id) -> VoidResult=0
 
virtual auto get_users_by_role (Role role) -> Result< std::vector< User > >=0
 

Protected Member Functions

 security_storage_interface ()=default
 
 security_storage_interface (const security_storage_interface &)=delete
 
security_storage_interfaceoperator= (const security_storage_interface &)=delete
 
 security_storage_interface (security_storage_interface &&)=default
 
security_storage_interfaceoperator= (security_storage_interface &&)=default
 

Detailed Description

Abstract interface for persisting security data (Users, Roles)

Definition at line 26 of file security_storage_interface.h.

Member Typedef Documentation

◆ Result

◆ VoidResult

Definition at line 29 of file security_storage_interface.h.

Constructor & Destructor Documentation

◆ ~security_storage_interface()

virtual kcenon::pacs::security::security_storage_interface::~security_storage_interface ( )
virtualdefault

◆ security_storage_interface() [1/3]

kcenon::pacs::security::security_storage_interface::security_storage_interface ( )
protecteddefault

◆ security_storage_interface() [2/3]

kcenon::pacs::security::security_storage_interface::security_storage_interface ( const security_storage_interface & )
protecteddelete

◆ security_storage_interface() [3/3]

kcenon::pacs::security::security_storage_interface::security_storage_interface ( security_storage_interface && )
protecteddefault

Member Function Documentation

◆ create_user()

virtual auto kcenon::pacs::security::security_storage_interface::create_user ( const User & user) -> VoidResult
nodiscardpure virtual

◆ delete_user()

virtual auto kcenon::pacs::security::security_storage_interface::delete_user ( std::string_view id) -> VoidResult
nodiscardpure virtual

◆ get_user()

virtual auto kcenon::pacs::security::security_storage_interface::get_user ( std::string_view id) -> Result< User >
nodiscardpure virtual

◆ get_user_by_username()

virtual auto kcenon::pacs::security::security_storage_interface::get_user_by_username ( std::string_view username) -> Result< User >
nodiscardpure virtual

◆ get_users_by_role()

virtual auto kcenon::pacs::security::security_storage_interface::get_users_by_role ( Role role) -> Result< std::vector< User > >
nodiscardpure virtual

◆ operator=() [1/2]

security_storage_interface & kcenon::pacs::security::security_storage_interface::operator= ( const security_storage_interface & )
protecteddelete

◆ operator=() [2/2]

security_storage_interface & kcenon::pacs::security::security_storage_interface::operator= ( security_storage_interface && )
protecteddefault

◆ update_user()

virtual auto kcenon::pacs::security::security_storage_interface::update_user ( const User & user) -> VoidResult
nodiscardpure virtual

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