blob: 2fa38b185ab3769b48274774c3bc6ba951c8fbe3 [file] [log] [blame]
// Copyright (c) 2011 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 "content/browser/cross_site_request_manager.h"
#include "base/memory/singleton.h"
namespace content {
bool CrossSiteRequestManager::HasPendingCrossSiteRequest(int renderer_id,
int render_view_id) {
base::AutoLock lock(lock_);
std::pair<int, int> key(renderer_id, render_view_id);
return pending_cross_site_views_.find(key) !=
pending_cross_site_views_.end();
}
void CrossSiteRequestManager::SetHasPendingCrossSiteRequest(int renderer_id,
int render_view_id,
bool has_pending) {
base::AutoLock lock(lock_);
std::pair<int, int> key(renderer_id, render_view_id);
if (has_pending) {
pending_cross_site_views_.insert(key);
} else {
pending_cross_site_views_.erase(key);
}
}
CrossSiteRequestManager::CrossSiteRequestManager() {}
CrossSiteRequestManager::~CrossSiteRequestManager() {}
// static
CrossSiteRequestManager* CrossSiteRequestManager::GetInstance() {
return Singleton<CrossSiteRequestManager>::get();
}
} // namespace content