ImagingTools Core SDK
CSubscriberBase.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 <imtrest/ISubscriber.h>
7
8
9namespace imtrest
10{
11
12
16class CSubscriberBase: virtual public ISubscriber
17{
18public:
19 CSubscriberBase(const IRequestServlet& requestHandler,const IProtocolEngine& engine);
20
21 // reimplemented (ISubscriber)
22 virtual SubscriberState GetState() const override;
23 virtual void SetState(const SubscriberState& subscriberState) override;
24 virtual QByteArray GetTokenId() const override;
25 virtual QByteArray GetSubscriberId() const override;
26 virtual const IRequestServlet &GetRequestHandler() const override;
27
28 // reimplemented (INetworkObject)
29 virtual const IProtocolEngine& GetProtocolEngine() const override;
30
31private:
32 SubscriberState m_state;
33 const IProtocolEngine& m_engine;
34 const IRequestServlet& m_requestHandler;
35};
36
37
38} // namespace imtrest
39
40