Upstream version 9.38.198.0
[platform/framework/web/crosswalk.git] / src / media / test / data / eme_player_js / clearkey_player.js
1 // Copyright 2014 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.
4
5 // ClearKeyPlayer responsible for playing media using Clear Key key system and
6 // the unprefixed version of EME.
7 function ClearKeyPlayer(video, testConfig) {
8   this.video = video;
9   this.testConfig = testConfig;
10 }
11
12 ClearKeyPlayer.prototype.init = function() {
13   PlayerUtils.initEMEPlayer(this);
14 };
15
16 ClearKeyPlayer.prototype.registerEventListeners = function() {
17   PlayerUtils.registerEMEEventListeners(this);
18 };
19
20 ClearKeyPlayer.prototype.onMessage = function(message) {
21   Utils.timeLog('MediaKeySession onMessage', message);
22   var initData =
23       Utils.getInitDataFromMessage(message, this.testConfig.mediaType);
24   var key = Utils.getDefaultKey(this.testConfig.forceInvalidResponse);
25   var jwkSet = Utils.createJWKData(initData, key);
26   if (PROMISES_SUPPORTED) {
27     message.target.update(jwkSet).catch(function(error) {
28       Utils.failTest(error, KEY_ERROR);
29     });
30   } else {
31     message.target.update(jwkSet);
32   }
33 };