PLCnext API Documentation 25.0.2.69
Public Member Functions | Protected Types | Protected Member Functions | List of all members
Arp::Base::Rsc::Commons::Services::RscServiceSecurityStubBase< T > Class Template Reference

Base class for RSC service security stubs. More...

#include <RscServiceSecurityStubBase.hxx>

Inheritance diagram for Arp::Base::Rsc::Commons::Services::RscServiceSecurityStubBase< T >:
Inheritance graph

Public Member Functions

 RscServiceSecurityStubBase (const char *serviceProviderName, IRscAuthorizator *pAuthorizator)
 Constructs a RscServiceSecurityStubBase instance. More...
 

Protected Types

using ServiceImplType = T
 The type of the service implementation (e.g. DemoServiceImpl)
 

Protected Member Functions

void AuthorizeServiceInvocation (const char *operationName)
 This operation is used to authorize any method call of the service implementation. More...
 

Detailed Description

template<class T>
class Arp::Base::Rsc::Commons::Services::RscServiceSecurityStubBase< T >

Base class for RSC service security stubs.

This class is a generic decorator for any security stub implementation of RSC services. It derives from the supplied RSC service implementation class, while the RscGenerator generates the security stub code, which overrides any method for calling the AuthorizeServiceInvocation operation for it.

This class is not intended for direct use, but required by RscGenerator to implement services.

Template Parameters
TThe service implementation type.

Constructor & Destructor Documentation

◆ RscServiceSecurityStubBase()

template<class T >
Arp::Base::Rsc::Commons::Services::RscServiceSecurityStubBase< T >::RscServiceSecurityStubBase ( const char *  serviceProviderName,
IRscAuthorizator pAuthorizator 
)
inline

Constructs a RscServiceSecurityStubBase instance.

Parameters
serviceProviderNameThe service provider name.
pAuthorizatorThe authorizator to authorize any service operation call.
Template Parameters
TThe service implementation type.

Member Function Documentation

◆ AuthorizeServiceInvocation()

template<class T >
void Arp::Base::Rsc::Commons::Services::RscServiceSecurityStubBase< T >::AuthorizeServiceInvocation ( const char *  operationName)
inlineprotected

This operation is used to authorize any method call of the service implementation.

Parameters
operationNameThe operation to authorize.
Template Parameters
TThe service implementation type.
Exceptions
NotAuthorizedExceptionIf the authorization fails.

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