| 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 "content/shell/browser/layout_test/layout_test_push_messaging_service.h
" | 5 #include "content/shell/browser/layout_test/layout_test_push_messaging_service.h
" |
| 6 | 6 |
| 7 #include "base/callback.h" | 7 #include "base/callback.h" |
| 8 #include "base/logging.h" | 8 #include "base/logging.h" |
| 9 #include "base/macros.h" | 9 #include "base/macros.h" |
| 10 #include "content/public/browser/permission_type.h" | 10 #include "content/public/browser/permission_type.h" |
| (...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 68 return GURL(standard_protocol ? "https://example.com/StandardizedEndpoint/" | 68 return GURL(standard_protocol ? "https://example.com/StandardizedEndpoint/" |
| 69 : "https://example.com/LayoutTestEndpoint/"); | 69 : "https://example.com/LayoutTestEndpoint/"); |
| 70 } | 70 } |
| 71 | 71 |
| 72 void LayoutTestPushMessagingService::SubscribeFromDocument( | 72 void LayoutTestPushMessagingService::SubscribeFromDocument( |
| 73 const GURL& requesting_origin, | 73 const GURL& requesting_origin, |
| 74 int64_t service_worker_registration_id, | 74 int64_t service_worker_registration_id, |
| 75 int renderer_id, | 75 int renderer_id, |
| 76 int render_frame_id, | 76 int render_frame_id, |
| 77 const PushSubscriptionOptions& options, | 77 const PushSubscriptionOptions& options, |
| 78 const PushMessagingService::RegisterCallback& callback) { | 78 const RegisterCallback& callback) { |
| 79 SubscribeFromWorker(requesting_origin, service_worker_registration_id, | 79 SubscribeFromWorker(requesting_origin, service_worker_registration_id, |
| 80 options, callback); | 80 options, callback); |
| 81 } | 81 } |
| 82 | 82 |
| 83 void LayoutTestPushMessagingService::SubscribeFromWorker( | 83 void LayoutTestPushMessagingService::SubscribeFromWorker( |
| 84 const GURL& requesting_origin, | 84 const GURL& requesting_origin, |
| 85 int64_t service_worker_registration_id, | 85 int64_t service_worker_registration_id, |
| 86 const PushSubscriptionOptions& options, | 86 const PushSubscriptionOptions& options, |
| 87 const PushMessagingService::RegisterCallback& callback) { | 87 const RegisterCallback& callback) { |
| 88 if (GetPermissionStatus(requesting_origin, options.user_visible_only) == | 88 if (GetPermissionStatus(requesting_origin, options.user_visible_only) == |
| 89 blink::WebPushPermissionStatusGranted) { | 89 blink::WebPushPermissionStatusGranted) { |
| 90 std::vector<uint8_t> p256dh( | 90 std::vector<uint8_t> p256dh( |
| 91 kTestP256Key, kTestP256Key + arraysize(kTestP256Key)); | 91 kTestP256Key, kTestP256Key + arraysize(kTestP256Key)); |
| 92 std::vector<uint8_t> auth( | 92 std::vector<uint8_t> auth( |
| 93 kAuthentication, kAuthentication + arraysize(kAuthentication)); | 93 kAuthentication, kAuthentication + arraysize(kAuthentication)); |
| 94 | 94 |
| 95 subscribed_service_worker_registration_ = service_worker_registration_id; | 95 subscribed_service_worker_registration_ = service_worker_registration_id; |
| 96 callback.Run("layoutTestRegistrationId", p256dh, auth, | 96 callback.Run("layoutTestRegistrationId", p256dh, auth, |
| 97 PUSH_REGISTRATION_STATUS_SUCCESS_FROM_PUSH_SERVICE); | 97 PUSH_REGISTRATION_STATUS_SUCCESS_FROM_PUSH_SERVICE); |
| 98 } else { | 98 } else { |
| 99 callback.Run("registration_id", std::vector<uint8_t>() /* p256dh */, | 99 callback.Run("registration_id", std::vector<uint8_t>() /* p256dh */, |
| 100 std::vector<uint8_t>() /* auth */, | 100 std::vector<uint8_t>() /* auth */, |
| 101 PUSH_REGISTRATION_STATUS_PERMISSION_DENIED); | 101 PUSH_REGISTRATION_STATUS_PERMISSION_DENIED); |
| 102 } | 102 } |
| 103 } | 103 } |
| 104 | 104 |
| 105 void LayoutTestPushMessagingService::GetEncryptionInfo( | 105 void LayoutTestPushMessagingService::GetSubscriptionInfo( |
| 106 const GURL& origin, | 106 const GURL& origin, |
| 107 int64_t service_worker_registration_id, | 107 int64_t service_worker_registration_id, |
| 108 const std::string& sender_id, | 108 const std::string& sender_id, |
| 109 const EncryptionInfoCallback& callback) { | 109 const std::string& subscription_id, |
| 110 const SubscriptionInfoCallback& callback) { |
| 110 std::vector<uint8_t> p256dh( | 111 std::vector<uint8_t> p256dh( |
| 111 kTestP256Key, kTestP256Key + arraysize(kTestP256Key)); | 112 kTestP256Key, kTestP256Key + arraysize(kTestP256Key)); |
| 112 std::vector<uint8_t> auth( | 113 std::vector<uint8_t> auth( |
| 113 kAuthentication, kAuthentication + arraysize(kAuthentication)); | 114 kAuthentication, kAuthentication + arraysize(kAuthentication)); |
| 114 | 115 |
| 115 callback.Run(true /* success */, p256dh, auth); | 116 callback.Run(true /* is_valid */, p256dh, auth); |
| 116 } | 117 } |
| 117 | 118 |
| 118 blink::WebPushPermissionStatus | 119 blink::WebPushPermissionStatus |
| 119 LayoutTestPushMessagingService::GetPermissionStatus(const GURL& origin, | 120 LayoutTestPushMessagingService::GetPermissionStatus(const GURL& origin, |
| 120 bool user_visible) { | 121 bool user_visible) { |
| 121 return ToWebPushPermissionStatus(LayoutTestContentBrowserClient::Get() | 122 return ToWebPushPermissionStatus(LayoutTestContentBrowserClient::Get() |
| 122 ->browser_context() | 123 ->browser_context() |
| 123 ->GetPermissionManager() | 124 ->GetPermissionManager() |
| 124 ->GetPermissionStatus(PermissionType::PUSH_MESSAGING, origin, origin)); | 125 ->GetPermissionStatus(PermissionType::PUSH_MESSAGING, origin, origin)); |
| 125 } | 126 } |
| 126 | 127 |
| 127 bool LayoutTestPushMessagingService::SupportNonVisibleMessages() { | 128 bool LayoutTestPushMessagingService::SupportNonVisibleMessages() { |
| 128 return false; | 129 return false; |
| 129 } | 130 } |
| 130 | 131 |
| 131 void LayoutTestPushMessagingService::Unsubscribe( | 132 void LayoutTestPushMessagingService::Unsubscribe( |
| 133 PushUnregistrationReason reason, |
| 132 const GURL& requesting_origin, | 134 const GURL& requesting_origin, |
| 133 int64_t service_worker_registration_id, | 135 int64_t service_worker_registration_id, |
| 134 const std::string& sender_id, | 136 const std::string& sender_id, |
| 135 const UnregisterCallback& callback) { | 137 const UnregisterCallback& callback) { |
| 136 ClearPushSubscriptionId( | 138 ClearPushSubscriptionId( |
| 137 LayoutTestContentBrowserClient::Get()->browser_context(), | 139 LayoutTestContentBrowserClient::Get()->browser_context(), |
| 138 requesting_origin, service_worker_registration_id, | 140 requesting_origin, service_worker_registration_id, |
| 139 base::Bind(callback, | 141 base::Bind(callback, |
| 140 service_worker_registration_id == | 142 service_worker_registration_id == |
| 141 subscribed_service_worker_registration_ | 143 subscribed_service_worker_registration_ |
| (...skipping 10 matching lines...) Expand all Loading... |
| 152 const GURL& origin, | 154 const GURL& origin, |
| 153 int64_t service_worker_registration_id) { | 155 int64_t service_worker_registration_id) { |
| 154 if (service_worker_registration_id == | 156 if (service_worker_registration_id == |
| 155 subscribed_service_worker_registration_) { | 157 subscribed_service_worker_registration_) { |
| 156 subscribed_service_worker_registration_ = | 158 subscribed_service_worker_registration_ = |
| 157 kInvalidServiceWorkerRegistrationId; | 159 kInvalidServiceWorkerRegistrationId; |
| 158 } | 160 } |
| 159 } | 161 } |
| 160 | 162 |
| 161 } // namespace content | 163 } // namespace content |
| OLD | NEW |