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

Side by Side Diff: extensions/renderer/resources/mime_handler_private_custom_bindings.js

Issue 2952893002: [Extensions Bindings] Move setHandleRequestWithPromise to util (Closed)
Patch Set: lazyboy's Created 3 years, 5 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 unified diff | Download patch
« no previous file with comments | « extensions/renderer/resources/binding.js ('k') | extensions/renderer/resources/utils.js » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 /** 5 /**
6 * Custom bindings for the mime handler API. 6 * Custom bindings for the mime handler API.
7 */ 7 */
8 8
9 var binding = require('binding').Binding.create('mimeHandlerPrivate'); 9 var binding =
10 apiBridge || require('binding').Binding.create('mimeHandlerPrivate');
11 var utils = require('utils');
10 12
11 var NO_STREAM_ERROR = 13 var NO_STREAM_ERROR =
12 'Streams are only available from a mime handler view guest.'; 14 'Streams are only available from a mime handler view guest.';
13 var STREAM_ABORTED_ERROR = 'Stream has been aborted.'; 15 var STREAM_ABORTED_ERROR = 'Stream has been aborted.';
14 16
15 var servicePromise = Promise.all([ 17 var servicePromise = Promise.all([
16 requireAsync('content/public/renderer/frame_interfaces'), 18 requireAsync('content/public/renderer/frame_interfaces'),
17 requireAsync('extensions/common/api/mime_handler.mojom'), 19 requireAsync('extensions/common/api/mime_handler.mojom'),
18 ]).then(function(modules) { 20 ]).then(function(modules) {
19 var frameInterfaces = modules[0]; 21 var frameInterfaces = modules[0];
(...skipping 30 matching lines...) Expand all
50 originalUrl: streamInfo.original_url, 52 originalUrl: streamInfo.original_url,
51 streamUrl: streamInfo.stream_url, 53 streamUrl: streamInfo.stream_url,
52 tabId: streamInfo.tab_id, 54 tabId: streamInfo.tab_id,
53 embedded: !!streamInfo.embedded, 55 embedded: !!streamInfo.embedded,
54 responseHeaders: headers, 56 responseHeaders: headers,
55 }; 57 };
56 } 58 }
57 59
58 binding.registerCustomHook(function(bindingsAPI) { 60 binding.registerCustomHook(function(bindingsAPI) {
59 var apiFunctions = bindingsAPI.apiFunctions; 61 var apiFunctions = bindingsAPI.apiFunctions;
60 apiFunctions.setHandleRequestWithPromise('getStreamInfo', function() { 62 utils.handleRequestWithPromiseDoNotUse(
63 apiFunctions, 'mimeHandlerPrivate', 'getStreamInfo',
64 function() {
61 if (!streamInfoPromise) 65 if (!streamInfoPromise)
62 streamInfoPromise = createStreamInfoPromise(); 66 streamInfoPromise = createStreamInfoPromise();
63 return streamInfoPromise.then(constructStreamInfoDict); 67 return streamInfoPromise.then(constructStreamInfoDict);
64 }); 68 });
65 69
66 apiFunctions.setHandleRequestWithPromise('abortStream', function() { 70 utils.handleRequestWithPromiseDoNotUse(
71 apiFunctions, 'mimeHandlerPrivate', 'abortStream',
72 function() {
67 return servicePromise.then(function(service) { 73 return servicePromise.then(function(service) {
68 return service.abortStream().then(function() {}); 74 return service.abortStream().then(function() {});
69 }).catch(throwNoStreamError); 75 }).catch(throwNoStreamError);
70 }); 76 });
71 }); 77 });
72 78
73 exports.$set('binding', binding.generate()); 79 if (!apiBridge)
80 exports.$set('binding', binding.generate());
OLDNEW
« no previous file with comments | « extensions/renderer/resources/binding.js ('k') | extensions/renderer/resources/utils.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698