8 #include "Arp/System/Security/SecurityToken.hpp" 9 #include "Arp/System/Commons/Exceptions/InvalidOperationException.hpp" 11 namespace Arp {
namespace System {
namespace Security
17 class DisableSecurityContext;
22 friend class Arp::System::Security::Internal::DisableSecurityContext;
28 ARP_CXX_SYMBOL_EXPORT SecurityContext(
bool isEnabled,
const SecurityToken& securityToken);
30 SecurityContext(
const SecurityContext& arg) =
delete;
32 SecurityContext& operator=(
const SecurityContext& arg) =
delete;
34 ARP_CXX_SYMBOL_EXPORT ~SecurityContext(
void);
37 ARP_CXX_SYMBOL_EXPORT
static bool HasCurrent(
void);
38 ARP_CXX_SYMBOL_EXPORT
static const SecurityContext& GetCurrent(
void);
47 static thread_local
const SecurityContext* pCurrent;
53 inline const SecurityToken& SecurityContext::GetSecurityToken()
const 55 return this->securityToken;
Definition: SecurityToken.hpp:11
Root namespace for the PLCnext API
Definition: SecurityContext.hpp:20
System components used by the System, Device, Plc or Io domains.