blob: 8f52610e0a5e6dece9bd608dff6b2acef56189c8 [file] [log] [blame]
Benjamin Lerman5d429aa2015-05-07 16:21:00 +02001// 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.
4
5#ifndef SHELL_URL_RESPONSE_DISK_CACHE_LOADER_H_
6#define SHELL_URL_RESPONSE_DISK_CACHE_LOADER_H_
7
8#include "base/macros.h"
9#include "base/memory/scoped_ptr.h"
Benjamin Lermana9579a92015-07-28 10:30:26 +020010#include "base/task_runner.h"
Benjamin Lerman5d429aa2015-05-07 16:21:00 +020011#include "mojo/public/cpp/application/application_impl.h"
12#include "services/url_response_disk_cache/url_response_disk_cache_app.h"
13#include "shell/application_manager/application_loader.h"
14
15namespace shell {
16
17class URLResponseDiskCacheLoader : public ApplicationLoader {
18 public:
Benjamin Lermand15e3f42015-09-17 11:26:18 +020019 URLResponseDiskCacheLoader(scoped_refptr<base::TaskRunner> task_runner);
Benjamin Lerman5d429aa2015-05-07 16:21:00 +020020 ~URLResponseDiskCacheLoader() override;
21
22 private:
23 // ApplicationLoader overrides:
24 void Load(
25 const GURL& url,
26 mojo::InterfaceRequest<mojo::Application> application_request) override;
27
28 mojo::URLResponseDiskCacheApp url_response_disk_cache_;
29 scoped_ptr<mojo::ApplicationImpl> application_;
30
31 DISALLOW_COPY_AND_ASSIGN(URLResponseDiskCacheLoader);
32};
33
34} // namespace shell
35
36#endif // SHELL_URL_RESPONSE_DISK_CACHE_LOADER_H_