1// Copyright 2013 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_UI_WEBUI_CHROMEOS_LOGIN_INLINE_LOGIN_HANDLER_CHROMEOS_H_
6#define CHROME_BROWSER_UI_WEBUI_CHROMEOS_LOGIN_INLINE_LOGIN_HANDLER_CHROMEOS_H_
7
8#include "base/memory/scoped_ptr.h"
9#include "chrome/browser/ui/webui/signin/inline_login_handler.h"
10
11namespace chromeos {
12
13class OAuth2TokenFetcher;
14
15// Implementation for the inline login WebUI handler on ChromeOS.
16class InlineLoginHandlerChromeOS : public ::InlineLoginHandler {
17 public:
18  InlineLoginHandlerChromeOS();
19  virtual ~InlineLoginHandlerChromeOS();
20
21 private:
22  class InlineLoginUIOAuth2Delegate;
23
24  // InlineLoginHandler overrides:
25  virtual void CompleteLogin(const base::ListValue* args) OVERRIDE;
26
27  scoped_ptr<InlineLoginUIOAuth2Delegate> oauth2_delegate_;
28  scoped_ptr<chromeos::OAuth2TokenFetcher> oauth2_token_fetcher_;
29
30  DISALLOW_COPY_AND_ASSIGN(InlineLoginHandlerChromeOS);
31};
32
33} // namespace chromeos
34
35#endif  // CHROME_BROWSER_UI_WEBUI_CHROMEOS_LOGIN_INLINE_LOGIN_HANDLER_CHROMEOS_H_
36