OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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/services/gcm/push_messaging_service_impl.h" | 5 #include "chrome/browser/services/gcm/push_messaging_service_impl.h" |
6 | 6 |
7 #include <bitset> | 7 #include <bitset> |
8 #include <vector> | 8 #include <vector> |
9 | 9 |
10 #include "base/bind.h" | 10 #include "base/bind.h" |
(...skipping 562 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
573 application_id.ToString(), | 573 application_id.ToString(), |
574 sender_ids, | 574 sender_ids, |
575 base::Bind(&PushMessagingServiceImpl::DidRegister, | 575 base::Bind(&PushMessagingServiceImpl::DidRegister, |
576 weak_factory_.GetWeakPtr(), | 576 weak_factory_.GetWeakPtr(), |
577 register_callback)); | 577 register_callback)); |
578 } | 578 } |
579 | 579 |
580 void PushMessagingServiceImpl::Unregister( | 580 void PushMessagingServiceImpl::Unregister( |
581 const GURL& requesting_origin, | 581 const GURL& requesting_origin, |
582 int64 service_worker_registration_id, | 582 int64 service_worker_registration_id, |
| 583 const std::string& sender_id, |
583 const content::PushMessagingService::UnregisterCallback& callback) { | 584 const content::PushMessagingService::UnregisterCallback& callback) { |
584 DCHECK(gcm_profile_service_->driver()); | 585 DCHECK(gcm_profile_service_->driver()); |
585 | 586 |
586 PushMessagingApplicationId application_id = PushMessagingApplicationId( | 587 PushMessagingApplicationId application_id = PushMessagingApplicationId( |
587 requesting_origin, service_worker_registration_id); | 588 requesting_origin, service_worker_registration_id); |
588 DCHECK(application_id.IsValid()); | 589 DCHECK(application_id.IsValid()); |
589 | 590 |
590 Unregister(application_id, callback); | 591 Unregister(application_id, sender_id, callback); |
591 } | 592 } |
592 | 593 |
593 void PushMessagingServiceImpl::Unregister( | 594 void PushMessagingServiceImpl::Unregister( |
594 const PushMessagingApplicationId& application_id, | 595 const PushMessagingApplicationId& application_id, |
| 596 const std::string& sender_id, |
595 const content::PushMessagingService::UnregisterCallback& callback) { | 597 const content::PushMessagingService::UnregisterCallback& callback) { |
596 DCHECK(gcm_profile_service_->driver()); | 598 DCHECK(gcm_profile_service_->driver()); |
597 | 599 |
598 gcm_profile_service_->driver()->Unregister( | 600 gcm_profile_service_->driver()->Unregister( |
599 application_id.ToString(), | 601 application_id.ToString(), |
| 602 sender_id, |
600 base::Bind(&PushMessagingServiceImpl::DidUnregister, | 603 base::Bind(&PushMessagingServiceImpl::DidUnregister, |
601 weak_factory_.GetWeakPtr(), callback)); | 604 weak_factory_.GetWeakPtr(), callback)); |
602 } | 605 } |
603 | 606 |
604 void PushMessagingServiceImpl::DidUnregister( | 607 void PushMessagingServiceImpl::DidUnregister( |
605 const content::PushMessagingService::UnregisterCallback& callback, | 608 const content::PushMessagingService::UnregisterCallback& callback, |
606 GCMClient::Result result) { | 609 GCMClient::Result result) { |
607 // Internal calls pass a null callback. | 610 // Internal calls pass a null callback. |
608 if (!callback.is_null()) { | 611 if (!callback.is_null()) { |
609 switch (result) { | 612 switch (result) { |
(...skipping 25 matching lines...) Expand all Loading... |
635 bool PushMessagingServiceImpl::HasPermission(const GURL& origin) { | 638 bool PushMessagingServiceImpl::HasPermission(const GURL& origin) { |
636 gcm::PushMessagingPermissionContext* permission_context = | 639 gcm::PushMessagingPermissionContext* permission_context = |
637 gcm::PushMessagingPermissionContextFactory::GetForProfile(profile_); | 640 gcm::PushMessagingPermissionContextFactory::GetForProfile(profile_); |
638 DCHECK(permission_context); | 641 DCHECK(permission_context); |
639 | 642 |
640 return permission_context->GetPermissionStatus(origin, origin) == | 643 return permission_context->GetPermissionStatus(origin, origin) == |
641 CONTENT_SETTING_ALLOW; | 644 CONTENT_SETTING_ALLOW; |
642 } | 645 } |
643 | 646 |
644 } // namespace gcm | 647 } // namespace gcm |
OLD | NEW |