| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chrome/browser/google_apis/gdata_wapi_url_generator.h" | 5 #include "chrome/browser/google_apis/gdata_wapi_url_generator.h" |
| 6 | 6 |
| 7 #include "base/logging.h" | 7 #include "base/logging.h" |
| 8 #include "base/stringprintf.h" | 8 #include "base/stringprintf.h" |
| 9 #include "googleurl/src/gurl.h" | 9 #include "googleurl/src/gurl.h" |
| 10 #include "net/base/escape.h" | 10 #include "net/base/escape.h" |
| 11 #include "net/base/url_util.h" | 11 #include "net/base/url_util.h" |
| 12 | 12 |
| 13 namespace google_apis { | 13 namespace google_apis { |
| 14 namespace { | 14 namespace { |
| 15 | 15 |
| 16 // URL requesting resource list that belong to the authenticated user only | 16 // Content URL for modification or resource list retrieval in a particular |
| 17 // (handled with '/-/mine' part). | 17 // directory specified by "%s" which will be replaced with its resource id. |
| 18 const char kGetResourceListURLForAllDocuments[] = | |
| 19 "/feeds/default/private/full/-/mine"; | |
| 20 | |
| 21 // URL requesting resource list in a particular directory specified by "%s" | |
| 22 // that belong to the authenticated user only (handled with '/-/mine' part). | |
| 23 const char kGetResourceListURLForDirectoryFormat[] = | |
| 24 "/feeds/default/private/full/%s/contents/-/mine"; | |
| 25 | |
| 26 // Content URL for modification in a particular directory specified by "%s" | |
| 27 // which will be replaced with its resource id. | |
| 28 const char kContentURLFormat[] = "/feeds/default/private/full/%s/contents"; | 18 const char kContentURLFormat[] = "/feeds/default/private/full/%s/contents"; |
| 29 | 19 |
| 30 // Content URL for removing a resource specified by the latter "%s" from the | 20 // Content URL for removing a resource specified by the latter "%s" from the |
| 31 // directory specified by the former "%s". | 21 // directory specified by the former "%s". |
| 32 const char kResourceURLForRemovalFormat[] = | 22 const char kResourceURLForRemovalFormat[] = |
| 33 "/feeds/default/private/full/%s/contents/%s"; | 23 "/feeds/default/private/full/%s/contents/%s"; |
| 34 | 24 |
| 35 // URL requesting single resource entry whose resource id is followed by this | 25 // URL requesting single resource entry whose resource id is followed by this |
| 36 // prefix. | 26 // prefix. |
| 37 const char kGetEditURLPrefix[] = "/feeds/default/private/full/"; | 27 const char kGetEditURLPrefix[] = "/feeds/default/private/full/"; |
| (...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 136 start_changestamp = 0; | 126 start_changestamp = 0; |
| 137 url = override_url; | 127 url = override_url; |
| 138 } else if (shared_with_me) { | 128 } else if (shared_with_me) { |
| 139 url = base_url_.Resolve(kGetResourceListURLForSharedWithMe); | 129 url = base_url_.Resolve(kGetResourceListURLForSharedWithMe); |
| 140 } else if (start_changestamp > 0) { | 130 } else if (start_changestamp > 0) { |
| 141 // The start changestamp shouldn't be used for a search. | 131 // The start changestamp shouldn't be used for a search. |
| 142 DCHECK(search_string.empty()); | 132 DCHECK(search_string.empty()); |
| 143 url = base_url_.Resolve(kGetChangesListURL); | 133 url = base_url_.Resolve(kGetChangesListURL); |
| 144 } else if (!directory_resource_id.empty()) { | 134 } else if (!directory_resource_id.empty()) { |
| 145 url = base_url_.Resolve( | 135 url = base_url_.Resolve( |
| 146 base::StringPrintf(kGetResourceListURLForDirectoryFormat, | 136 base::StringPrintf(kContentURLFormat, |
| 147 net::EscapePath( | 137 net::EscapePath( |
| 148 directory_resource_id).c_str())); | 138 directory_resource_id).c_str())); |
| 149 } else { | 139 } else { |
| 150 url = base_url_.Resolve(kGetResourceListURLForAllDocuments); | 140 url = base_url_.Resolve(kResourceListRootURL); |
| 151 } | 141 } |
| 152 return AddFeedUrlParams(url, max_docs, start_changestamp, search_string); | 142 return AddFeedUrlParams(url, max_docs, start_changestamp, search_string); |
| 153 } | 143 } |
| 154 | 144 |
| 155 GURL GDataWapiUrlGenerator::GenerateEditUrl( | 145 GURL GDataWapiUrlGenerator::GenerateEditUrl( |
| 156 const std::string& resource_id) const { | 146 const std::string& resource_id) const { |
| 157 return AddStandardUrlParams(GenerateEditUrlWithoutParams(resource_id)); | 147 return AddStandardUrlParams(GenerateEditUrlWithoutParams(resource_id)); |
| 158 } | 148 } |
| 159 | 149 |
| 160 GURL GDataWapiUrlGenerator::GenerateEditUrlWithoutParams( | 150 GURL GDataWapiUrlGenerator::GenerateEditUrlWithoutParams( |
| (...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 214 bool include_installed_apps) const { | 204 bool include_installed_apps) const { |
| 215 GURL result = AddStandardUrlParams(base_url_.Resolve(kAccountMetadataURL)); | 205 GURL result = AddStandardUrlParams(base_url_.Resolve(kAccountMetadataURL)); |
| 216 if (include_installed_apps) { | 206 if (include_installed_apps) { |
| 217 result = net::AppendOrReplaceQueryParameter( | 207 result = net::AppendOrReplaceQueryParameter( |
| 218 result, "include-installed-apps", "true"); | 208 result, "include-installed-apps", "true"); |
| 219 } | 209 } |
| 220 return result; | 210 return result; |
| 221 } | 211 } |
| 222 | 212 |
| 223 } // namespace google_apis | 213 } // namespace google_apis |
| OLD | NEW |