Add new certificateProvider extension API.
[chromium-blink-merge.git] / chrome / renderer / resources / extensions / cast_streaming_rtp_stream_custom_bindings.js
blob1047ed756ee91b1cecd9317f47c159fcf2917b20
1 // Copyright 2013 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 // Custom binding for the Cast Streaming RtpStream API.
7 var binding = require('binding').Binding.create('cast.streaming.rtpStream');
8 var natives = requireNative('cast_streaming_natives');
10 binding.registerCustomHook(function(bindingsAPI, extensionId) {
11   var apiFunctions = bindingsAPI.apiFunctions;
13   apiFunctions.setHandleRequest('destroy',
14       function(transportId) {
15         natives.DestroyCastRtpStream(transportId);
16   });
17   apiFunctions.setHandleRequest('getSupportedParams',
18       function(transportId) {
19         return natives.GetSupportedParamsCastRtpStream(transportId);
20   });
21   apiFunctions.setHandleRequest('start',
22       function(transportId, params) {
23         natives.StartCastRtpStream(transportId, params);
24   });
25   apiFunctions.setHandleRequest('stop',
26       function(transportId) {
27         natives.StopCastRtpStream(transportId);
28   });
29   apiFunctions.setHandleRequest('toggleLogging',
30       function(transportId, enable) {
31         natives.ToggleLogging(transportId, enable);
32   });
33   apiFunctions.setHandleRequest('getRawEvents',
34       function(transportId, extraData, callback) {
35         natives.GetRawEvents(transportId, extraData, callback);
36   });
37   apiFunctions.setHandleRequest('getStats',
38       function(transportId, callback) {
39         natives.GetStats(transportId, callback);
40   });
41 });
43 exports.binding = binding.generate();