gaia_urls.h revision c2e0dbddbe15c98d52c4786dac06cb8952a8ae6d
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 GOOGLE_APIS_GAIA_GAIA_URLS_H_ 6#define GOOGLE_APIS_GAIA_GAIA_URLS_H_ 7 8#include <string> 9 10#include "base/memory/singleton.h" 11 12// A signleton that provides all the URLs that are used for connecting to GAIA. 13class GaiaUrls { 14 public: 15 static GaiaUrls* GetInstance(); 16 17 // The URLs for different calls in the Google Accounts programmatic login API. 18 const std::string& captcha_url_prefix(); 19 20 const std::string& gaia_origin_url(); 21 const std::string& client_login_url(); 22 const std::string& service_login_url(); 23 const std::string& service_logout_url(); 24 const std::string& issue_auth_token_url(); 25 const std::string& get_user_info_url(); 26 const std::string& token_auth_url(); 27 const std::string& merge_session_url(); 28 const std::string& get_oauth_token_url(); 29 const std::string& oauth_get_access_token_url(); 30 const std::string& oauth_wrap_bridge_url(); 31 const std::string& oauth_user_info_url(); 32 const std::string& oauth_revoke_token_url(); 33 const std::string& oauth1_login_url(); 34 35 const std::string& oauth1_login_scope(); 36 const std::string& oauth_wrap_bridge_user_info_scope(); 37 38 const std::string& oauth2_chrome_client_id(); 39 const std::string& oauth2_chrome_client_secret(); 40 const std::string& client_login_to_oauth2_url(); 41 const std::string& oauth2_token_url(); 42 const std::string& oauth2_issue_token_url(); 43 const std::string& oauth2_revoke_url(); 44 45 const std::string& gaia_login_form_realm(); 46 47 private: 48 GaiaUrls(); 49 ~GaiaUrls(); 50 51 friend struct DefaultSingletonTraits<GaiaUrls>; 52 53 std::string captcha_url_prefix_; 54 55 std::string gaia_origin_url_; 56 std::string lso_origin_url_; 57 std::string google_apis_origin_url_; 58 std::string client_login_url_; 59 std::string service_login_url_; 60 std::string service_logout_url_; 61 std::string issue_auth_token_url_; 62 std::string get_user_info_url_; 63 std::string token_auth_url_; 64 std::string merge_session_url_; 65 std::string get_oauth_token_url_; 66 std::string oauth_get_access_token_url_; 67 std::string oauth_wrap_bridge_url_; 68 std::string oauth_user_info_url_; 69 std::string oauth_revoke_token_url_; 70 std::string oauth1_login_url_; 71 72 std::string oauth1_login_scope_; 73 std::string oauth_wrap_bridge_user_info_scope_; 74 75 std::string oauth2_chrome_client_id_; 76 std::string oauth2_chrome_client_secret_; 77 std::string client_login_to_oauth2_url_; 78 std::string oauth2_token_url_; 79 std::string oauth2_issue_token_url_; 80 std::string oauth2_revoke_url_; 81 82 std::string gaia_login_form_realm_; 83 84 DISALLOW_COPY_AND_ASSIGN(GaiaUrls); 85}; 86 87#endif // GOOGLE_APIS_GAIA_GAIA_URLS_H_ 88