ImagingTools Core SDK
CClientRequestRemoteSuperuserProviderComp.h
1// SPDX-License-Identifier: LGPL-2.1-or-later OR GPL-2.0-or-later OR GPL-3.0-or-later OR LicenseRef-ImtCore-Commercial
2#pragma once
3
4
5// ACF includes
6#include <ibase/IApplicationInfo.h>
7
8// ImtCore includes
9#include <imtauth/ISuperuserProvider.h>
10#include <imtclientgql/TClientRequestManagerCompWrap.h>
11
12
13namespace imtauthgql
14{
15
16
17class CClientRequestRemoteSuperuserProviderComp:
18 public imtclientgql::CClientRequestManagerCompBase,
19 virtual public imtauth::ISuperuserProvider
20{
21public:
22 typedef imtclientgql::CClientRequestManagerCompBase BaseClass;
23
24 I_BEGIN_COMPONENT(CClientRequestRemoteSuperuserProviderComp)
25 I_REGISTER_INTERFACE(imtauth::ISuperuserProvider);
26 I_ASSIGN(m_superuserIdAttrPtr, "SuperuserId", "ID of the superuser", false, "su");
27 I_END_COMPONENT;
28
29 // reimplemented (imtauth::ISuperuserProvider)
30 virtual ExistsStatus SuperuserExists(QString& errorMessage) const override;
31 virtual QByteArray GetSuperuserId() const override;
32
33protected:
34 I_ATTR(QByteArray, m_superuserIdAttrPtr);
35};
36
37
38} // namespace imtauthgql
39
40
Authentication GraphQL API Layer Module.