OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 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 | 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 #include "webcontentdecryptionmodulesession_impl.h" | 5 #include "webcontentdecryptionmodulesession_impl.h" |
6 | 6 |
7 #include "base/bind.h" | 7 #include "base/bind.h" |
8 #include "base/callback_helpers.h" | 8 #include "base/callback_helpers.h" |
9 #include "base/logging.h" | 9 #include "base/logging.h" |
10 #include "base/numerics/safe_conversions.h" | 10 #include "base/numerics/safe_conversions.h" |
11 #include "base/stl_util.h" | |
12 #include "base/strings/string_util.h" | 11 #include "base/strings/string_util.h" |
13 #include "base/strings/utf_string_conversions.h" | 12 #include "base/strings/utf_string_conversions.h" |
14 #include "media/base/cdm_key_information.h" | 13 #include "media/base/cdm_key_information.h" |
15 #include "media/base/cdm_promise.h" | 14 #include "media/base/cdm_promise.h" |
16 #include "media/base/key_systems.h" | 15 #include "media/base/key_systems.h" |
17 #include "media/base/limits.h" | 16 #include "media/base/limits.h" |
18 #include "media/base/media_keys.h" | 17 #include "media/base/media_keys.h" |
19 #include "media/blink/cdm_result_promise.h" | 18 #include "media/blink/cdm_result_promise.h" |
20 #include "media/blink/cdm_session_adapter.h" | 19 #include "media/blink/cdm_session_adapter.h" |
21 #include "media/blink/webmediaplayer_util.h" | 20 #include "media/blink/webmediaplayer_util.h" |
(...skipping 354 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
376 session_id_, | 375 session_id_, |
377 scoped_ptr<SimpleCdmPromise>(new CdmResultPromise<>( | 376 scoped_ptr<SimpleCdmPromise>(new CdmResultPromise<>( |
378 result, adapter_->GetKeySystemUMAPrefix() + kRemoveSessionUMAName))); | 377 result, adapter_->GetKeySystemUMAPrefix() + kRemoveSessionUMAName))); |
379 } | 378 } |
380 | 379 |
381 void WebContentDecryptionModuleSessionImpl::OnSessionMessage( | 380 void WebContentDecryptionModuleSessionImpl::OnSessionMessage( |
382 MediaKeys::MessageType message_type, | 381 MediaKeys::MessageType message_type, |
383 const std::vector<uint8>& message) { | 382 const std::vector<uint8>& message) { |
384 DCHECK(client_) << "Client not set before message event"; | 383 DCHECK(client_) << "Client not set before message event"; |
385 DCHECK(thread_checker_.CalledOnValidThread()); | 384 DCHECK(thread_checker_.CalledOnValidThread()); |
386 client_->message(convertMessageType(message_type), vector_as_array(&message), | 385 client_->message(convertMessageType(message_type), message.data(), |
387 message.size()); | 386 message.size()); |
388 } | 387 } |
389 | 388 |
390 void WebContentDecryptionModuleSessionImpl::OnSessionKeysChange( | 389 void WebContentDecryptionModuleSessionImpl::OnSessionKeysChange( |
391 bool has_additional_usable_key, | 390 bool has_additional_usable_key, |
392 CdmKeysInfo keys_info) { | 391 CdmKeysInfo keys_info) { |
393 DCHECK(thread_checker_.CalledOnValidThread()); | 392 DCHECK(thread_checker_.CalledOnValidThread()); |
394 blink::WebVector<blink::WebEncryptedMediaKeyInformation> keys( | 393 blink::WebVector<blink::WebEncryptedMediaKeyInformation> keys( |
395 keys_info.size()); | 394 keys_info.size()); |
396 for (size_t i = 0; i < keys_info.size(); ++i) { | 395 for (size_t i = 0; i < keys_info.size(); ++i) { |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
432 | 431 |
433 DCHECK(session_id_.empty()) << "Session ID may not be changed once set."; | 432 DCHECK(session_id_.empty()) << "Session ID may not be changed once set."; |
434 session_id_ = session_id; | 433 session_id_ = session_id; |
435 *status = | 434 *status = |
436 adapter_->RegisterSession(session_id_, weak_ptr_factory_.GetWeakPtr()) | 435 adapter_->RegisterSession(session_id_, weak_ptr_factory_.GetWeakPtr()) |
437 ? SessionInitStatus::NEW_SESSION | 436 ? SessionInitStatus::NEW_SESSION |
438 : SessionInitStatus::SESSION_ALREADY_EXISTS; | 437 : SessionInitStatus::SESSION_ALREADY_EXISTS; |
439 } | 438 } |
440 | 439 |
441 } // namespace media | 440 } // namespace media |
OLD | NEW |