Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(307)

Side by Side Diff: Source/modules/presentation/PresentationError.cpp

Issue 1212423003: Presentation API: Blink changes to allow getAvailability() to be rejected. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@presentation-availability-cleanups
Patch Set: Created 5 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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 "config.h" 5 #include "config.h"
6 #include "modules/presentation/PresentationError.h" 6 #include "modules/presentation/PresentationError.h"
7 7
8 #include "core/dom/DOMException.h" 8 #include "core/dom/DOMException.h"
9 #include "core/dom/ExceptionCode.h" 9 #include "core/dom/ExceptionCode.h"
10 #include "public/platform/modules/presentation/WebPresentationError.h" 10 #include "public/platform/modules/presentation/WebPresentationError.h"
11 #include "wtf/OwnPtr.h" 11 #include "wtf/OwnPtr.h"
12 12
13 namespace blink { 13 namespace blink {
14 14
15 // static 15 // static
16 DOMException* PresentationError::take(WebPresentationError* errorRaw) 16 DOMException* PresentationError::take(const WebPresentationError& error)
17 { 17 {
18 ASSERT(errorRaw);
19 OwnPtr<WebPresentationError> error = adoptPtr(errorRaw);
20
21 ExceptionCode code = UnknownError; 18 ExceptionCode code = UnknownError;
22 switch (error->errorType) { 19 switch (error.errorType) {
23 case WebPresentationError::ErrorTypeNoAvailableScreens: 20 case WebPresentationError::ErrorTypeNoAvailableScreens:
24 case WebPresentationError::ErrorTypeNoPresentationFound: 21 case WebPresentationError::ErrorTypeNoPresentationFound:
25 code = NotFoundError; 22 code = NotFoundError;
26 break; 23 break;
27 case WebPresentationError::ErrorTypeSessionRequestCancelled: 24 case WebPresentationError::ErrorTypeSessionRequestCancelled:
28 code = AbortError; 25 code = AbortError;
29 break; 26 break;
27 case WebPresentationError::ErrorTypeAvailabilityNotSupported:
28 code = NotSupportedError;
29 break;
30 case WebPresentationError::ErrorTypeUnknown: 30 case WebPresentationError::ErrorTypeUnknown:
31 code = UnknownError; 31 code = UnknownError;
32 break; 32 break;
33 } 33 }
34 34
35 return DOMException::create(code, error->message); 35 return DOMException::create(code, error.message);
36 }
37
38 // static
39 void PresentationError::dispose(WebPresentationError* error)
40 {
41 delete error;
42 } 36 }
43 37
44 } // namespace blink 38 } // namespace blink
OLDNEW
« no previous file with comments | « Source/modules/presentation/PresentationError.h ('k') | Source/modules/presentation/PresentationSession.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698