OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 "android_webview/native/cookie_manager.h" | 5 #include "android_webview/native/cookie_manager.h" |
6 | 6 |
7 #include "android_webview/browser/aw_browser_context.h" | 7 #include "android_webview/browser/aw_browser_context.h" |
8 #include "android_webview/browser/aw_cookie_access_policy.h" | 8 #include "android_webview/browser/aw_cookie_access_policy.h" |
9 #include "android_webview/browser/net/init_native_callback.h" | 9 #include "android_webview/browser/net/init_native_callback.h" |
10 #include "android_webview/browser/scoped_allow_wait_for_legacy_web_view_api.h" | 10 #include "android_webview/browser/scoped_allow_wait_for_legacy_web_view_api.h" |
(...skipping 494 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
505 EnsureCookieMonsterExistsLocked(); | 505 EnsureCookieMonsterExistsLocked(); |
506 SetAcceptFileSchemeCookiesLocked(accept); | 506 SetAcceptFileSchemeCookiesLocked(accept); |
507 } | 507 } |
508 | 508 |
509 void CookieManager::SetAcceptFileSchemeCookiesLocked(bool accept) { | 509 void CookieManager::SetAcceptFileSchemeCookiesLocked(bool accept) { |
510 cookie_monster_->SetEnableFileScheme(accept); | 510 cookie_monster_->SetEnableFileScheme(accept); |
511 } | 511 } |
512 | 512 |
513 } // namespace | 513 } // namespace |
514 | 514 |
515 static void SetShouldAcceptCookies(JNIEnv* env, jobject obj, jboolean accept) { | 515 static void SetShouldAcceptCookies(JNIEnv* env, |
| 516 const JavaParamRef<jobject>& obj, |
| 517 jboolean accept) { |
516 CookieManager::GetInstance()->SetShouldAcceptCookies(accept); | 518 CookieManager::GetInstance()->SetShouldAcceptCookies(accept); |
517 } | 519 } |
518 | 520 |
519 static jboolean GetShouldAcceptCookies(JNIEnv* env, jobject obj) { | 521 static jboolean GetShouldAcceptCookies(JNIEnv* env, |
| 522 const JavaParamRef<jobject>& obj) { |
520 return CookieManager::GetInstance()->GetShouldAcceptCookies(); | 523 return CookieManager::GetInstance()->GetShouldAcceptCookies(); |
521 } | 524 } |
522 | 525 |
523 static void SetCookie(JNIEnv* env, | 526 static void SetCookie(JNIEnv* env, |
524 jobject obj, | 527 const JavaParamRef<jobject>& obj, |
525 jstring url, | 528 const JavaParamRef<jstring>& url, |
526 jstring value, | 529 const JavaParamRef<jstring>& value, |
527 jobject java_callback) { | 530 const JavaParamRef<jobject>& java_callback) { |
528 GURL host(ConvertJavaStringToUTF16(env, url)); | 531 GURL host(ConvertJavaStringToUTF16(env, url)); |
529 std::string cookie_value(ConvertJavaStringToUTF8(env, value)); | 532 std::string cookie_value(ConvertJavaStringToUTF8(env, value)); |
530 scoped_ptr<BoolCookieCallbackHolder> callback( | 533 scoped_ptr<BoolCookieCallbackHolder> callback( |
531 new BoolCookieCallbackHolder(env, java_callback)); | 534 new BoolCookieCallbackHolder(env, java_callback)); |
532 CookieManager::GetInstance()->SetCookie(host, cookie_value, callback.Pass()); | 535 CookieManager::GetInstance()->SetCookie(host, cookie_value, callback.Pass()); |
533 } | 536 } |
534 | 537 |
535 static void SetCookieSync(JNIEnv* env, | 538 static void SetCookieSync(JNIEnv* env, |
536 jobject obj, | 539 const JavaParamRef<jobject>& obj, |
537 jstring url, | 540 const JavaParamRef<jstring>& url, |
538 jstring value) { | 541 const JavaParamRef<jstring>& value) { |
539 GURL host(ConvertJavaStringToUTF16(env, url)); | 542 GURL host(ConvertJavaStringToUTF16(env, url)); |
540 std::string cookie_value(ConvertJavaStringToUTF8(env, value)); | 543 std::string cookie_value(ConvertJavaStringToUTF8(env, value)); |
541 | 544 |
542 CookieManager::GetInstance()->SetCookieSync(host, cookie_value); | 545 CookieManager::GetInstance()->SetCookieSync(host, cookie_value); |
543 } | 546 } |
544 | 547 |
545 static ScopedJavaLocalRef<jstring> GetCookie(JNIEnv* env, | 548 static ScopedJavaLocalRef<jstring> GetCookie(JNIEnv* env, |
546 jobject obj, | 549 const JavaParamRef<jobject>& obj, |
547 jstring url) { | 550 const JavaParamRef<jstring>& url) { |
548 GURL host(ConvertJavaStringToUTF16(env, url)); | 551 GURL host(ConvertJavaStringToUTF16(env, url)); |
549 | 552 |
550 return base::android::ConvertUTF8ToJavaString( | 553 return base::android::ConvertUTF8ToJavaString( |
551 env, CookieManager::GetInstance()->GetCookie(host)); | 554 env, CookieManager::GetInstance()->GetCookie(host)); |
552 } | 555 } |
553 | 556 |
554 static void RemoveSessionCookies(JNIEnv* env, | 557 static void RemoveSessionCookies(JNIEnv* env, |
555 jobject obj, | 558 const JavaParamRef<jobject>& obj, |
556 jobject java_callback) { | 559 const JavaParamRef<jobject>& java_callback) { |
557 scoped_ptr<BoolCookieCallbackHolder> callback( | 560 scoped_ptr<BoolCookieCallbackHolder> callback( |
558 new BoolCookieCallbackHolder(env, java_callback)); | 561 new BoolCookieCallbackHolder(env, java_callback)); |
559 CookieManager::GetInstance()->RemoveSessionCookies(callback.Pass()); | 562 CookieManager::GetInstance()->RemoveSessionCookies(callback.Pass()); |
560 } | 563 } |
561 | 564 |
562 static void RemoveSessionCookiesSync(JNIEnv* env, jobject obj) { | 565 static void RemoveSessionCookiesSync(JNIEnv* env, |
| 566 const JavaParamRef<jobject>& obj) { |
563 CookieManager::GetInstance()->RemoveSessionCookiesSync(); | 567 CookieManager::GetInstance()->RemoveSessionCookiesSync(); |
564 } | 568 } |
565 | 569 |
566 static void RemoveAllCookies(JNIEnv* env, jobject obj, jobject java_callback) { | 570 static void RemoveAllCookies(JNIEnv* env, |
| 571 const JavaParamRef<jobject>& obj, |
| 572 const JavaParamRef<jobject>& java_callback) { |
567 scoped_ptr<BoolCookieCallbackHolder> callback( | 573 scoped_ptr<BoolCookieCallbackHolder> callback( |
568 new BoolCookieCallbackHolder(env, java_callback)); | 574 new BoolCookieCallbackHolder(env, java_callback)); |
569 CookieManager::GetInstance()->RemoveAllCookies(callback.Pass()); | 575 CookieManager::GetInstance()->RemoveAllCookies(callback.Pass()); |
570 } | 576 } |
571 | 577 |
572 static void RemoveAllCookiesSync(JNIEnv* env, jobject obj) { | 578 static void RemoveAllCookiesSync(JNIEnv* env, |
| 579 const JavaParamRef<jobject>& obj) { |
573 CookieManager::GetInstance()->RemoveAllCookiesSync(); | 580 CookieManager::GetInstance()->RemoveAllCookiesSync(); |
574 } | 581 } |
575 | 582 |
576 static void RemoveExpiredCookies(JNIEnv* env, jobject obj) { | 583 static void RemoveExpiredCookies(JNIEnv* env, |
| 584 const JavaParamRef<jobject>& obj) { |
577 CookieManager::GetInstance()->RemoveExpiredCookies(); | 585 CookieManager::GetInstance()->RemoveExpiredCookies(); |
578 } | 586 } |
579 | 587 |
580 static void FlushCookieStore(JNIEnv* env, jobject obj) { | 588 static void FlushCookieStore(JNIEnv* env, const JavaParamRef<jobject>& obj) { |
581 CookieManager::GetInstance()->FlushCookieStore(); | 589 CookieManager::GetInstance()->FlushCookieStore(); |
582 } | 590 } |
583 | 591 |
584 static jboolean HasCookies(JNIEnv* env, jobject obj) { | 592 static jboolean HasCookies(JNIEnv* env, const JavaParamRef<jobject>& obj) { |
585 return CookieManager::GetInstance()->HasCookies(); | 593 return CookieManager::GetInstance()->HasCookies(); |
586 } | 594 } |
587 | 595 |
588 static jboolean AllowFileSchemeCookies(JNIEnv* env, jobject obj) { | 596 static jboolean AllowFileSchemeCookies(JNIEnv* env, |
| 597 const JavaParamRef<jobject>& obj) { |
589 return CookieManager::GetInstance()->AllowFileSchemeCookies(); | 598 return CookieManager::GetInstance()->AllowFileSchemeCookies(); |
590 } | 599 } |
591 | 600 |
592 static void SetAcceptFileSchemeCookies(JNIEnv* env, jobject obj, | 601 static void SetAcceptFileSchemeCookies(JNIEnv* env, |
| 602 const JavaParamRef<jobject>& obj, |
593 jboolean accept) { | 603 jboolean accept) { |
594 return CookieManager::GetInstance()->SetAcceptFileSchemeCookies(accept); | 604 return CookieManager::GetInstance()->SetAcceptFileSchemeCookies(accept); |
595 } | 605 } |
596 | 606 |
597 scoped_refptr<net::CookieStore> CreateCookieStore( | 607 scoped_refptr<net::CookieStore> CreateCookieStore( |
598 AwBrowserContext* browser_context) { | 608 AwBrowserContext* browser_context) { |
599 return CookieManager::GetInstance()->GetCookieStore(); | 609 return CookieManager::GetInstance()->GetCookieStore(); |
600 } | 610 } |
601 | 611 |
602 bool RegisterCookieManager(JNIEnv* env) { | 612 bool RegisterCookieManager(JNIEnv* env) { |
603 return RegisterNativesImpl(env); | 613 return RegisterNativesImpl(env); |
604 } | 614 } |
605 | 615 |
606 } // android_webview namespace | 616 } // android_webview namespace |
OLD | NEW |