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

Side by Side Diff: Source/modules/websockets/WebSocket.idl

Issue 954933003: Sync the WebSocket interface with the spec (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 5 years, 10 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 | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2009 Google Inc. All rights reserved. 2 * Copyright (C) 2009 Google Inc. All rights reserved.
3 * Copyright (C) 2010, 2011 Apple Inc. All Rights Reserved. 3 * Copyright (C) 2010, 2011 Apple Inc. All Rights Reserved.
4 * 4 *
5 * Redistribution and use in source and binary forms, with or without 5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are 6 * modification, are permitted provided that the following conditions are
7 * met: 7 * met:
8 * 8 *
9 * * Redistributions of source code must retain the above copyright 9 * * Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer. 10 * notice, this list of conditions and the following disclaimer.
(...skipping 11 matching lines...) Expand all
22 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
23 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
24 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
25 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
26 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
27 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
28 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
29 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30 */ 30 */
31 31
32 // http://dev.w3.org/html5/websockets/#websocket 32 // http://dev.w3.org/html5/websockets/#websocket
philipj_slow 2015/02/26 03:02:53 I'm pretty sure this copy of the spec is abandoned
jsbell 2015/02/26 19:56:54 Done.
33 // http://www.whatwg.org/specs/web-apps/current-work/multipage/network.html#webs ocket 33 // https://html.spec.whatwg.org/multipage/comms.html#websocket
philipj_slow 2015/02/26 03:02:53 Can you link to https://html.spec.whatwg.org/multi
jsbell 2015/02/26 19:56:53 Done.
34 34
35 // FIXME: use BinaryType in binaryType 35 // FIXME: use BinaryType in binaryType
jsbell 2015/02/25 18:51:11 See https://codereview.chromium.org/871013007/ by
36 enum BinaryType { "blob", "arraybuffer" }; 36 enum BinaryType { "blob", "arraybuffer" };
37 37
38 [ 38 [
39 ActiveDOMObject, 39 ActiveDOMObject,
40 // FIXME: should be optional union type http://crbug.com/240176 40 Constructor(DOMString url, optional (DOMString or sequence<DOMString>) proto cols),
jsbell 2015/02/25 18:51:11 Spec has (DOMString or DOMString[]) but it's uncle
jsbell 2015/02/25 23:18:55 I filed this against the HTML spec: https://www.w
philipj_slow 2015/02/26 03:02:53 Can you add a FIXME here linking to that spec bug,
jsbell 2015/02/26 19:56:54 Done.
41 Constructor(DOMString url, optional DOMString protocol),
42 Constructor(DOMString url, sequence<DOMString> protocols),
43 ConstructorCallWith=ExecutionContext, 41 ConstructorCallWith=ExecutionContext,
44 Exposed=(Window,Worker), 42 Exposed=(Window,Worker),
45 RaisesException=Constructor, 43 RaisesException=Constructor,
46 GarbageCollected, 44 GarbageCollected,
47 ImplementedAs=DOMWebSocket, 45 ImplementedAs=DOMWebSocket,
48 ] interface WebSocket : EventTarget { 46 ] interface WebSocket : EventTarget {
49 [DeprecateAs=WebSocketURL] readonly attribute DOMString URL; // Lowercased . url is the one in the spec, but leaving .URL for compatibility reasons. 47 [DeprecateAs=WebSocketURL] readonly attribute DOMString URL; // Lowercased . url is the one in the spec, but leaving .URL for compatibility reasons.
philipj_slow 2015/02/26 03:02:53 So that it's easy to find all the differences, can
jsbell 2015/02/26 19:56:53 Done.
50 readonly attribute DOMString url; 48 readonly attribute DOMString url;
51 49
52 // ready state 50 // ready state
53 const unsigned short CONNECTING = 0; 51 const unsigned short CONNECTING = 0;
54 const unsigned short OPEN = 1; 52 const unsigned short OPEN = 1;
55 const unsigned short CLOSING = 2; 53 const unsigned short CLOSING = 2;
56 const unsigned short CLOSED = 3; 54 const unsigned short CLOSED = 3;
57 readonly attribute unsigned short readyState; 55 readonly attribute unsigned short readyState;
58 readonly attribute unsigned long bufferedAmount; 56 readonly attribute unsigned long bufferedAmount;
59 57
60 // networking 58 // networking
61 attribute EventHandler onopen; 59 attribute EventHandler onopen;
62 attribute EventHandler onerror; 60 attribute EventHandler onerror;
63 attribute EventHandler onclose; 61 attribute EventHandler onclose;
64 [TreatReturnedNullStringAs=Undefined] readonly attribute DOMString extension s; 62 [TreatReturnedNullStringAs=Undefined] readonly attribute DOMString extension s;
philipj_slow 2015/02/26 03:02:53 Add FIXMEs for these two [TreatReturnedNullStringA
jsbell 2015/02/26 19:56:54 Done. I traced the code back through from Chromiu
65 [TreatReturnedNullStringAs=Undefined] readonly attribute DOMString protocol; 63 [TreatReturnedNullStringAs=Undefined] readonly attribute DOMString protocol;
66 [RaisesException] void close([Clamp] optional unsigned short code, optional DOMString reason); 64 [RaisesException] void close([Clamp] optional unsigned short code, optional USVString reason);
67 65
68 // messaging 66 // messaging
69 attribute EventHandler onmessage; 67 attribute EventHandler onmessage;
70 attribute DOMString binaryType; 68 attribute DOMString binaryType;
71 [RaisesException] void send(DOMString data); 69 [RaisesException] void send(USVString data);
72 [RaisesException] void send(Blob data); 70 [RaisesException] void send(Blob data);
philipj_slow 2015/02/26 03:02:53 Note that without [TypeChecking=Interface], some n
philipj_slow 2015/02/26 03:05:59 Hmm, I'm actually not sure what happens when there
jsbell 2015/02/26 05:45:18 I'll take a look at the generated code and report
jsbell 2015/02/26 19:56:54 The generated code does change, but there's no beh
philipj_slow 2015/02/27 04:23:09 Oh, overloading also changes things a bit. [TypeCh
73 [RaisesException] void send(ArrayBuffer data); 71 [RaisesException] void send(ArrayBuffer data);
74 [RaisesException] void send(ArrayBufferView data); 72 [RaisesException] void send(ArrayBufferView data);
75 }; 73 };
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698