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.
4
5#ifndef CHROME_BROWSER_TASK_MANAGER_EXTENSION_INFORMATION_H_
6#define CHROME_BROWSER_TASK_MANAGER_EXTENSION_INFORMATION_H_
7
8#include "base/basictypes.h"
9#include "chrome/browser/task_manager/web_contents_information.h"
10
11namespace task_manager {
12
13class ExtensionProcessResource;
14
15// WebContentsInformation for WebContentses that are owned by the Extensions
16// system.
17class ExtensionInformation
18    : public NotificationObservingWebContentsInformation {
19 public:
20  ExtensionInformation();
21  virtual ~ExtensionInformation();
22
23  // WebContentsInformation implementation.
24  virtual bool CheckOwnership(content::WebContents* web_contents) OVERRIDE;
25  virtual void GetAll(const NewWebContentsCallback& callback) OVERRIDE;
26  virtual scoped_ptr<RendererResource> MakeResource(
27      content::WebContents* web_contents) OVERRIDE;
28
29 private:
30  DISALLOW_COPY_AND_ASSIGN(ExtensionInformation);
31};
32
33}  // namespace task_manager
34
35#endif  // CHROME_BROWSER_TASK_MANAGER_EXTENSION_INFORMATION_H_
36