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.
5 #ifndef GOOGLE_APIS_GAIA_GAIA_URLS_H_
6 #define GOOGLE_APIS_GAIA_GAIA_URLS_H_
10 #include "base/memory/singleton.h"
13 // A signleton that provides all the URLs that are used for connecting to GAIA.
16 static GaiaUrls* GetInstance();
18 // The URLs for different calls in the Google Accounts programmatic login API.
19 const GURL& gaia_url() const;
20 const GURL& captcha_base_url() const;
21 const GURL& client_login_url() const;
22 const GURL& service_login_url() const;
23 const GURL& service_login_auth_url() const;
24 const GURL& service_logout_url() const;
25 const GURL& issue_auth_token_url() const;
26 const GURL& get_user_info_url() const;
27 const GURL& token_auth_url() const;
28 const GURL& merge_session_url() const;
29 const GURL& get_oauth_token_url() const;
30 const GURL& oauth_get_access_token_url() const;
31 const GURL& oauth_wrap_bridge_url() const;
32 const GURL& oauth_user_info_url() const;
33 const GURL& oauth_revoke_token_url() const;
34 const GURL& oauth1_login_url() const;
36 const std::string& oauth1_login_scope() const;
37 const std::string& oauth_wrap_bridge_user_info_scope() const;
39 const std::string& oauth2_chrome_client_id() const;
40 const std::string& oauth2_chrome_client_secret() const;
41 const GURL& client_login_to_oauth2_url() const;
42 const GURL& oauth2_auth_url() const;
43 const GURL& oauth2_token_url() const;
44 const GURL& oauth2_issue_token_url() const;
45 const GURL& oauth2_token_info_url() const;
46 const GURL& oauth2_revoke_url() const;
48 const GURL& gaia_login_form_realm() const;
54 friend struct DefaultSingletonTraits<GaiaUrls>;
57 GURL captcha_base_url_;
60 GURL google_apis_origin_url_;
62 GURL client_login_url_;
63 GURL service_login_url_;
64 GURL service_login_auth_url_;
65 GURL service_logout_url_;
66 GURL issue_auth_token_url_;
67 GURL get_user_info_url_;
69 GURL merge_session_url_;
70 GURL get_oauth_token_url_;
71 GURL oauth_get_access_token_url_;
72 GURL oauth_wrap_bridge_url_;
73 GURL oauth_user_info_url_;
74 GURL oauth_revoke_token_url_;
75 GURL oauth1_login_url_;
77 std::string oauth1_login_scope_;
78 std::string oauth_wrap_bridge_user_info_scope_;
80 std::string oauth2_chrome_client_id_;
81 std::string oauth2_chrome_client_secret_;
83 GURL client_login_to_oauth2_url_;
84 GURL oauth2_auth_url_;
85 GURL oauth2_token_url_;
86 GURL oauth2_issue_token_url_;
87 GURL oauth2_token_info_url_;
88 GURL oauth2_revoke_url_;
90 GURL gaia_login_form_realm_;
92 DISALLOW_COPY_AND_ASSIGN(GaiaUrls);
95 #endif // GOOGLE_APIS_GAIA_GAIA_URLS_H_