diff -r 000000000000 -r 6474c204b198 netwerk/protocol/websocket/PWebSocket.ipdl --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/netwerk/protocol/websocket/PWebSocket.ipdl Wed Dec 31 06:09:35 2014 +0100 @@ -0,0 +1,56 @@ +/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* vim: set sw=2 ts=8 et tw=80 ft=cpp : */ + +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +include protocol PNecko; +include protocol PBrowser; +include InputStreamParams; +include URIParams; + +include protocol PBlob; //FIXME: bug #792908 + +using class IPC::SerializedLoadContext from "SerializedLoadContext.h"; + +namespace mozilla { +namespace net { + +async protocol PWebSocket +{ + manager PNecko; + +parent: + // Forwarded methods corresponding to methods on nsIWebSocketChannel + AsyncOpen(URIParams aURI, + nsCString aOrigin, + nsCString aProtocol, + bool aSecure, + // ping values only meaningful if client set them + uint32_t aPingInterval, + bool aClientSetPingInterval, + uint32_t aPingTimeout, + bool aClientSetPingTimeout); + Close(uint16_t code, nsCString reason); + SendMsg(nsCString aMsg); + SendBinaryMsg(nsCString aMsg); + SendBinaryStream(InputStreamParams aStream, uint32_t aLength); + + DeleteSelf(); + +child: + // Forwarded notifications corresponding to the nsIWebSocketListener interface + OnStart(nsCString aProtocol, nsCString aExtensions); + OnStop(nsresult aStatusCode); + OnMessageAvailable(nsCString aMsg); + OnBinaryMessageAvailable(nsCString aMsg); + OnAcknowledge(uint32_t aSize); + OnServerClose(uint16_t code, nsCString aReason); + + __delete__(); + +}; + +} //namespace net +} //namespace mozilla