| 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 // Implements the Chrome Extensions Cookies API. | 5 // Implements the Chrome Extensions Cookies API. |
| 6 | 6 |
| 7 #include "chrome/browser/extensions/api/cookies/cookies_api.h" | 7 #include "chrome/browser/extensions/api/cookies/cookies_api.h" |
| 8 | 8 |
| 9 #include <vector> | 9 #include <vector> |
| 10 | 10 |
| (...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 73 break; | 73 break; |
| 74 | 74 |
| 75 default: | 75 default: |
| 76 NOTREACHED(); | 76 NOTREACHED(); |
| 77 } | 77 } |
| 78 } | 78 } |
| 79 | 79 |
| 80 void ExtensionCookiesEventRouter::CookieChanged( | 80 void ExtensionCookiesEventRouter::CookieChanged( |
| 81 Profile* profile, | 81 Profile* profile, |
| 82 ChromeCookieDetails* details) { | 82 ChromeCookieDetails* details) { |
| 83 ListValue args; | 83 scoped_ptr<ListValue> args(new ListValue()); |
| 84 DictionaryValue* dict = new DictionaryValue(); | 84 DictionaryValue* dict = new DictionaryValue(); |
| 85 dict->SetBoolean(keys::kRemovedKey, details->removed); | 85 dict->SetBoolean(keys::kRemovedKey, details->removed); |
| 86 | 86 |
| 87 scoped_ptr<Cookie> cookie( | 87 scoped_ptr<Cookie> cookie( |
| 88 cookies_helpers::CreateCookie(*details->cookie, | 88 cookies_helpers::CreateCookie(*details->cookie, |
| 89 cookies_helpers::GetStoreIdFromProfile(profile))); | 89 cookies_helpers::GetStoreIdFromProfile(profile))); |
| 90 dict->Set(keys::kCookieKey, cookie->ToValue().release()); | 90 dict->Set(keys::kCookieKey, cookie->ToValue().release()); |
| 91 | 91 |
| 92 // Map the interal cause to an external string. | 92 // Map the interal cause to an external string. |
| 93 std::string cause; | 93 std::string cause; |
| (...skipping 16 matching lines...) Expand all Loading... |
| 110 | 110 |
| 111 case net::CookieMonster::Delegate::CHANGE_COOKIE_EXPIRED_OVERWRITE: | 111 case net::CookieMonster::Delegate::CHANGE_COOKIE_EXPIRED_OVERWRITE: |
| 112 cause = keys::kExpiredOverwriteChangeCause; | 112 cause = keys::kExpiredOverwriteChangeCause; |
| 113 break; | 113 break; |
| 114 | 114 |
| 115 default: | 115 default: |
| 116 NOTREACHED(); | 116 NOTREACHED(); |
| 117 } | 117 } |
| 118 dict->SetString(keys::kCauseKey, cause); | 118 dict->SetString(keys::kCauseKey, cause); |
| 119 | 119 |
| 120 args.Append(dict); | 120 args->Append(dict); |
| 121 | 121 |
| 122 std::string json_args; | |
| 123 base::JSONWriter::Write(&args, &json_args); | |
| 124 GURL cookie_domain = | 122 GURL cookie_domain = |
| 125 cookies_helpers::GetURLFromCanonicalCookie(*details->cookie); | 123 cookies_helpers::GetURLFromCanonicalCookie(*details->cookie); |
| 126 DispatchEvent(profile, keys::kOnChanged, json_args, cookie_domain); | 124 DispatchEvent(profile, keys::kOnChanged, args.Pass(), cookie_domain); |
| 127 } | 125 } |
| 128 | 126 |
| 129 void ExtensionCookiesEventRouter::DispatchEvent(Profile* profile, | 127 void ExtensionCookiesEventRouter::DispatchEvent( |
| 130 const char* event_name, | 128 Profile* profile, const char* event_name, scoped_ptr<ListValue> event_args, |
| 131 const std::string& json_args, | 129 GURL& cookie_domain) { |
| 132 GURL& cookie_domain) { | |
| 133 if (profile && profile->GetExtensionEventRouter()) { | 130 if (profile && profile->GetExtensionEventRouter()) { |
| 134 profile->GetExtensionEventRouter()->DispatchEventToRenderers( | 131 profile->GetExtensionEventRouter()->DispatchEventToRenderers( |
| 135 event_name, json_args, profile, cookie_domain, EventFilteringInfo()); | 132 event_name, event_args.Pass(), profile, cookie_domain, |
| 133 EventFilteringInfo()); |
| 136 } | 134 } |
| 137 } | 135 } |
| 138 | 136 |
| 139 bool CookiesFunction::ParseUrl(const std::string& url_string, GURL* url, | 137 bool CookiesFunction::ParseUrl(const std::string& url_string, GURL* url, |
| 140 bool check_host_permissions) { | 138 bool check_host_permissions) { |
| 141 *url = GURL(url_string); | 139 *url = GURL(url_string); |
| 142 if (!url->is_valid()) { | 140 if (!url->is_valid()) { |
| 143 error_ = ExtensionErrorUtils::FormatErrorMessage( | 141 error_ = ExtensionErrorUtils::FormatErrorMessage( |
| 144 keys::kInvalidUrlError, url_string); | 142 keys::kInvalidUrlError, url_string); |
| 145 return false; | 143 return false; |
| (...skipping 392 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 538 } | 536 } |
| 539 results_ = GetAllCookieStores::Results::Create(cookie_stores); | 537 results_ = GetAllCookieStores::Results::Create(cookie_stores); |
| 540 return true; | 538 return true; |
| 541 } | 539 } |
| 542 | 540 |
| 543 void GetAllCookieStoresFunction::Run() { | 541 void GetAllCookieStoresFunction::Run() { |
| 544 SendResponse(RunImpl()); | 542 SendResponse(RunImpl()); |
| 545 } | 543 } |
| 546 | 544 |
| 547 } // namespace extensions | 545 } // namespace extensions |
| OLD | NEW |