cef/libcef/browser/resource_context.cc

32 lines
1.0 KiB
C++

// Copyright (c) 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "libcef/browser/resource_context.h"
#include "libcef/browser/thread_util.h"
#include "libcef/browser/url_request_context_getter.h"
CefResourceContext::CefResourceContext(
CefURLRequestContextGetter* getter)
: getter_(getter) {
}
CefResourceContext::~CefResourceContext() {
// Destroy the getter after content::ResourceContext has finished destructing.
// Otherwise, the URLRequestContext objects will be deleted before
// ResourceDispatcherHost has canceled any pending URLRequests.
getter_->AddRef();
content::BrowserThread::ReleaseSoon(
content::BrowserThread::IO, FROM_HERE, getter_.get());
}
net::HostResolver* CefResourceContext::GetHostResolver() {
CEF_REQUIRE_IOT();
return getter_->host_resolver();
}
net::URLRequestContext* CefResourceContext::GetRequestContext() {
CEF_REQUIRE_IOT();
return getter_->GetURLRequestContext();
}