diff options
Diffstat (limited to 'netwerk/base/nsIParentChannel.idl')
-rw-r--r-- | netwerk/base/nsIParentChannel.idl | 76 |
1 files changed, 76 insertions, 0 deletions
diff --git a/netwerk/base/nsIParentChannel.idl b/netwerk/base/nsIParentChannel.idl new file mode 100644 index 0000000000..a351019d7d --- /dev/null +++ b/netwerk/base/nsIParentChannel.idl @@ -0,0 +1,76 @@ +/* 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 "nsIStreamListener.idl" +#include "nsIHttpChannel.idl" + +interface nsIRemoteTab; + +%{C++ +namespace mozilla { +namespace net { +class ParentChannelListener; +} +} +%} + +[ptr] native ParentChannelListener(mozilla::net::ParentChannelListener); + +/** + * Implemented by chrome side of IPC protocols. + */ + +[scriptable, uuid(e0fc4801-6030-4653-a59f-1fb282bd1a04)] +interface nsIParentChannel : nsIStreamListener +{ + /** + * Called to set the ParentChannelListener object (optional). + */ + [noscript] void setParentListener(in ParentChannelListener listener); + + /** + * Called to set matched information when URL matches SafeBrowsing list. + * @param aList + * Name of the list that matched + * @param aProvider + * Name of provider that matched + * @param aFullHash + * String represents full hash that matched + */ + [noscript] void setClassifierMatchedInfo(in ACString aList, + in ACString aProvider, + in ACString aFullHash); + + /** + * Called to set matched tracking information when URL matches tracking annotation list. + * @param aList + * Comma-separated list of tables that matched + * @param aFullHashes + * Comma-separated list of base64 encoded full hashes that matched + */ + [noscript] void setClassifierMatchedTrackingInfo(in ACString aLists, + in ACString aFullHashes); + + /** + * Called to notify the HttpChannelChild that the resource being loaded + * has been classified. + * @param aClassificationFlags + * What classifier identifies this channel. + * @param aIsThirdParty + * Whether or not the resourced is considered first-party + * with the URI of the window. + */ + [noscript] void notifyClassificationFlags(in uint32_t aClassificationFlags, + in bool aIsThirdParty); + + /** + * Called to invoke deletion of the IPC protocol. + */ + void delete(); + + /** + * The remote type of the target process for this load. + */ + readonly attribute AUTF8String remoteType; +}; |