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

Unified Diff: extensions/common/api/mime_handler_private.idl

Issue 797183005: Add a mimeHandler extension API. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@streams-lifetime
Patch Set: rebase Created 5 years, 11 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 side-by-side diff with in-line comments
Download patch
Index: extensions/common/api/mime_handler_private.idl
diff --git a/extensions/common/api/mime_handler_private.idl b/extensions/common/api/mime_handler_private.idl
new file mode 100644
index 0000000000000000000000000000000000000000..af402d718efb83c9e6f8854ced8afecf9fa79690
--- /dev/null
+++ b/extensions/common/api/mime_handler_private.idl
@@ -0,0 +1,41 @@
+// Copyright 2015 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+// Mime handler API.
+[nodoc] namespace mimeHandlerPrivate {
+ dictionary StreamInfo {
+ // The MIME type of the intercepted URL request.
+ DOMString mimeType;
+
+ // The original URL that was intercepted.
+ DOMString originalUrl;
+
+ // The URL that the stream can be read from.
+ DOMString streamUrl;
+
+ // The ID of the tab that opened the stream. If the stream is not opened in
+ // a tab, it will be -1.
+ long tabId;
benwells 2015/01/19 01:05:19 Are tab ids unique (I don't think they are). Do th
Sam McNally 2015/01/19 04:29:57 If they aren't the tabs API is probably broken.
benwells 2015/01/19 04:56:54 Yep cool. I just checked, I was thinking of page I
+
+ // The HTTP response headers of the intercepted request stored as a
+ // dictionary mapping header name to header value. If a header name appears
+ // multiple times, the header values are merged in the dictionary and
+ // separated by a ", ".
+ object responseHeaders;
+
+ // Whether the stream is embedded within another document.
+ boolean embedded;
+ };
+
+ callback AbortCallback = void ();
+ callback GetStreamDetailsCallback = void (StreamInfo streamInfo);
+
+ interface Functions {
+ // Returns the StreamInfo for the stream for this context if there is one.
+ [nocompile] static void getStreamInfo(GetStreamDetailsCallback callback);
+
+ // Aborts the stream for this context if there is one.
+ [nocompile] static void abortStream(optional AbortCallback callback);
+ };
+};

Powered by Google App Engine
This is Rietveld 408576698