OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2009 Google Inc. All rights reserved. | 2 * Copyright (C) 2009 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 10 matching lines...) Expand all Loading... |
21 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT | 21 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
22 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, | 22 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
23 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT | 23 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
24 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | 24 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
25 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | 25 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
26 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | 26 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | 27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
28 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 28 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
29 */ | 29 */ |
30 | 30 |
31 #ifndef WebSharedWorkerConnector_h | 31 #ifndef WebNotificationManager_h |
32 #define WebSharedWorkerConnector_h | 32 #define WebNotificationManager_h |
33 | 33 |
34 #include "WebContentSecurityPolicy.h" | 34 #include "WebNotificationPermission.h" |
35 | 35 |
36 namespace blink { | 36 namespace blink { |
37 | 37 |
38 class WebString; | 38 struct WebNotificationData; |
39 class WebMessagePortChannel; | 39 class WebNotificationDelegate; |
40 class WebURL; | 40 class WebSerializedOrigin; |
41 | 41 |
42 // This is the interface to conncect to SharedWorker. | 42 // Provides the services to show platform notifications to the user. |
43 // Since SharedWorkers communicate entirely through MessagePorts this interface
only contains APIs for starting up a SharedWorker. | 43 class WebNotificationManager { |
44 class WebSharedWorkerConnector { | |
45 public: | 44 public: |
46 virtual ~WebSharedWorkerConnector() { } | 45 virtual ~WebNotificationManager() { } |
47 | 46 |
48 class ConnectListener { | 47 // Shows a notification on the user's system. |
49 public: | 48 virtual bool show(const blink::WebSerializedOrigin&, const WebNotificationDa
ta&, WebNotificationDelegate*) = 0; |
50 // Invoked once the connect event has been sent so the caller can free t
his object. | |
51 virtual void connected() = 0; | |
52 virtual void scriptLoadFailed() = 0; | |
53 }; | |
54 | 49 |
55 // Sends a connect event to the SharedWorker context. The listener is invoke
d when this async operation completes. | 50 // Closes a notification previously shown, and removes it if being shown. |
56 virtual void connect(WebMessagePortChannel*, ConnectListener*) = 0; | 51 virtual void close(WebNotificationDelegate*) = 0; |
| 52 |
| 53 // Indicates that the delegate object is being destroyed, and must no longer |
| 54 // be used by the embedder to dispatch events. |
| 55 virtual void notifyDelegateDestroyed(WebNotificationDelegate*) = 0; |
| 56 |
| 57 // Checks the permission level for the given origin. |
| 58 virtual WebNotificationPermission checkPermission(const WebSerializedOrigin&
) = 0; |
57 }; | 59 }; |
58 | 60 |
59 } // namespace blink | 61 } // namespace blink |
60 | 62 |
61 #endif | 63 #endif |
OLD | NEW |