IDB: Make readonly transactions wait for earlier readwrite transactions
[chromium-blink-merge.git] / content / test / test_navigation_url_loader_factory.h
blob14fbe1ddc085e3c11bc02747625b3f554cbb3dbc
1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef CONTENT_TEST_TEST_NAVIGATION_URL_LOADER_FACTORY_H_
6 #define CONTENT_TEST_TEST_NAVIGATION_URL_LOADER_FACTORY_H_
8 #include "base/memory/scoped_ptr.h"
9 #include "content/browser/loader/navigation_url_loader_factory.h"
11 namespace content {
13 class NavigationURLLoader;
15 // PlzNavigate
16 // Manages creation of the NavigationURLLoaders; when registered, all created
17 // NavigationURLLoaderss will be TestNavigationURLLoaderss. This automatically
18 // registers itself when it goes in scope, and unregisters itself when it goes
19 // out of scope. Since you can't have more than one factory registered at a
20 // time, you can only have one of these objects at a time.
21 class TestNavigationURLLoaderFactory : public NavigationURLLoaderFactory {
22 public:
23 TestNavigationURLLoaderFactory();
24 ~TestNavigationURLLoaderFactory() override;
26 // TestNavigationURLLoaderFactory implementation.
27 scoped_ptr<NavigationURLLoader> CreateLoader(
28 BrowserContext* browser_context,
29 int64 frame_tree_node_id,
30 const CommonNavigationParams& common_params,
31 scoped_ptr<NavigationRequestInfo> request_info,
32 ResourceRequestBody* request_body,
33 NavigationURLLoaderDelegate* delegate) override;
35 private:
36 DISALLOW_COPY_AND_ASSIGN(TestNavigationURLLoaderFactory);
39 } // namespace content
41 #endif // CONTENT_TEST_TEST_NAVIGATION_URL_LOADER_FACTORY_H_