1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 // Streams Private API.
6 namespace streamsPrivate
{
7 dictionary StreamInfo
{
8 // The MIME type of the intercepted URL request.
11 // The original URL that was intercepted.
12 DOMString originalUrl
;
14 // The URL that the stream can be read from.
17 // The ID of the tab that opened the stream. If the stream is not opened in
18 // a tab, it will be -1.
21 // The amount of data the Stream should contain, if known. If there is no
22 // information on the size it will be -1.
23 long expectedContentSize
;
25 // The HTTP response headers of the intercepted request stored as a
26 // dictionary mapping header name to header value. If a header name appears
27 // multiple times, the header values are merged in the dictionary and
28 // separated by a ", ".
29 object responseHeaders
;
32 callback AbortCallback
= void ();
35 // Abort the URL request on the given stream.
36 // |streamUrl| : The URL of the stream to abort.
37 // |callback| : Called when the stream URL is guaranteed to be invalid. The
38 // underlying URL request may not yet have been aborted when this is run.
39 static
void abort
(DOMString streamUrl
,
40 optional AbortCallback
callback);
44 // Fired when a resource is fetched which matches a mime type handled by
45 // this extension. The resource request is cancelled, and the extension is
46 // expected to handle the request. The event is restricted to a small number
47 // of white-listed extensions.
48 static
void onExecuteMimeTypeHandler
(StreamInfo streamInfo
);