gaia_urls.h revision eb525c5499e34cc9c4b825d6d9e75bb07cc06ace
14df22c0100fe27f19e6f4874f24eedd0742b9cf4Chris Lattner// Copyright (c) 2012 The Chromium Authors. All rights reserved. 29769ab22265b313171d201b5928688524a01bd87Misha Brukman// Use of this source code is governed by a BSD-style license that can be 36fbcc26f1460eaee4e0eb8b426fc1ff0c7af11beJohn Criswell// found in the LICENSE file. 46fbcc26f1460eaee4e0eb8b426fc1ff0c7af11beJohn Criswell 57ed47a13356daed2a34cd2209a31f92552e3bdd8Chris Lattner#ifndef GOOGLE_APIS_GAIA_GAIA_URLS_H_ 67ed47a13356daed2a34cd2209a31f92552e3bdd8Chris Lattner#define GOOGLE_APIS_GAIA_GAIA_URLS_H_ 79769ab22265b313171d201b5928688524a01bd87Misha Brukman 86fbcc26f1460eaee4e0eb8b426fc1ff0c7af11beJohn Criswell#include <string> 94df22c0100fe27f19e6f4874f24eedd0742b9cf4Chris Lattner 104df22c0100fe27f19e6f4874f24eedd0742b9cf4Chris Lattner#include "base/memory/singleton.h" 114df22c0100fe27f19e6f4874f24eedd0742b9cf4Chris Lattner#include "googleurl/src/gurl.h" 121c56b730a6313886076d7b293a126ae5576f5288Chris Lattner 131c56b730a6313886076d7b293a126ae5576f5288Chris Lattner// A signleton that provides all the URLs that are used for connecting to GAIA. 144df22c0100fe27f19e6f4874f24eedd0742b9cf4Chris Lattnerclass GaiaUrls { 154df22c0100fe27f19e6f4874f24eedd0742b9cf4Chris Lattner public: 164df22c0100fe27f19e6f4874f24eedd0742b9cf4Chris Lattner static GaiaUrls* GetInstance(); 174df22c0100fe27f19e6f4874f24eedd0742b9cf4Chris Lattner 184df22c0100fe27f19e6f4874f24eedd0742b9cf4Chris Lattner // The URLs for different calls in the Google Accounts programmatic login API. 198e78cc4e130a8773cc8a2be2a94c4a97317ac383Dan Gohman const std::string& captcha_url_prefix() const; 208e78cc4e130a8773cc8a2be2a94c4a97317ac383Dan Gohman 218e78cc4e130a8773cc8a2be2a94c4a97317ac383Dan Gohman const GURL& gaia_url() const; 228e78cc4e130a8773cc8a2be2a94c4a97317ac383Dan Gohman const std::string& client_login_url() const; 238e78cc4e130a8773cc8a2be2a94c4a97317ac383Dan Gohman const std::string& service_login_url() const; 248e78cc4e130a8773cc8a2be2a94c4a97317ac383Dan Gohman const std::string& service_logout_url() const; 258e78cc4e130a8773cc8a2be2a94c4a97317ac383Dan Gohman const std::string& issue_auth_token_url() const; 268e78cc4e130a8773cc8a2be2a94c4a97317ac383Dan Gohman const std::string& get_user_info_url() const; 278e78cc4e130a8773cc8a2be2a94c4a97317ac383Dan Gohman const std::string& token_auth_url() const; 288e78cc4e130a8773cc8a2be2a94c4a97317ac383Dan Gohman const std::string& merge_session_url() const; 298e78cc4e130a8773cc8a2be2a94c4a97317ac383Dan Gohman const std::string& get_oauth_token_url() const; 308e78cc4e130a8773cc8a2be2a94c4a97317ac383Dan Gohman const std::string& oauth_get_access_token_url() const; 318e78cc4e130a8773cc8a2be2a94c4a97317ac383Dan Gohman const std::string& oauth_wrap_bridge_url() const; 328e78cc4e130a8773cc8a2be2a94c4a97317ac383Dan Gohman const std::string& oauth_user_info_url() const; 338e78cc4e130a8773cc8a2be2a94c4a97317ac383Dan Gohman const std::string& oauth_revoke_token_url() const; 341c56b730a6313886076d7b293a126ae5576f5288Chris Lattner const std::string& oauth1_login_url() const; 354df22c0100fe27f19e6f4874f24eedd0742b9cf4Chris Lattner 364df22c0100fe27f19e6f4874f24eedd0742b9cf4Chris Lattner const std::string& oauth1_login_scope() const; 374df22c0100fe27f19e6f4874f24eedd0742b9cf4Chris Lattner const std::string& oauth_wrap_bridge_user_info_scope() const; 384df22c0100fe27f19e6f4874f24eedd0742b9cf4Chris Lattner 394df22c0100fe27f19e6f4874f24eedd0742b9cf4Chris Lattner const std::string& oauth2_chrome_client_id() const; 401c56b730a6313886076d7b293a126ae5576f5288Chris Lattner const std::string& oauth2_chrome_client_secret() const; 4136f78c8935da34074ccd06d5674e45b9cd45da8bChris Lattner const std::string& client_login_to_oauth2_url() const; 42d0fde30ce850b78371fd1386338350591f9ff494Brian Gaeke const std::string& oauth2_auth_url() const; 43d0fde30ce850b78371fd1386338350591f9ff494Brian Gaeke const std::string& oauth2_token_url() const; 44d0fde30ce850b78371fd1386338350591f9ff494Brian Gaeke const std::string& oauth2_issue_token_url() const; 451c56b730a6313886076d7b293a126ae5576f5288Chris Lattner const std::string& oauth2_token_info_url() const; 461c56b730a6313886076d7b293a126ae5576f5288Chris Lattner const std::string& oauth2_revoke_url() const; 4714f1703ae33e13dbcadd701603fd4d7a6f7010b9Andrew Lenharth 481c56b730a6313886076d7b293a126ae5576f5288Chris Lattner const std::string& gaia_login_form_realm() const; 496df60a9effe4d20a48cfd9d105c0ab3c5dc3e690Reid Spencer 506df60a9effe4d20a48cfd9d105c0ab3c5dc3e690Reid Spencer private: 51e90c5cb747631b315350e7ee7424048c7778bdf9Chris Lattner GaiaUrls(); 529dc9e81aa7412b329bbaf51a589a81475214802bChris Lattner ~GaiaUrls(); 531c56b730a6313886076d7b293a126ae5576f5288Chris Lattner 541c56b730a6313886076d7b293a126ae5576f5288Chris Lattner friend struct DefaultSingletonTraits<GaiaUrls>; 551c56b730a6313886076d7b293a126ae5576f5288Chris Lattner 56ab8c565768ff7485f40cbb65e2914f9046e743d4Chris Lattner std::string captcha_url_prefix_; 57cb74993bdc37681ddbb80fa361575107afae1350Dan Gohman 58cb74993bdc37681ddbb80fa361575107afae1350Dan Gohman GURL gaia_url_; 59ab8c565768ff7485f40cbb65e2914f9046e743d4Chris Lattner std::string lso_origin_url_; 60ab8c565768ff7485f40cbb65e2914f9046e743d4Chris Lattner std::string google_apis_origin_url_; 61cb74993bdc37681ddbb80fa361575107afae1350Dan Gohman std::string client_login_url_; 621c56b730a6313886076d7b293a126ae5576f5288Chris Lattner std::string service_login_url_; 631c56b730a6313886076d7b293a126ae5576f5288Chris Lattner std::string service_logout_url_; 641c56b730a6313886076d7b293a126ae5576f5288Chris Lattner std::string issue_auth_token_url_; 651c56b730a6313886076d7b293a126ae5576f5288Chris Lattner std::string get_user_info_url_; 661c56b730a6313886076d7b293a126ae5576f5288Chris Lattner std::string token_auth_url_; 671c56b730a6313886076d7b293a126ae5576f5288Chris Lattner std::string merge_session_url_; 689769ab22265b313171d201b5928688524a01bd87Misha Brukman std::string get_oauth_token_url_; 6964d237cfae6bcb11157d525c79b5a5335e30370bDan Gohman std::string oauth_get_access_token_url_; 70fc2a3ed0c9e32cf7edaf5030fa0972b916cc5f0bDan Gohman std::string oauth_wrap_bridge_url_; 711c56b730a6313886076d7b293a126ae5576f5288Chris Lattner std::string oauth_user_info_url_; 721c56b730a6313886076d7b293a126ae5576f5288Chris Lattner std::string oauth_revoke_token_url_; 731c56b730a6313886076d7b293a126ae5576f5288Chris Lattner std::string oauth1_login_url_; 741997473cf72957d0e70322e2fe6fe2ab141c58a6Devang Patel 75ab8c565768ff7485f40cbb65e2914f9046e743d4Chris Lattner std::string oauth1_login_scope_; 761c56b730a6313886076d7b293a126ae5576f5288Chris Lattner std::string oauth_wrap_bridge_user_info_scope_; 771c56b730a6313886076d7b293a126ae5576f5288Chris Lattner 78ef1cfac9e50def9097cd3e3ab3c5cad7f4c758ccDan Gohman std::string oauth2_chrome_client_id_; 79ef1cfac9e50def9097cd3e3ab3c5cad7f4c758ccDan Gohman std::string oauth2_chrome_client_secret_; 80ef1cfac9e50def9097cd3e3ab3c5cad7f4c758ccDan Gohman std::string client_login_to_oauth2_url_; 813da848bbda62b25c12335998aaa44ab361f0bf15Dan Gohman std::string oauth2_auth_url_; 82ef1cfac9e50def9097cd3e3ab3c5cad7f4c758ccDan Gohman std::string oauth2_token_url_; 83fc2a3ed0c9e32cf7edaf5030fa0972b916cc5f0bDan Gohman std::string oauth2_issue_token_url_; 84fc2a3ed0c9e32cf7edaf5030fa0972b916cc5f0bDan Gohman std::string oauth2_token_info_url_; 85dd298c8c6eb036baf35bf5a559c59d2afd2c7944Misha Brukman std::string oauth2_revoke_url_; 86fc2a3ed0c9e32cf7edaf5030fa0972b916cc5f0bDan Gohman 87fc2a3ed0c9e32cf7edaf5030fa0972b916cc5f0bDan Gohman std::string gaia_login_form_realm_; 88fc2a3ed0c9e32cf7edaf5030fa0972b916cc5f0bDan Gohman 89fc2a3ed0c9e32cf7edaf5030fa0972b916cc5f0bDan Gohman DISALLOW_COPY_AND_ASSIGN(GaiaUrls); 90fc2a3ed0c9e32cf7edaf5030fa0972b916cc5f0bDan Gohman}; 913da848bbda62b25c12335998aaa44ab361f0bf15Dan Gohman 924df22c0100fe27f19e6f4874f24eedd0742b9cf4Chris Lattner#endif // GOOGLE_APIS_GAIA_GAIA_URLS_H_ 931c56b730a6313886076d7b293a126ae5576f5288Chris Lattner