1// Copyright (c) 2011 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 CONTENT_BROWSER_WEBUI_SHARED_RESOURCES_DATA_SOURCE_H_
6#define CONTENT_BROWSER_WEBUI_SHARED_RESOURCES_DATA_SOURCE_H_
7
8#include "base/basictypes.h"
9#include "base/compiler_specific.h"
10#include "content/public/browser/url_data_source.h"
11
12// A DataSource for chrome://resources/ URLs.
13class SharedResourcesDataSource : public content::URLDataSource {
14 public:
15  SharedResourcesDataSource();
16
17  // content::URLDataSource implementation.
18  virtual std::string GetSource() const OVERRIDE;
19  virtual void StartDataRequest(
20      const std::string& path,
21      int render_process_id,
22      int render_frame_id,
23      const content::URLDataSource::GotDataCallback& callback) OVERRIDE;
24  virtual std::string GetMimeType(const std::string&) const OVERRIDE;
25
26 private:
27  virtual ~SharedResourcesDataSource();
28
29  DISALLOW_COPY_AND_ASSIGN(SharedResourcesDataSource);
30};
31
32#endif  // CONTENT_BROWSER_WEBUI_SHARED_RESOURCES_DATA_SOURCE_H_
33