PLCnext API Documentation 23.6.0.37
IUmAuthorizationModule.hpp
1
2//
3// Copyright PHOENIX CONTACT Electronics GmbH
4//
6#pragma once
8#include "Arp/System/Um/Commons/IAuthorizationProvider.hpp"
9
10
11namespace Arp { namespace System { namespace Um { namespace Commons { namespace Modules
12{
13
15{
16public: // typedefs
17 using Ptr = std::shared_ptr<IUmAuthorizationModule>;
18 using AuthorizationProviderList = std::list<std::shared_ptr<IAuthorizationProvider>>;
19
20public: // construction/destruction
22 IUmAuthorizationModule(void) = default;
32 virtual ~IUmAuthorizationModule(void) = default;
33
34public: // abstract operations
37 virtual AuthorizationProviderList GetAuthorizationProviders() const = 0;
38};
39
40}}}}} // end of namespace Arp::System::Um::Commons::Modules
Definition: IUmAuthorizationModule.hpp:15
IUmAuthorizationModule & operator=(const IUmAuthorizationModule &arg)=default
Copy-assignment operator.
virtual ~IUmAuthorizationModule(void)=default
Destructs this instance and frees all resources.
IUmAuthorizationModule(IUmAuthorizationModule &&arg)=default
Move constructor.
IUmAuthorizationModule & operator=(IUmAuthorizationModule &&arg)=default
Move-assignment operator.
IUmAuthorizationModule(void)=default
Constructs an IUmAuthorizationModule instance.
IUmAuthorizationModule(const IUmAuthorizationModule &arg)=default
Copy constructor.
virtual AuthorizationProviderList GetAuthorizationProviders() const =0
Should return the list of authorization providers that will be registered after this module starts....
@ System
System components used by the System, Device, Plc or Io domains.
Root namespace for the PLCnext API