- add sources.
[platform/framework/web/crosswalk.git] / src / remoting / host / setup / oauth_helper.h
1 // Copyright (c) 2012 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 REMOTING_HOST_SETUP_OAUTH_HELPER_H
6 #define REMOTING_HOST_SETUP_OAUTH_HELPER_H
7
8 #include <string>
9
10 namespace remoting {
11
12 // Gets the OAuth scope of the host's refresh token.
13 std::string GetOauthScope();
14
15 // Gets the default redirect URL for the OAuth dance.
16 std::string GetDefaultOauthRedirectUrl();
17
18 // Gets a URL at which the OAuth dance starts.
19 std::string GetOauthStartUrl(const std::string& redirect_url);
20
21 // Returns the OAuth authorization code embedded in a URL, or the empty string
22 // if there is no such code.
23 // To get an OAuth authorization code, (i) start a browser, (ii) navigate it
24 // to |GetOauthStartUrl()|, (iii) ask the user to sign on to their account,
25 // and grant the requested permissions, (iv) monitor the URLs that the browser
26 // shows, passing each one to |GetOauthCodeInUrl()|, until that function returns
27 // a non-empty string. That string is the authorization code.
28 std::string GetOauthCodeInUrl(const std::string& url,
29                               const std::string& redirect_url);
30
31 }  // namespace remoting
32
33 #endif  // REMOTING_HOST_SETUP_OAUTH_HELPER_H