| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 module extensions.mime_handler; | 5 module extensions.mime_handler; |
| 6 | 6 |
| 7 // Information about a stream. | 7 // Information about a stream. |
| 8 struct StreamInfo { | 8 struct StreamInfo { |
| 9 // The MIME type of the intercepted URL request. | 9 // The MIME type of the intercepted URL request. |
| 10 string mime_type; | 10 string mime_type; |
| 11 | 11 |
| 12 // The original URL that was intercepted. | 12 // The original URL that was intercepted. |
| 13 string original_url; | 13 string original_url; |
| 14 | 14 |
| 15 // The URL that the stream can be read from. | 15 // The URL that the stream can be read from. |
| 16 string stream_url; | 16 string stream_url; |
| 17 | 17 |
| 18 // The ID of the tab that opened the stream. If the stream is not opened in a | 18 // The ID of the tab that opened the stream. If the stream is not opened in a |
| 19 // tab, it will be -1. | 19 // tab, it will be -1. |
| 20 int32 tab_id; | 20 int32 tab_id; |
| 21 | 21 |
| 22 // The HTTP response headers of the intercepted request stored as a dictionary | 22 // The HTTP response headers of the intercepted request stored as a dictionary |
| 23 // mapping header name to header value. If a header name appears multiple | 23 // mapping header name to header value. If a header name appears multiple |
| 24 // times, the header values are merged in the dictionary and separated by a | 24 // times, the header values are merged in the dictionary and separated by a |
| 25 // ",". | 25 // ",". Non-ASCII headers are dropped. |
| 26 map<string, string> response_headers; | 26 map<string, string> response_headers; |
| 27 | 27 |
| 28 // Whether the stream is embedded within another document. | 28 // Whether the stream is embedded within another document. |
| 29 bool embedded; | 29 bool embedded; |
| 30 }; | 30 }; |
| 31 | 31 |
| 32 interface MimeHandlerService { | 32 interface MimeHandlerService { |
| 33 // Returns information about the stream associated with this service instance. | 33 // Returns information about the stream associated with this service instance. |
| 34 // If the stream has been aborted, |stream_info| will be null. | 34 // If the stream has been aborted, |stream_info| will be null. |
| 35 GetStreamInfo() => (StreamInfo? stream_info); | 35 GetStreamInfo() => (StreamInfo? stream_info); |
| 36 | 36 |
| 37 // Aborts the stream associated with this service instance. This is an | 37 // Aborts the stream associated with this service instance. This is an |
| 38 // idempotent operation. | 38 // idempotent operation. |
| 39 AbortStream() => (); | 39 AbortStream() => (); |
| 40 }; | 40 }; |
| OLD | NEW |