michael@0: /* This Source Code Form is subject to the terms of the Mozilla Public michael@0: * License, v. 2.0. If a copy of the MPL was not distributed with this michael@0: * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ michael@0: michael@0: #include "nsIStreamListener.idl" michael@0: michael@0: interface nsITabParent; michael@0: michael@0: %{C++ michael@0: namespace mozilla { michael@0: namespace net { michael@0: class HttpChannelParentListener; michael@0: } michael@0: } michael@0: %} michael@0: michael@0: [ptr] native HttpChannelParentListener(mozilla::net::HttpChannelParentListener); michael@0: michael@0: /** michael@0: * Implemented by chrome side of IPC protocols. michael@0: */ michael@0: michael@0: [scriptable, uuid(8bf3aa90-ec5d-4977-bd03-197274befc78)] michael@0: interface nsIParentChannel : nsIStreamListener michael@0: { michael@0: /** michael@0: * Called to set the HttpChannelParentListener object (optional). michael@0: */ michael@0: [noscript] void setParentListener(in HttpChannelParentListener listener); michael@0: michael@0: /** michael@0: * Called to invoke deletion of the IPC protocol. michael@0: */ michael@0: void delete(); michael@0: };