OLD | NEW |
---|---|
(Empty) | |
1 /* | |
2 * Copyright (C) 2015 Google Inc. All rights reserved. | |
3 * | |
4 * Redistribution and use in source and binary forms, with or without | |
5 * modification, are permitted provided that the following conditions are | |
6 * met: | |
7 * | |
8 * * Redistributions of source code must retain the above copyright | |
9 * notice, this list of conditions and the following disclaimer. | |
10 * * Redistributions in binary form must reproduce the above | |
11 * copyright notice, this list of conditions and the following disclaimer | |
12 * in the documentation and/or other materials provided with the | |
13 * distribution. | |
14 * * Neither the name of Google Inc. nor the names of its | |
15 * contributors may be used to endorse or promote products derived from | |
16 * this software without specific prior written permission. | |
17 * | |
18 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS | |
19 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT | |
20 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR | |
21 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT | |
22 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, | |
23 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT | |
24 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | |
25 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | |
26 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | |
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. | |
29 */ | |
30 | |
31 #ifndef WebRTCCertificate_h | |
32 #define WebRTCCertificate_h | |
33 | |
34 #include "public/platform/WebURL.h" | |
35 | |
36 namespace blink { | |
37 | |
38 // Interface defining what blink needs to know about certificates (abstracting a way | |
39 // Chrome and WebRTC layer implementation details). You can create shallow copie s of the | |
40 // WebRTCCertificate. When all copies are destroyed, the implementation-specific data must | |
41 // be freed. | |
42 class WebRTCCertificate { | |
43 public: | |
44 WebRTCCertificate() { } | |
Guido Urdaneta
2015/09/03 11:07:49
You don't need this constructor.
hbos_chromium
2015/09/03 16:01:37
Actually because I've defined other constructors (
| |
45 virtual ~WebRTCCertificate() { } | |
Guido Urdaneta
2015/09/03 11:07:49
= default is preferred.
hbos_chromium
2015/09/03 16:01:37
Done.
| |
46 WebRTCCertificate(const WebRTCCertificate&) = delete; | |
47 WebRTCCertificate& operator=(const WebRTCCertificate&) = delete; | |
Guido Urdaneta
2015/09/03 11:07:49
To prevent copying you can use WTF_MAKE_NONCOPYABL
hbos_chromium
2015/09/03 16:01:37
Ok. I'll use it and see if anyone complains.
| |
48 | |
49 // Copies the WebRTCCertificate object without copying the underlying | |
50 // implementation-specific (WebRTC layer) certificate. When all copies are d estroyed | |
51 // the underlying data is freed. | |
52 virtual WebRTCCertificate* shallowCopy() const = 0; | |
53 | |
54 virtual double expires() const = 0; | |
55 }; | |
56 | |
57 // Interface defining a callback function for use in WebRTCCertificateGenerator' s | |
58 // asynchronous certificate generation. | |
59 class WebRTCCertificateObserver { | |
Guido Urdaneta
2015/09/03 11:07:49
What about using the generic WebCallbacks?
hbos_chromium
2015/09/03 16:01:37
Done.
| |
60 public: | |
61 virtual ~WebRTCCertificateObserver() { } | |
62 | |
63 // Called when WebRTCCertificateGenerator completes the generateCertificate request. | |
64 // On success, |certificate| != null. The ownership is passed to this functi on. | |
65 // On failure, |certificate| == null. | |
66 virtual void onGenerateComplete(WebRTCCertificate* /*certificate*/) = 0; | |
67 }; | |
68 | |
69 // Interface defining a class that can generate WebRTCCertificates asynchronousl y. | |
70 class WebRTCCertificateGenerator { | |
71 public: | |
72 virtual ~WebRTCCertificateGenerator() { } | |
73 | |
74 // Start generating a certificate. The observer's onGenerateComplete is call ed when | |
75 // the asynchronous operation finished (whether or not successful). | |
76 virtual void generateCertificate( | |
77 int keyType, | |
78 const WebURL& /*url*/, | |
79 const WebURL& /*firstPartyForCookies*/, | |
80 WebRTCCertificateObserver*) = 0; | |
81 }; | |
82 | |
83 } // namespace blink | |
84 | |
85 #endif // WebRTCCertificate_h | |
OLD | NEW |