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

Side by Side Diff: content/renderer/media/crypto/ppapi_decryptor.cc

Issue 670683003: Standardize usage of virtual/override/final in content/renderer/ (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 1 month 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
OLDNEW
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 "content/renderer/media/crypto/ppapi_decryptor.h" 5 #include "content/renderer/media/crypto/ppapi_decryptor.h"
6 6
7 #include <string> 7 #include <string>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/callback.h" 10 #include "base/callback.h"
(...skipping 17 matching lines...) Expand all
28 // This class is needed so that resolving an Update() promise triggers playback 28 // This class is needed so that resolving an Update() promise triggers playback
29 // of the stream. It intercepts the resolve() call to invoke an additional 29 // of the stream. It intercepts the resolve() call to invoke an additional
30 // callback. 30 // callback.
31 class SessionUpdatedPromise : public media::CdmPromiseTemplate<> { 31 class SessionUpdatedPromise : public media::CdmPromiseTemplate<> {
32 public: 32 public:
33 SessionUpdatedPromise(scoped_ptr<media::SimpleCdmPromise> caller_promise, 33 SessionUpdatedPromise(scoped_ptr<media::SimpleCdmPromise> caller_promise,
34 const base::Closure& additional_resolve_cb) 34 const base::Closure& additional_resolve_cb)
35 : caller_promise_(caller_promise.Pass()), 35 : caller_promise_(caller_promise.Pass()),
36 additional_resolve_cb_(additional_resolve_cb) {} 36 additional_resolve_cb_(additional_resolve_cb) {}
37 37
38 virtual void resolve() override { 38 void resolve() override {
39 MarkPromiseSettled(); 39 MarkPromiseSettled();
40 additional_resolve_cb_.Run(); 40 additional_resolve_cb_.Run();
41 caller_promise_->resolve(); 41 caller_promise_->resolve();
42 } 42 }
43 43
44 virtual void reject(media::MediaKeys::Exception exception_code, 44 void reject(media::MediaKeys::Exception exception_code,
45 uint32 system_code, 45 uint32 system_code,
46 const std::string& error_message) override { 46 const std::string& error_message) override {
47 MarkPromiseSettled(); 47 MarkPromiseSettled();
48 caller_promise_->reject(exception_code, system_code, error_message); 48 caller_promise_->reject(exception_code, system_code, error_message);
49 } 49 }
50 50
51 protected: 51 protected:
52 scoped_ptr<media::SimpleCdmPromise> caller_promise_; 52 scoped_ptr<media::SimpleCdmPromise> caller_promise_;
53 base::Closure additional_resolve_cb_; 53 base::Closure additional_resolve_cb_;
54 }; 54 };
55 55
56 // This class is needed so that resolving a SessionLoaded() promise triggers 56 // This class is needed so that resolving a SessionLoaded() promise triggers
57 // playback of the stream. It intercepts the resolve() call to invoke an 57 // playback of the stream. It intercepts the resolve() call to invoke an
58 // additional callback. This is only needed until KeysChange event gets passed 58 // additional callback. This is only needed until KeysChange event gets passed
59 // through Pepper. 59 // through Pepper.
60 class SessionLoadedPromise : public media::CdmPromiseTemplate<std::string> { 60 class SessionLoadedPromise : public media::CdmPromiseTemplate<std::string> {
61 public: 61 public:
62 SessionLoadedPromise(scoped_ptr<media::NewSessionCdmPromise> caller_promise, 62 SessionLoadedPromise(scoped_ptr<media::NewSessionCdmPromise> caller_promise,
63 const base::Closure& additional_resolve_cb) 63 const base::Closure& additional_resolve_cb)
64 : caller_promise_(caller_promise.Pass()), 64 : caller_promise_(caller_promise.Pass()),
65 additional_resolve_cb_(additional_resolve_cb) {} 65 additional_resolve_cb_(additional_resolve_cb) {}
66 66
67 virtual void resolve(const std::string& web_session_id) override { 67 void resolve(const std::string& web_session_id) override {
68 MarkPromiseSettled(); 68 MarkPromiseSettled();
69 additional_resolve_cb_.Run(); 69 additional_resolve_cb_.Run();
70 caller_promise_->resolve(web_session_id); 70 caller_promise_->resolve(web_session_id);
71 } 71 }
72 72
73 virtual void reject(media::MediaKeys::Exception exception_code, 73 void reject(media::MediaKeys::Exception exception_code,
74 uint32 system_code, 74 uint32 system_code,
75 const std::string& error_message) override { 75 const std::string& error_message) override {
76 MarkPromiseSettled(); 76 MarkPromiseSettled();
77 caller_promise_->reject(exception_code, system_code, error_message); 77 caller_promise_->reject(exception_code, system_code, error_message);
78 } 78 }
79 79
80 protected: 80 protected:
81 scoped_ptr<media::NewSessionCdmPromise> caller_promise_; 81 scoped_ptr<media::NewSessionCdmPromise> caller_promise_;
82 base::Closure additional_resolve_cb_; 82 base::Closure additional_resolve_cb_;
83 }; 83 };
84 84
85 scoped_ptr<PpapiDecryptor> PpapiDecryptor::Create( 85 scoped_ptr<PpapiDecryptor> PpapiDecryptor::Create(
(...skipping 456 matching lines...) Expand 10 before | Expand all | Expand 10 after
542 DCHECK(render_loop_proxy_->BelongsToCurrentThread()); 542 DCHECK(render_loop_proxy_->BelongsToCurrentThread());
543 pepper_cdm_wrapper_.reset(); 543 pepper_cdm_wrapper_.reset();
544 } 544 }
545 545
546 ContentDecryptorDelegate* PpapiDecryptor::CdmDelegate() { 546 ContentDecryptorDelegate* PpapiDecryptor::CdmDelegate() {
547 DCHECK(render_loop_proxy_->BelongsToCurrentThread()); 547 DCHECK(render_loop_proxy_->BelongsToCurrentThread());
548 return (pepper_cdm_wrapper_) ? pepper_cdm_wrapper_->GetCdmDelegate() : NULL; 548 return (pepper_cdm_wrapper_) ? pepper_cdm_wrapper_->GetCdmDelegate() : NULL;
549 } 549 }
550 550
551 } // namespace content 551 } // namespace content
OLDNEW
« no previous file with comments | « content/renderer/media/crypto/ppapi_decryptor.h ('k') | content/renderer/media/crypto/render_cdm_factory.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698