6#include <QtCore/QTimer>
7#include <QtNetwork/QNetworkAccessManager>
10#include <ilog/TLoggerCompWrap.h>
13#include <imtbase/IUrlParam.h>
14#include <imtcom/IConnectionStatusProvider.h>
21class CInternetConnectionCheckerComp:
23 public ilog::CLoggerComponentBase,
24 virtual public IConnectionStatusProvider
28 typedef ilog::CLoggerComponentBase BaseClass;
30 I_BEGIN_COMPONENT(CInternetConnectionCheckerComp);
31 I_REGISTER_INTERFACE(IConnectionStatusProvider);
32 I_ASSIGN(m_urlParamCompPtr,
"UrlParam",
"URL Param",
false,
"UrlParam");
33 I_ASSIGN(m_urlAttrPtr,
"Url",
"URL to check availability, if UrlParam is invalid",
true,
"https://google.com");
34 I_ASSIGN(m_requestTimeoutAttrPtr,
"RequestTimeout",
"Request timeout",
true, 1000)
35 I_ASSIGN(m_requestDelayAttrPtr, "RequestDelay", "Delay between two consecutive requests", true, 1000);
36 I_ASSIGN(m_retryCountAttrPtr, "RetryCount", "Number of retries after failure before going offline", true, 10);
39 CInternetConnectionCheckerComp();
46 virtual
void OnComponentCreated() override;
47 virtual
void OnComponentDestroyed() override;
51 void OnRequestFinished();
57 I_REF(
imtbase::IUrlParam, m_urlParamCompPtr);
58 I_ATTR(QString, m_urlAttrPtr);
59 I_ATTR(
int, m_requestTimeoutAttrPtr);
60 I_ATTR(
int, m_requestDelayAttrPtr);
61 I_ATTR(
int, m_retryCountAttrPtr);
65 QNetworkAccessManager* m_managerPtr;
ConnectionStatus
Connection status enumeration.
Server Communication and Connection Management Module.