15f016e2cb5d11daeb237544de1c5d59f20fe1a6eReid Spencer// Copyright 2013 The Chromium Authors. All rights reserved.
25f016e2cb5d11daeb237544de1c5d59f20fe1a6eReid Spencer// Use of this source code is governed by a BSD-style license that can be
35f016e2cb5d11daeb237544de1c5d59f20fe1a6eReid Spencer// found in the LICENSE file.
45f016e2cb5d11daeb237544de1c5d59f20fe1a6eReid Spencer
50bc735ffcfb223c0186419547abaa5c84482663eChris Lattner// Custom binding for the Cast Streaming Session API.
60bc735ffcfb223c0186419547abaa5c84482663eChris Lattner
75f016e2cb5d11daeb237544de1c5d59f20fe1a6eReid Spencervar binding = require('binding').Binding.create('cast.streaming.session');
85f016e2cb5d11daeb237544de1c5d59f20fe1a6eReid Spencervar natives = requireNative('cast_streaming_natives');
95f016e2cb5d11daeb237544de1c5d59f20fe1a6eReid Spencer
105f016e2cb5d11daeb237544de1c5d59f20fe1a6eReid Spencerbinding.registerCustomHook(function(bindingsAPI, extensionId) {
115f016e2cb5d11daeb237544de1c5d59f20fe1a6eReid Spencer  var apiFunctions = bindingsAPI.apiFunctions;
125f016e2cb5d11daeb237544de1c5d59f20fe1a6eReid Spencer  apiFunctions.setHandleRequest('create',
135f016e2cb5d11daeb237544de1c5d59f20fe1a6eReid Spencer      function(audioTrack, videoTrack, callback) {
145f016e2cb5d11daeb237544de1c5d59f20fe1a6eReid Spencer        natives.CreateSession(audioTrack, videoTrack, callback);
1549aa7ff1245abd03e6e998e01302df31e4c6f8f6Argyrios Kyrtzidis  });
16980e508ca70d6de75d2abfd96b4681fc98bb2698Steve Naroff});
17aaba5e346dffdbad5d1c42765a89e4a7afb0da67Douglas Gregor
18e91593ef084479340582b2ba177b44be50a717b7Daniel Dunbarexports.binding = binding.generate();
19e91593ef084479340582b2ba177b44be50a717b7Daniel Dunbar