ImagingTools Core SDK
CLoginStatusSubscriberComp.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// ImtCore includes
6#include <imtauth/ILoginStatusProvider.h>
7#include <imtclientgql/CSubscriberCompBase.h>
8
9
10namespace imtclientgql
11{
12
13
14class CLoginStatusSubscriberComp: public CSubscriberCompBase, public imtauth::ILoginStatusProvider
15{
16public:
17 typedef CSubscriberCompBase BaseClass;
18
19 I_BEGIN_COMPONENT(CLoginStatusSubscriberComp);
20 I_REGISTER_INTERFACE(imtauth::ILoginStatusProvider);
21 I_END_COMPONENT;
22
23 CLoginStatusSubscriberComp();
24
25protected:
26 // reimplemented (CSubscriberCompBase)
27 virtual void OnResponseReceived(
28 const QByteArray& subscriptionId,
29 const QByteArray& subscriptionData) override;
30
31 // reimplemented (imtauth::ILoginStatusProvider)
32 virtual int GetLoginStatus(const QByteArray& clientId = QByteArray()) const override;
33
34protected:
35 imtauth::ILoginStatusProvider::LoginStatusFlags m_loginStatus;
36};
37
38
39} // namespace imtclientgql
40
41