OLD | NEW |
(Empty) | |
| 1 // Copyright 2017 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. |
| 4 |
| 5 #include "content/common/push_messaging_param_traits.h" |
| 6 |
| 7 namespace mojo { |
| 8 |
| 9 // PushRegistrationStatus |
| 10 static_assert( |
| 11 content::PushRegistrationStatus:: |
| 12 PUSH_REGISTRATION_STATUS_SUCCESS_FROM_PUSH_SERVICE == |
| 13 static_cast<content::PushRegistrationStatus>( |
| 14 content::mojom::PushRegistrationStatus::SUCCESS_FROM_PUSH_SERVICE), |
| 15 "PushRegistrationStatus enums must match, SUCCESS_FROM_PUSH_SERVICE"); |
| 16 |
| 17 static_assert( |
| 18 content::PushRegistrationStatus:: |
| 19 PUSH_REGISTRATION_STATUS_NO_SERVICE_WORKER == |
| 20 static_cast<content::PushRegistrationStatus>( |
| 21 content::mojom::PushRegistrationStatus::NO_SERVICE_WORKER), |
| 22 "PushRegistrationStatus enums must match, NO_SERVICE_WORKER"); |
| 23 |
| 24 static_assert( |
| 25 content::PushRegistrationStatus:: |
| 26 PUSH_REGISTRATION_STATUS_SERVICE_NOT_AVAILABLE == |
| 27 static_cast<content::PushRegistrationStatus>( |
| 28 content::mojom::PushRegistrationStatus::SERVICE_NOT_AVAILABLE), |
| 29 "PushRegistrationStatus enums must match, SERVICE_NOT_AVAILABLE"); |
| 30 |
| 31 static_assert( |
| 32 content::PushRegistrationStatus::PUSH_REGISTRATION_STATUS_LIMIT_REACHED == |
| 33 static_cast<content::PushRegistrationStatus>( |
| 34 content::mojom::PushRegistrationStatus::LIMIT_REACHED), |
| 35 "PushRegistrationStatus enums must match, LIMIT_REACHED"); |
| 36 |
| 37 static_assert( |
| 38 content::PushRegistrationStatus:: |
| 39 PUSH_REGISTRATION_STATUS_PERMISSION_DENIED == |
| 40 static_cast<content::PushRegistrationStatus>( |
| 41 content::mojom::PushRegistrationStatus::PERMISSION_DENIED), |
| 42 "PushRegistrationStatus enums must match, PERMISSION_DENIED"); |
| 43 |
| 44 static_assert( |
| 45 content::PushRegistrationStatus::PUSH_REGISTRATION_STATUS_SERVICE_ERROR == |
| 46 static_cast<content::PushRegistrationStatus>( |
| 47 content::mojom::PushRegistrationStatus::SERVICE_ERROR), |
| 48 "PushRegistrationStatus enums must match, SERVICE_ERROR"); |
| 49 |
| 50 static_assert( |
| 51 content::PushRegistrationStatus::PUSH_REGISTRATION_STATUS_NO_SENDER_ID == |
| 52 static_cast<content::PushRegistrationStatus>( |
| 53 content::mojom::PushRegistrationStatus::NO_SENDER_ID), |
| 54 "PushRegistrationStatus enums must match, NO_SENDER_ID"); |
| 55 |
| 56 static_assert( |
| 57 content::PushRegistrationStatus::PUSH_REGISTRATION_STATUS_STORAGE_ERROR == |
| 58 static_cast<content::PushRegistrationStatus>( |
| 59 content::mojom::PushRegistrationStatus::STORAGE_ERROR), |
| 60 "PushRegistrationStatus enums must match, STORAGE_ERROR"); |
| 61 |
| 62 static_assert( |
| 63 content::PushRegistrationStatus:: |
| 64 PUSH_REGISTRATION_STATUS_SUCCESS_FROM_CACHE == |
| 65 static_cast<content::PushRegistrationStatus>( |
| 66 content::mojom::PushRegistrationStatus::SUCCESS_FROM_CACHE), |
| 67 "PushRegistrationStatus enums must match, SUCCESS_FROM_CACHE"); |
| 68 |
| 69 static_assert( |
| 70 content::PushRegistrationStatus::PUSH_REGISTRATION_STATUS_NETWORK_ERROR == |
| 71 static_cast<content::PushRegistrationStatus>( |
| 72 content::mojom::PushRegistrationStatus::NETWORK_ERROR), |
| 73 "PushRegistrationStatus enums must match, NETWORK_ERROR"); |
| 74 |
| 75 static_assert( |
| 76 content::PushRegistrationStatus:: |
| 77 PUSH_REGISTRATION_STATUS_INCOGNITO_PERMISSION_DENIED == |
| 78 static_cast<content::PushRegistrationStatus>( |
| 79 content::mojom::PushRegistrationStatus:: |
| 80 INCOGNITO_PERMISSION_DENIED), |
| 81 "PushRegistrationStatus enums must match, INCOGNITO_PERMISSION_DENIED"); |
| 82 |
| 83 static_assert( |
| 84 content::PushRegistrationStatus:: |
| 85 PUSH_REGISTRATION_STATUS_PUBLIC_KEY_UNAVAILABLE == |
| 86 static_cast<content::PushRegistrationStatus>( |
| 87 content::mojom::PushRegistrationStatus::PUBLIC_KEY_UNAVAILABLE), |
| 88 "PushRegistrationStatus enums must match, PUBLIC_KEY_UNAVAILABLE"); |
| 89 |
| 90 static_assert( |
| 91 content::PushRegistrationStatus:: |
| 92 PUSH_REGISTRATION_STATUS_MANIFEST_EMPTY_OR_MISSING == |
| 93 static_cast<content::PushRegistrationStatus>( |
| 94 content::mojom::PushRegistrationStatus::MANIFEST_EMPTY_OR_MISSING), |
| 95 "PushRegistrationStatus enums must match, MANIFEST_EMPTY_OR_MISSING"); |
| 96 |
| 97 static_assert( |
| 98 content::PushRegistrationStatus:: |
| 99 PUSH_REGISTRATION_STATUS_SENDER_ID_MISMATCH == |
| 100 static_cast<content::PushRegistrationStatus>( |
| 101 content::mojom::PushRegistrationStatus::SENDER_ID_MISMATCH), |
| 102 "PushRegistrationStatus enums must match, SENDER_ID_MISMATCH"); |
| 103 |
| 104 static_assert(content::PushRegistrationStatus::PUSH_REGISTRATION_STATUS_LAST == |
| 105 static_cast<content::PushRegistrationStatus>( |
| 106 content::mojom::PushRegistrationStatus::LAST), |
| 107 "PushRegistrationStatus enums must match, LAST"); |
| 108 |
| 109 // PushErrorType |
| 110 static_assert(blink::WebPushError::ErrorType::ErrorTypeAbort == |
| 111 static_cast<blink::WebPushError::ErrorType>( |
| 112 content::mojom::PushErrorType::ABORT), |
| 113 "PushErrorType enums must match, ABORT"); |
| 114 |
| 115 static_assert(blink::WebPushError::ErrorType::ErrorTypeNetwork == |
| 116 static_cast<blink::WebPushError::ErrorType>( |
| 117 content::mojom::PushErrorType::NETWORK), |
| 118 "PushErrorType enums must match, NETWORK"); |
| 119 |
| 120 static_assert(blink::WebPushError::ErrorType::ErrorTypeNotAllowed == |
| 121 static_cast<blink::WebPushError::ErrorType>( |
| 122 content::mojom::PushErrorType::NOT_ALLOWED), |
| 123 "PushErrorType enums must match, NOT_ALLOWED"); |
| 124 |
| 125 static_assert(blink::WebPushError::ErrorType::ErrorTypeNotFound == |
| 126 static_cast<blink::WebPushError::ErrorType>( |
| 127 content::mojom::PushErrorType::NOT_FOUND), |
| 128 "PushErrorType enums must match, NOT_FOUND"); |
| 129 |
| 130 static_assert(blink::WebPushError::ErrorType::ErrorTypeNotSupported == |
| 131 static_cast<blink::WebPushError::ErrorType>( |
| 132 content::mojom::PushErrorType::NOT_SUPPORTED), |
| 133 "PushErrorType enums must match, NOT_SUPPORTED"); |
| 134 |
| 135 static_assert(blink::WebPushError::ErrorType::ErrorTypeUnknown == |
| 136 static_cast<blink::WebPushError::ErrorType>( |
| 137 content::mojom::PushErrorType::UNKNOWN), |
| 138 "PushErrorType enums must match, UNKNOWN"); |
| 139 |
| 140 static_assert(blink::WebPushError::ErrorType::ErrorTypeInvalidState == |
| 141 static_cast<blink::WebPushError::ErrorType>( |
| 142 content::mojom::PushErrorType::INVALID_STATE), |
| 143 "PushErrorType enums must match, INVALID_STATE"); |
| 144 |
| 145 static_assert(blink::WebPushError::ErrorType::ErrorTypeLast == |
| 146 static_cast<blink::WebPushError::ErrorType>( |
| 147 content::mojom::PushErrorType::LAST), |
| 148 "PushErrorType enums must match, LAST"); |
| 149 |
| 150 // PushGetRegistrationStatus |
| 151 static_assert( |
| 152 content::PushGetRegistrationStatus::PUSH_GETREGISTRATION_STATUS_SUCCESS == |
| 153 static_cast<content::PushGetRegistrationStatus>( |
| 154 content::mojom::PushGetRegistrationStatus::SUCCESS), |
| 155 "PushGetRegistrationStatus enums must match, SUCCESS"); |
| 156 |
| 157 static_assert( |
| 158 content::PushGetRegistrationStatus:: |
| 159 PUSH_GETREGISTRATION_STATUS_SERVICE_NOT_AVAILABLE == |
| 160 static_cast<content::PushGetRegistrationStatus>( |
| 161 content::mojom::PushGetRegistrationStatus::SERVICE_NOT_AVAILABLE), |
| 162 "PushGetRegistrationStatus enums must match, SERVICE_NOT_AVAILABLE"); |
| 163 |
| 164 static_assert(content::PushGetRegistrationStatus:: |
| 165 PUSH_GETREGISTRATION_STATUS_STORAGE_ERROR == |
| 166 static_cast<content::PushGetRegistrationStatus>( |
| 167 content::mojom::PushGetRegistrationStatus::STORAGE_ERROR), |
| 168 "PushGetRegistrationStatus enums must match, STORAGE_ERROR"); |
| 169 |
| 170 static_assert( |
| 171 content::PushGetRegistrationStatus:: |
| 172 PUSH_GETREGISTRATION_STATUS_REGISTRATION_NOT_FOUND == |
| 173 static_cast<content::PushGetRegistrationStatus>( |
| 174 content::mojom::PushGetRegistrationStatus::REGISTRATION_NOT_FOUND), |
| 175 "PushGetRegistrationStatus enums must match, REGISTRATION_NOT_FOUND"); |
| 176 |
| 177 static_assert( |
| 178 content::PushGetRegistrationStatus:: |
| 179 PUSH_GETREGISTRATION_STATUS_INCOGNITO_REGISTRATION_NOT_FOUND == |
| 180 static_cast<content::PushGetRegistrationStatus>( |
| 181 content::mojom::PushGetRegistrationStatus:: |
| 182 INCOGNITO_REGISTRATION_NOT_FOUND), |
| 183 "PushGetRegistrationStatus enums must match, " |
| 184 "INCOGNITO_REGISTRATION_NOT_FOUND"); |
| 185 |
| 186 static_assert( |
| 187 content::PushGetRegistrationStatus:: |
| 188 PUSH_GETREGISTRATION_STATUS_PUBLIC_KEY_UNAVAILABLE == |
| 189 static_cast<content::PushGetRegistrationStatus>( |
| 190 content::mojom::PushGetRegistrationStatus::PUBLIC_KEY_UNAVAILABLE), |
| 191 "PushGetRegistrationStatus enums must match, PUBLIC_KEY_UNAVAILABLE"); |
| 192 |
| 193 static_assert( |
| 194 content::PushGetRegistrationStatus::PUSH_GETREGISTRATION_STATUS_LAST == |
| 195 static_cast<content::PushGetRegistrationStatus>( |
| 196 content::mojom::PushGetRegistrationStatus::LAST), |
| 197 "PushGetRegistrationStatus enums must match, LAST"); |
| 198 |
| 199 // PushPermissionStatus |
| 200 static_assert(blink::WebPushPermissionStatus::WebPushPermissionStatusGranted == |
| 201 static_cast<blink::WebPushPermissionStatus>( |
| 202 content::mojom::PushPermissionStatus::GRANTED), |
| 203 "PushPermissionStatus enums must match, GRANTED"); |
| 204 |
| 205 static_assert(blink::WebPushPermissionStatus::WebPushPermissionStatusDenied == |
| 206 static_cast<blink::WebPushPermissionStatus>( |
| 207 content::mojom::PushPermissionStatus::DENIED), |
| 208 "PushPermissionStatus enums must match, DENIED"); |
| 209 |
| 210 static_assert(blink::WebPushPermissionStatus::WebPushPermissionStatusPrompt == |
| 211 static_cast<blink::WebPushPermissionStatus>( |
| 212 content::mojom::PushPermissionStatus::PROMPT), |
| 213 "PushPermissionStatus enums must match, PROMPT"); |
| 214 |
| 215 static_assert(blink::WebPushPermissionStatus::WebPushPermissionStatusLast == |
| 216 static_cast<blink::WebPushPermissionStatus>( |
| 217 content::mojom::PushPermissionStatus::LAST), |
| 218 "PushPermissionStatus enums must match, LAST"); |
| 219 |
| 220 // static |
| 221 bool StructTraits<content::mojom::PushSubscriptionOptionsDataView, |
| 222 content::PushSubscriptionOptions>:: |
| 223 Read(content::mojom::PushSubscriptionOptionsDataView data, |
| 224 content::PushSubscriptionOptions* out) { |
| 225 out->user_visible_only = data.user_visible_only(); |
| 226 if (!data.ReadSenderInfo(&out->sender_info)) { |
| 227 return false; |
| 228 } |
| 229 return true; |
| 230 } |
| 231 |
| 232 // static |
| 233 content::mojom::PushRegistrationStatus EnumTraits< |
| 234 content::mojom::PushRegistrationStatus, |
| 235 content::PushRegistrationStatus>::ToMojom(content::PushRegistrationStatus |
| 236 input) { |
| 237 if (input >= content::PushRegistrationStatus:: |
| 238 PUSH_REGISTRATION_STATUS_SUCCESS_FROM_PUSH_SERVICE && |
| 239 input <= content::PushRegistrationStatus::PUSH_REGISTRATION_STATUS_LAST) { |
| 240 return static_cast<content::mojom::PushRegistrationStatus>(input); |
| 241 } |
| 242 |
| 243 NOTREACHED(); |
| 244 return content::mojom::PushRegistrationStatus::SERVICE_ERROR; |
| 245 } |
| 246 |
| 247 // static |
| 248 bool EnumTraits<content::mojom::PushRegistrationStatus, |
| 249 content::PushRegistrationStatus>:: |
| 250 FromMojom(content::mojom::PushRegistrationStatus input, |
| 251 content::PushRegistrationStatus* output) { |
| 252 if (input >= |
| 253 content::mojom::PushRegistrationStatus::SUCCESS_FROM_PUSH_SERVICE && |
| 254 input <= content::mojom::PushRegistrationStatus::LAST) { |
| 255 *output = static_cast<content::PushRegistrationStatus>(input); |
| 256 return true; |
| 257 } |
| 258 |
| 259 NOTREACHED(); |
| 260 return false; |
| 261 } |
| 262 |
| 263 // static |
| 264 content::mojom::PushErrorType |
| 265 EnumTraits<content::mojom::PushErrorType, blink::WebPushError::ErrorType>:: |
| 266 ToMojom(blink::WebPushError::ErrorType input) { |
| 267 if (input >= blink::WebPushError::ErrorType::ErrorTypeAbort && |
| 268 input <= blink::WebPushError::ErrorType::ErrorTypeInvalidState) { |
| 269 return static_cast<content::mojom::PushErrorType>(input); |
| 270 } |
| 271 |
| 272 NOTREACHED(); |
| 273 return content::mojom::PushErrorType::UNKNOWN; |
| 274 } |
| 275 |
| 276 // static |
| 277 bool EnumTraits<content::mojom::PushErrorType, blink::WebPushError::ErrorType>:: |
| 278 FromMojom(content::mojom::PushErrorType input, |
| 279 blink::WebPushError::ErrorType* output) { |
| 280 if (input >= content::mojom::PushErrorType::ABORT && |
| 281 input <= content::mojom::PushErrorType::INVALID_STATE) { |
| 282 *output = static_cast<blink::WebPushError::ErrorType>(input); |
| 283 return true; |
| 284 } |
| 285 |
| 286 NOTREACHED(); |
| 287 return false; |
| 288 } |
| 289 |
| 290 // static |
| 291 content::mojom::PushGetRegistrationStatus |
| 292 EnumTraits<content::mojom::PushGetRegistrationStatus, |
| 293 content::PushGetRegistrationStatus>:: |
| 294 ToMojom(content::PushGetRegistrationStatus input) { |
| 295 if (input >= content::PushGetRegistrationStatus:: |
| 296 PUSH_GETREGISTRATION_STATUS_SUCCESS && |
| 297 input <= content::PushGetRegistrationStatus:: |
| 298 PUSH_GETREGISTRATION_STATUS_LAST) { |
| 299 return static_cast<content::mojom::PushGetRegistrationStatus>(input); |
| 300 } |
| 301 |
| 302 NOTREACHED(); |
| 303 return content::mojom::PushGetRegistrationStatus::SERVICE_NOT_AVAILABLE; |
| 304 } |
| 305 |
| 306 // static |
| 307 bool EnumTraits<content::mojom::PushGetRegistrationStatus, |
| 308 content::PushGetRegistrationStatus>:: |
| 309 FromMojom(content::mojom::PushGetRegistrationStatus input, |
| 310 content::PushGetRegistrationStatus* output) { |
| 311 if (input >= content::mojom::PushGetRegistrationStatus::SUCCESS && |
| 312 input <= content::mojom::PushGetRegistrationStatus::LAST) { |
| 313 *output = static_cast<content::PushGetRegistrationStatus>(input); |
| 314 return true; |
| 315 } |
| 316 |
| 317 NOTREACHED(); |
| 318 return false; |
| 319 } |
| 320 |
| 321 // static |
| 322 content::mojom::PushPermissionStatus EnumTraits< |
| 323 content::mojom::PushPermissionStatus, |
| 324 blink::WebPushPermissionStatus>::ToMojom(blink::WebPushPermissionStatus |
| 325 input) { |
| 326 if (input >= blink::WebPushPermissionStatus::WebPushPermissionStatusGranted && |
| 327 input <= blink::WebPushPermissionStatus::WebPushPermissionStatusLast) { |
| 328 return static_cast<content::mojom::PushPermissionStatus>(input); |
| 329 } |
| 330 |
| 331 NOTREACHED(); |
| 332 return content::mojom::PushPermissionStatus::DENIED; |
| 333 } |
| 334 |
| 335 // static |
| 336 bool EnumTraits<content::mojom::PushPermissionStatus, |
| 337 blink::WebPushPermissionStatus>:: |
| 338 FromMojom(content::mojom::PushPermissionStatus input, |
| 339 blink::WebPushPermissionStatus* output) { |
| 340 if (input >= content::mojom::PushPermissionStatus::GRANTED && |
| 341 input <= content::mojom::PushPermissionStatus::LAST) { |
| 342 *output = static_cast<blink::WebPushPermissionStatus>(input); |
| 343 return true; |
| 344 } |
| 345 |
| 346 NOTREACHED(); |
| 347 return false; |
| 348 } |
| 349 |
| 350 } // namespace mojo |
OLD | NEW |