ImagingTools Core SDK
CServerConnectionInterfaceParamComp.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 <icomp/CComponentBase.h>
7#include <iprm/IEnableableParam.h>
8
9// ImtCore includes
10#include <imtcom/CServerConnectionInterfaceParam.h>
11
12
13namespace imtcom
14{
15
16
205{
206public:
207 typedef icomp::CComponentBase BaseClass;
209
210 I_BEGIN_COMPONENT(CServerConnectionInterfaceParamComp);
211 I_REGISTER_INTERFACE(IServerConnectionInterface);
212 I_REGISTER_INTERFACE(iser::ISerializable);
213 I_ASSIGN(m_defaultHostAttrPtr, "DefaultHost", "Default host name", false, "localhost");
214 I_ASSIGN(m_defaulWebSocketPortAttrPtr, "DefaultWebSocketPort", "Default value for the WebSocket port", false, 9000);
215 I_ASSIGN(m_defaulHttpSocketPortAttrPtr, "DefaultHttpPort", "Default value for the HTTP port", false, 9001)
216 I_ASSIGN(m_defaulGrpcSocketPortAttrPtr, "DefaultgRPCPort", "Default value for the gRPC port", false, 50101);
217 I_ASSIGN(m_sslEnabledCompPtr, "ExternalEnableSSL", "External SSL configuration", false, "ExternalEnableSSL");
218 I_END_COMPONENT;
219
220protected:
221 // reimplemented (imtcom/CServerConnectionInterfaceParam)
222 virtual int GetConnectionFlags() const override;
223
224 // reimplemented (icomp::CComponentBase)
225 virtual void OnComponentCreated() override;
226
227private:
228 I_ATTR(int, m_defaulWebSocketPortAttrPtr);
229 I_ATTR(int, m_defaulHttpSocketPortAttrPtr);
230 I_ATTR(int, m_defaulGrpcSocketPortAttrPtr);
231 I_ATTR(QString, m_defaultHostAttrPtr);
232 I_REF(iprm::IEnableableParam, m_sslEnabledCompPtr);
233};
234
235
236} // namespace imtcom
237
238
ACF component implementation of IServerConnectionInterface with default port configuration.
Basic implementation of IServerConnectionInterface with protocol-port mapping.
Interface for describing server connection configuration with multi-protocol support.
Server Communication and Connection Management Module.