Chromium Code Reviews| 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 // Portions of this code based on Mozilla: | 5 // Portions of this code based on Mozilla: |
| 6 // (netwerk/cookie/src/nsCookieService.cpp) | 6 // (netwerk/cookie/src/nsCookieService.cpp) |
| 7 /* ***** BEGIN LICENSE BLOCK ***** | 7 /* ***** BEGIN LICENSE BLOCK ***** |
| 8 * Version: MPL 1.1/GPL 2.0/LGPL 2.1 | 8 * Version: MPL 1.1/GPL 2.0/LGPL 2.1 |
| 9 * | 9 * |
| 10 * The contents of this file are subject to the Mozilla Public License Version | 10 * The contents of this file are subject to the Mozilla Public License Version |
| (...skipping 512 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 523 | 523 |
| 524 void CookieMonster::GetAllCookiesForURLWithOptionsTask::Run() { | 524 void CookieMonster::GetAllCookiesForURLWithOptionsTask::Run() { |
| 525 if (!callback_.is_null()) { | 525 if (!callback_.is_null()) { |
| 526 CookieList cookies = this->cookie_monster()-> | 526 CookieList cookies = this->cookie_monster()-> |
| 527 GetAllCookiesForURLWithOptions(url_, options_); | 527 GetAllCookiesForURLWithOptions(url_, options_); |
| 528 this->InvokeCallback(base::Bind(&CookieMonster::GetCookieListCallback::Run, | 528 this->InvokeCallback(base::Bind(&CookieMonster::GetCookieListCallback::Run, |
| 529 base::Unretained(&callback_), cookies)); | 529 base::Unretained(&callback_), cookies)); |
| 530 } | 530 } |
| 531 } | 531 } |
| 532 | 532 |
| 533 // Base task class for Delete*Task. | |
| 534 template <typename Callback, typename Result> | |
| 535 class CookieMonster::DeleteTask : public CookieMonster::CookieMonsterTask { | |
| 536 public: | |
| 537 DeleteTask(CookieMonster* cookie_monster, | |
| 538 const Callback& callback) | |
| 539 : CookieMonsterTask(cookie_monster), | |
| 540 callback_(callback) { | |
| 541 } | |
| 542 | |
| 543 // Runs the delete task and returns a result. | |
| 544 virtual Result RunDeleteTask() = 0; | |
| 545 | |
| 546 // CookieMonster::CookieMonsterTask: | |
| 547 virtual void Run() OVERRIDE; | |
| 548 | |
| 549 void FlushDone(const base::Closure& callback); | |
| 550 | |
| 551 private: | |
| 552 Callback callback_; | |
| 553 | |
| 554 DISALLOW_COPY_AND_ASSIGN(DeleteTask); | |
| 555 }; | |
| 556 | |
| 557 template <typename Callback, typename Result> | |
| 558 base::Closure RunDeleteTaskAndBindCallback( | |
| 559 CookieMonster::DeleteTask<Callback, Result>* task, | |
| 560 const Callback& callback) { | |
| 561 return base::Bind(callback, task->RunDeleteTask()); | |
| 562 } | |
| 563 | |
| 564 template <typename Callback> | |
|
philipj_slow
2013/09/05 14:39:12
I wanted to do this:
template <>
base::Closure Ru
erikwright (departed)
2013/09/05 20:28:18
Presumably in cookie_monster.h the declaration of
| |
| 565 base::Closure RunDeleteTaskAndBindCallback( | |
| 566 CookieMonster::DeleteTask<Callback, void>* task, | |
| 567 const Callback& callback) { | |
| 568 task->RunDeleteTask(); | |
| 569 return callback; | |
| 570 } | |
| 571 | |
| 572 template <typename Callback, typename Result> | |
| 573 void CookieMonster::DeleteTask<Callback, Result>::Run() { | |
| 574 this->cookie_monster()->FlushStore( | |
| 575 base::Bind(&CookieMonster::DeleteTask<Callback, Result>::FlushDone, this, | |
| 576 RunDeleteTaskAndBindCallback(this, callback_))); | |
| 577 } | |
| 578 | |
| 579 template <typename Callback, typename Result> | |
| 580 void CookieMonster::DeleteTask<Callback, Result>::FlushDone( | |
| 581 const base::Closure& callback) { | |
| 582 if (!callback.is_null()) { | |
| 583 this->InvokeCallback(callback); | |
| 584 } | |
| 585 } | |
| 586 | |
| 533 // Task class for DeleteAll call. | 587 // Task class for DeleteAll call. |
| 534 class CookieMonster::DeleteAllTask : public CookieMonster::CookieMonsterTask { | 588 class CookieMonster::DeleteAllTask |
| 589 : public CookieMonster::DeleteTask<CookieMonster::DeleteCallback, int> { | |
| 535 public: | 590 public: |
| 536 DeleteAllTask(CookieMonster* cookie_monster, | 591 DeleteAllTask(CookieMonster* cookie_monster, |
| 537 const CookieMonster::DeleteCallback& callback) | 592 const CookieMonster::DeleteCallback& callback) |
| 538 : CookieMonsterTask(cookie_monster), | 593 : DeleteTask(cookie_monster, callback) { |
| 539 callback_(callback) { | |
| 540 } | 594 } |
| 541 | 595 |
| 542 // CookieMonster::CookieMonsterTask: | 596 // CookieMonster::DeleteTask: |
| 543 virtual void Run() OVERRIDE; | 597 virtual int RunDeleteTask() OVERRIDE; |
| 544 | 598 |
| 545 protected: | 599 protected: |
| 546 virtual ~DeleteAllTask() {} | 600 virtual ~DeleteAllTask() {} |
| 547 | 601 |
| 548 private: | 602 private: |
| 549 CookieMonster::DeleteCallback callback_; | |
| 550 | |
| 551 DISALLOW_COPY_AND_ASSIGN(DeleteAllTask); | 603 DISALLOW_COPY_AND_ASSIGN(DeleteAllTask); |
| 552 }; | 604 }; |
| 553 | 605 |
| 554 void CookieMonster::DeleteAllTask::Run() { | 606 int CookieMonster::DeleteAllTask::RunDeleteTask() { |
| 555 int num_deleted = this->cookie_monster()->DeleteAll(true); | 607 return this->cookie_monster()->DeleteAll(true); |
| 556 if (!callback_.is_null()) { | |
| 557 this->InvokeCallback(base::Bind(&CookieMonster::DeleteCallback::Run, | |
| 558 base::Unretained(&callback_), num_deleted)); | |
| 559 } | |
| 560 } | 608 } |
| 561 | 609 |
| 562 // Task class for DeleteAllCreatedBetween call. | 610 // Task class for DeleteAllCreatedBetween call. |
| 563 class CookieMonster::DeleteAllCreatedBetweenTask | 611 class CookieMonster::DeleteAllCreatedBetweenTask |
| 564 : public CookieMonster::CookieMonsterTask { | 612 : public CookieMonster::DeleteTask<CookieMonster::DeleteCallback, int> { |
| 565 public: | 613 public: |
| 566 DeleteAllCreatedBetweenTask(CookieMonster* cookie_monster, | 614 DeleteAllCreatedBetweenTask(CookieMonster* cookie_monster, |
| 567 const Time& delete_begin, | 615 const Time& delete_begin, |
| 568 const Time& delete_end, | 616 const Time& delete_end, |
| 569 const CookieMonster::DeleteCallback& callback) | 617 const CookieMonster::DeleteCallback& callback) |
| 570 : CookieMonsterTask(cookie_monster), | 618 : DeleteTask(cookie_monster, callback), |
| 571 delete_begin_(delete_begin), | 619 delete_begin_(delete_begin), |
| 572 delete_end_(delete_end), | 620 delete_end_(delete_end) { |
| 573 callback_(callback) { | |
| 574 } | 621 } |
| 575 | 622 |
| 576 // CookieMonster::CookieMonsterTask: | 623 // CookieMonster::DeleteTask: |
| 577 virtual void Run() OVERRIDE; | 624 virtual int RunDeleteTask() OVERRIDE; |
| 578 | 625 |
| 579 protected: | 626 protected: |
| 580 virtual ~DeleteAllCreatedBetweenTask() {} | 627 virtual ~DeleteAllCreatedBetweenTask() {} |
| 581 | 628 |
| 582 private: | 629 private: |
| 583 Time delete_begin_; | 630 Time delete_begin_; |
| 584 Time delete_end_; | 631 Time delete_end_; |
| 585 CookieMonster::DeleteCallback callback_; | |
| 586 | 632 |
| 587 DISALLOW_COPY_AND_ASSIGN(DeleteAllCreatedBetweenTask); | 633 DISALLOW_COPY_AND_ASSIGN(DeleteAllCreatedBetweenTask); |
| 588 }; | 634 }; |
| 589 | 635 |
| 590 void CookieMonster::DeleteAllCreatedBetweenTask::Run() { | 636 int CookieMonster::DeleteAllCreatedBetweenTask::RunDeleteTask() { |
| 591 int num_deleted = this->cookie_monster()-> | 637 return this->cookie_monster()-> |
| 592 DeleteAllCreatedBetween(delete_begin_, delete_end_); | 638 DeleteAllCreatedBetween(delete_begin_, delete_end_); |
| 593 if (!callback_.is_null()) { | |
| 594 this->InvokeCallback(base::Bind(&CookieMonster::DeleteCallback::Run, | |
| 595 base::Unretained(&callback_), num_deleted)); | |
| 596 } | |
| 597 } | 639 } |
| 598 | 640 |
| 599 // Task class for DeleteAllForHost call. | 641 // Task class for DeleteAllForHost call. |
| 600 class CookieMonster::DeleteAllForHostTask | 642 class CookieMonster::DeleteAllForHostTask |
| 601 : public CookieMonster::CookieMonsterTask { | 643 : public CookieMonster::DeleteTask<CookieMonster::DeleteCallback, int> { |
| 602 public: | 644 public: |
| 603 DeleteAllForHostTask(CookieMonster* cookie_monster, | 645 DeleteAllForHostTask(CookieMonster* cookie_monster, |
| 604 const GURL& url, | 646 const GURL& url, |
| 605 const CookieMonster::DeleteCallback& callback) | 647 const CookieMonster::DeleteCallback& callback) |
| 606 : CookieMonsterTask(cookie_monster), | 648 : DeleteTask(cookie_monster, callback), |
| 607 url_(url), | 649 url_(url) { |
| 608 callback_(callback) { | |
| 609 } | 650 } |
| 610 | 651 |
| 611 // CookieMonster::CookieMonsterTask: | 652 // CookieMonster::DeleteTask: |
| 612 virtual void Run() OVERRIDE; | 653 virtual int RunDeleteTask() OVERRIDE; |
| 613 | 654 |
| 614 protected: | 655 protected: |
| 615 virtual ~DeleteAllForHostTask() {} | 656 virtual ~DeleteAllForHostTask() {} |
| 616 | 657 |
| 617 private: | 658 private: |
| 618 GURL url_; | 659 GURL url_; |
| 619 CookieMonster::DeleteCallback callback_; | |
| 620 | 660 |
| 621 DISALLOW_COPY_AND_ASSIGN(DeleteAllForHostTask); | 661 DISALLOW_COPY_AND_ASSIGN(DeleteAllForHostTask); |
| 622 }; | 662 }; |
| 623 | 663 |
| 624 void CookieMonster::DeleteAllForHostTask::Run() { | 664 int CookieMonster::DeleteAllForHostTask::RunDeleteTask() { |
| 625 int num_deleted = this->cookie_monster()->DeleteAllForHost(url_); | 665 return this->cookie_monster()->DeleteAllForHost(url_); |
| 626 if (!callback_.is_null()) { | |
| 627 this->InvokeCallback(base::Bind(&CookieMonster::DeleteCallback::Run, | |
| 628 base::Unretained(&callback_), num_deleted)); | |
| 629 } | |
| 630 } | 666 } |
| 631 | 667 |
| 632 // Task class for DeleteAllCreatedBetweenForHost call. | 668 // Task class for DeleteAllCreatedBetweenForHost call. |
| 633 class CookieMonster::DeleteAllCreatedBetweenForHostTask | 669 class CookieMonster::DeleteAllCreatedBetweenForHostTask |
| 634 : public CookieMonster::CookieMonsterTask { | 670 : public CookieMonster::DeleteTask<CookieMonster::DeleteCallback, int> { |
| 635 public: | 671 public: |
| 636 DeleteAllCreatedBetweenForHostTask( | 672 DeleteAllCreatedBetweenForHostTask( |
| 637 CookieMonster* cookie_monster, | 673 CookieMonster* cookie_monster, |
| 638 Time delete_begin, | 674 Time delete_begin, |
| 639 Time delete_end, | 675 Time delete_end, |
| 640 const GURL& url, | 676 const GURL& url, |
| 641 const CookieMonster::DeleteCallback& callback) | 677 const CookieMonster::DeleteCallback& callback) |
| 642 : CookieMonsterTask(cookie_monster), | 678 : DeleteTask(cookie_monster, callback), |
| 643 delete_begin_(delete_begin), | 679 delete_begin_(delete_begin), |
| 644 delete_end_(delete_end), | 680 delete_end_(delete_end), |
| 645 url_(url), | 681 url_(url) { |
| 646 callback_(callback) { | |
| 647 } | 682 } |
| 648 | 683 |
| 649 // CookieMonster::CookieMonsterTask: | 684 // CookieMonster::DeleteTask: |
| 650 virtual void Run() OVERRIDE; | 685 virtual int RunDeleteTask() OVERRIDE; |
| 651 | 686 |
| 652 protected: | 687 protected: |
| 653 virtual ~DeleteAllCreatedBetweenForHostTask() {} | 688 virtual ~DeleteAllCreatedBetweenForHostTask() {} |
| 654 | 689 |
| 655 private: | 690 private: |
| 656 Time delete_begin_; | 691 Time delete_begin_; |
| 657 Time delete_end_; | 692 Time delete_end_; |
| 658 GURL url_; | 693 GURL url_; |
| 659 CookieMonster::DeleteCallback callback_; | |
| 660 | 694 |
| 661 DISALLOW_COPY_AND_ASSIGN(DeleteAllCreatedBetweenForHostTask); | 695 DISALLOW_COPY_AND_ASSIGN(DeleteAllCreatedBetweenForHostTask); |
| 662 }; | 696 }; |
| 663 | 697 |
| 664 void CookieMonster::DeleteAllCreatedBetweenForHostTask::Run() { | 698 int CookieMonster::DeleteAllCreatedBetweenForHostTask::RunDeleteTask() { |
| 665 int num_deleted = this->cookie_monster()->DeleteAllCreatedBetweenForHost( | 699 return this->cookie_monster()->DeleteAllCreatedBetweenForHost( |
| 666 delete_begin_, delete_end_, url_); | 700 delete_begin_, delete_end_, url_); |
| 667 if (!callback_.is_null()) { | |
| 668 this->InvokeCallback(base::Bind(&CookieMonster::DeleteCallback::Run, | |
| 669 base::Unretained(&callback_), num_deleted)); | |
| 670 } | |
| 671 } | 701 } |
| 672 | 702 |
| 673 // Task class for DeleteCanonicalCookie call. | 703 // Task class for DeleteCanonicalCookie call. |
| 674 class CookieMonster::DeleteCanonicalCookieTask | 704 class CookieMonster::DeleteCanonicalCookieTask |
| 675 : public CookieMonster::CookieMonsterTask { | 705 : public CookieMonster::DeleteTask<CookieMonster::DeleteCookieCallback, bool > { |
| 676 public: | 706 public: |
| 677 DeleteCanonicalCookieTask(CookieMonster* cookie_monster, | 707 DeleteCanonicalCookieTask(CookieMonster* cookie_monster, |
| 678 const CanonicalCookie& cookie, | 708 const CanonicalCookie& cookie, |
| 679 const CookieMonster::DeleteCookieCallback& callback) | 709 const CookieMonster::DeleteCookieCallback& callback) |
| 680 : CookieMonsterTask(cookie_monster), | 710 : DeleteTask(cookie_monster, callback), |
| 681 cookie_(cookie), | 711 cookie_(cookie) { |
| 682 callback_(callback) { | |
| 683 } | 712 } |
| 684 | 713 |
| 685 // CookieMonster::CookieMonsterTask: | 714 // CookieMonster::DeleteTask: |
| 686 virtual void Run() OVERRIDE; | 715 virtual bool RunDeleteTask() OVERRIDE; |
| 687 | 716 |
| 688 protected: | 717 protected: |
| 689 virtual ~DeleteCanonicalCookieTask() {} | 718 virtual ~DeleteCanonicalCookieTask() {} |
| 690 | 719 |
| 691 private: | 720 private: |
| 692 CanonicalCookie cookie_; | 721 CanonicalCookie cookie_; |
| 693 CookieMonster::DeleteCookieCallback callback_; | |
| 694 | 722 |
| 695 DISALLOW_COPY_AND_ASSIGN(DeleteCanonicalCookieTask); | 723 DISALLOW_COPY_AND_ASSIGN(DeleteCanonicalCookieTask); |
| 696 }; | 724 }; |
| 697 | 725 |
| 698 void CookieMonster::DeleteCanonicalCookieTask::Run() { | 726 bool CookieMonster::DeleteCanonicalCookieTask::RunDeleteTask() { |
| 699 bool result = this->cookie_monster()->DeleteCanonicalCookie(cookie_); | 727 return this->cookie_monster()->DeleteCanonicalCookie(cookie_); |
| 700 if (!callback_.is_null()) { | |
| 701 this->InvokeCallback(base::Bind(&CookieMonster::DeleteCookieCallback::Run, | |
| 702 base::Unretained(&callback_), result)); | |
| 703 } | |
| 704 } | 728 } |
| 705 | 729 |
| 706 // Task class for SetCookieWithOptions call. | 730 // Task class for SetCookieWithOptions call. |
| 707 class CookieMonster::SetCookieWithOptionsTask | 731 class CookieMonster::SetCookieWithOptionsTask |
| 708 : public CookieMonster::CookieMonsterTask { | 732 : public CookieMonster::CookieMonsterTask { |
| 709 public: | 733 public: |
| 710 SetCookieWithOptionsTask(CookieMonster* cookie_monster, | 734 SetCookieWithOptionsTask(CookieMonster* cookie_monster, |
| 711 const GURL& url, | 735 const GURL& url, |
| 712 const std::string& cookie_line, | 736 const std::string& cookie_line, |
| 713 const CookieOptions& options, | 737 const CookieOptions& options, |
| (...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 775 std::string cookie = this->cookie_monster()-> | 799 std::string cookie = this->cookie_monster()-> |
| 776 GetCookiesWithOptions(url_, options_); | 800 GetCookiesWithOptions(url_, options_); |
| 777 if (!callback_.is_null()) { | 801 if (!callback_.is_null()) { |
| 778 this->InvokeCallback(base::Bind(&CookieMonster::GetCookiesCallback::Run, | 802 this->InvokeCallback(base::Bind(&CookieMonster::GetCookiesCallback::Run, |
| 779 base::Unretained(&callback_), cookie)); | 803 base::Unretained(&callback_), cookie)); |
| 780 } | 804 } |
| 781 } | 805 } |
| 782 | 806 |
| 783 // Task class for DeleteCookie call. | 807 // Task class for DeleteCookie call. |
| 784 class CookieMonster::DeleteCookieTask | 808 class CookieMonster::DeleteCookieTask |
| 785 : public CookieMonster::CookieMonsterTask { | 809 : public CookieMonster::DeleteTask<base::Closure, void> { |
| 786 public: | 810 public: |
| 787 DeleteCookieTask(CookieMonster* cookie_monster, | 811 DeleteCookieTask(CookieMonster* cookie_monster, |
| 788 const GURL& url, | 812 const GURL& url, |
| 789 const std::string& cookie_name, | 813 const std::string& cookie_name, |
| 790 const base::Closure& callback) | 814 const base::Closure& callback) |
| 791 : CookieMonsterTask(cookie_monster), | 815 : DeleteTask(cookie_monster, callback), |
| 792 url_(url), | 816 url_(url), |
| 793 cookie_name_(cookie_name), | 817 cookie_name_(cookie_name) { |
| 794 callback_(callback) { } | 818 } |
| 795 | 819 |
| 796 // CookieMonster::CookieMonsterTask: | 820 // CookieMonster::DeleteTask: |
| 797 virtual void Run() OVERRIDE; | 821 virtual void RunDeleteTask() OVERRIDE; |
| 798 | 822 |
| 799 protected: | 823 protected: |
| 800 virtual ~DeleteCookieTask() {} | 824 virtual ~DeleteCookieTask() {} |
| 801 | 825 |
| 802 private: | 826 private: |
| 803 GURL url_; | 827 GURL url_; |
| 804 std::string cookie_name_; | 828 std::string cookie_name_; |
| 805 base::Closure callback_; | |
| 806 | 829 |
| 807 DISALLOW_COPY_AND_ASSIGN(DeleteCookieTask); | 830 DISALLOW_COPY_AND_ASSIGN(DeleteCookieTask); |
| 808 }; | 831 }; |
| 809 | 832 |
| 810 void CookieMonster::DeleteCookieTask::Run() { | 833 void CookieMonster::DeleteCookieTask::RunDeleteTask() { |
| 811 this->cookie_monster()->DeleteCookie(url_, cookie_name_); | 834 this->cookie_monster()->DeleteCookie(url_, cookie_name_); |
| 812 if (!callback_.is_null()) { | |
| 813 this->InvokeCallback(callback_); | |
| 814 } | |
| 815 } | 835 } |
| 816 | 836 |
| 817 // Task class for DeleteSessionCookies call. | 837 // Task class for DeleteSessionCookies call. |
| 818 class CookieMonster::DeleteSessionCookiesTask | 838 class CookieMonster::DeleteSessionCookiesTask |
| 819 : public CookieMonster::CookieMonsterTask { | 839 : public CookieMonster::DeleteTask<CookieMonster::DeleteCallback, int> { |
| 820 public: | 840 public: |
| 821 DeleteSessionCookiesTask(CookieMonster* cookie_monster, | 841 DeleteSessionCookiesTask(CookieMonster* cookie_monster, |
| 822 const CookieMonster::DeleteCallback& callback) | 842 const CookieMonster::DeleteCallback& callback) |
| 823 : CookieMonsterTask(cookie_monster), callback_(callback) { | 843 : DeleteTask(cookie_monster, callback) { |
| 824 } | 844 } |
| 825 | 845 |
| 826 // CookieMonster::CookieMonsterTask: | 846 // CookieMonster::DeleteTask: |
| 827 virtual void Run() OVERRIDE; | 847 virtual int RunDeleteTask() OVERRIDE; |
| 828 | 848 |
| 829 protected: | 849 protected: |
| 830 virtual ~DeleteSessionCookiesTask() {} | 850 virtual ~DeleteSessionCookiesTask() {} |
| 831 | 851 |
| 832 private: | 852 private: |
| 833 CookieMonster::DeleteCallback callback_; | |
| 834 | 853 |
| 835 DISALLOW_COPY_AND_ASSIGN(DeleteSessionCookiesTask); | 854 DISALLOW_COPY_AND_ASSIGN(DeleteSessionCookiesTask); |
| 836 }; | 855 }; |
| 837 | 856 |
| 838 void CookieMonster::DeleteSessionCookiesTask::Run() { | 857 int CookieMonster::DeleteSessionCookiesTask::RunDeleteTask() { |
| 839 int num_deleted = this->cookie_monster()->DeleteSessionCookies(); | 858 return this->cookie_monster()->DeleteSessionCookies(); |
| 840 if (!callback_.is_null()) { | |
| 841 this->InvokeCallback(base::Bind(&CookieMonster::DeleteCallback::Run, | |
| 842 base::Unretained(&callback_), num_deleted)); | |
| 843 } | |
| 844 } | 859 } |
| 845 | 860 |
| 846 // Task class for HasCookiesForETLDP1Task call. | 861 // Task class for HasCookiesForETLDP1Task call. |
| 847 class CookieMonster::HasCookiesForETLDP1Task | 862 class CookieMonster::HasCookiesForETLDP1Task |
| 848 : public CookieMonster::CookieMonsterTask { | 863 : public CookieMonster::CookieMonsterTask { |
| 849 public: | 864 public: |
| 850 HasCookiesForETLDP1Task( | 865 HasCookiesForETLDP1Task( |
| 851 CookieMonster* cookie_monster, | 866 CookieMonster* cookie_monster, |
| 852 const std::string& etldp1, | 867 const std::string& etldp1, |
| 853 const CookieMonster::HasCookiesForETLDP1Callback& callback) | 868 const CookieMonster::HasCookiesForETLDP1Callback& callback) |
| (...skipping 1360 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 2214 | 2229 |
| 2215 // The system resolution is not high enough, so we can have multiple | 2230 // The system resolution is not high enough, so we can have multiple |
| 2216 // set cookies that result in the same system time. When this happens, we | 2231 // set cookies that result in the same system time. When this happens, we |
| 2217 // increment by one Time unit. Let's hope computers don't get too fast. | 2232 // increment by one Time unit. Let's hope computers don't get too fast. |
| 2218 Time CookieMonster::CurrentTime() { | 2233 Time CookieMonster::CurrentTime() { |
| 2219 return std::max(Time::Now(), | 2234 return std::max(Time::Now(), |
| 2220 Time::FromInternalValue(last_time_seen_.ToInternalValue() + 1)); | 2235 Time::FromInternalValue(last_time_seen_.ToInternalValue() + 1)); |
| 2221 } | 2236 } |
| 2222 | 2237 |
| 2223 } // namespace net | 2238 } // namespace net |
| OLD | NEW |