6#include <ibase/IApplicationInfo.h>
9#include <imtauth/IAccessTokenProvider.h>
10#include <imtclientgql/TClientRequestManagerCompWrap.h>
11#include <imtgql/CGqlRequest.h>
12#include <imtgql/CGqlContext.h>
13#include <imtgql/CGqlRequestContextManager.h>
20class CClientRequestManagerCompBase:
21 public imtclientgql::CClientRequestManagerCompBase
24 typedef imtclientgql::CClientRequestManagerCompBase BaseClass;
26 I_BEGIN_COMPONENT(CClientRequestManagerCompBase)
27 I_ASSIGN(m_applicationInfoCompPtr,
"ApplicationInfo",
"Application info",
true,
"ApplicationInfo");
31 QByteArrayList GetElementIds(
const QByteArray& collectionId)
const;
32 bool RemoveElements(
const QByteArray& collectionId,
const QByteArrayList& elementIds)
const;
34 template<
class Arguments,
class Payload,
class SdlRequest>
35 bool SendModelRequestInternal(Arguments arguments, Payload& payload)
const
37 imtgql::CGqlRequest gqlRequest;
40 if (gqlContextPtr !=
nullptr){
41 istd::IChangeableUniquePtr clonedPtr = gqlContextPtr->CloneMe();
42 imtgql::IGqlContextUniquePtr castedPtr;
43 castedPtr.MoveCastedPtr(std::move(clonedPtr));
44 gqlRequest.SetGqlContext(imtgql::IGqlContextSharedPtr::CreateFromUnique(castedPtr));
47 if (!SdlRequest::SetupGqlRequest(gqlRequest, arguments)){
52 payload = SendModelRequest<Payload>(gqlRequest, errorMessage);
53 if (!errorMessage.isEmpty()){
57 if (!payload.Version_1_0.HasValue()){
65 I_REF(ibase::IApplicationInfo, m_applicationInfoCompPtr);
Authentication GraphQL API Layer Module.