// note that we cannot call parent implementation because lock might be possible non-multiple void FCurlHttpManager::AddRequest(TSharedRef<class IHttpRequest> Request) { FScopeLock ScopeLock(&RequestLock); Requests.AddUnique(Request); FCurlHttpRequest* CurlRequest = static_cast< FCurlHttpRequest* >( &Request.Get() ); HandlesToRequests.Add(CurlRequest->GetEasyHandle(), Request); }
// note that we cannot call parent implementation because lock might be possible non-multiple void FCurlHttpManager::RemoveRequest(const TSharedRef<class IHttpRequest>& Request) { FScopeLock ScopeLock(&RequestLock); // Keep track of requests that have been removed to be destroyed later PendingDestroyRequests.AddUnique(FRequestPendingDestroy(DeferredDestroyDelay,Request)); FCurlHttpRequest* CurlRequest = static_cast< FCurlHttpRequest* >( &Request.Get() ); HandlesToRequests.Remove(CurlRequest->GetEasyHandle()); Requests.Remove(Request); }