Index: media/mojo/services/mojo_media_application.cc |
diff --git a/media/mojo/services/mojo_media_application.cc b/media/mojo/services/mojo_media_application.cc |
index 05a72f36c21492e89229258c333e5f235a264dfd..8a92b022955c756048492fbb7dbe446cac63b61a 100644 |
--- a/media/mojo/services/mojo_media_application.cc |
+++ b/media/mojo/services/mojo_media_application.cc |
@@ -12,12 +12,36 @@ |
#include "mojo/shell/public/cpp/connection.h" |
#include "mojo/shell/public/cpp/shell.h" |
+#if defined(OS_ANDROID) |
+#include "media/mojo/services/android_mojo_media_client.h" |
+#else |
+#include "media/mojo/services/default_mojo_media_client.h" |
+#endif |
+ |
namespace media { |
+ |
+#if defined(OS_ANDROID) |
+using DefaultClient = AndroidMojoMediaClient; |
+#else |
+using DefaultClient = DefaultMojoMediaClient; |
+#endif |
// static |
scoped_ptr<mojo::ShellClient> MojoMediaApplication::CreateApp() { |
return scoped_ptr<mojo::ShellClient>( |
- new MojoMediaApplication(MojoMediaClient::Create())); |
+ new MojoMediaApplication(make_scoped_ptr(new DefaultClient()))); |
+} |
+ |
+// static |
+scoped_ptr<mojo::ShellClient> MojoMediaApplication::CreateAppWithClient( |
+ const CreateMojoMediaClientCB& create_mojo_media_client_cb) { |
+ scoped_ptr<MojoMediaClient> mojo_media_client = |
+ create_mojo_media_client_cb.Run(); |
+ if (!mojo_media_client) |
+ return nullptr; |
+ |
+ return scoped_ptr<mojo::ShellClient>( |
+ new MojoMediaApplication(std::move(mojo_media_client))); |
} |
// TODO(xhwang): Hook up MediaLog when possible. |
@@ -25,13 +49,15 @@ |
scoped_ptr<MojoMediaClient> mojo_media_client) |
: mojo_media_client_(std::move(mojo_media_client)), |
shell_(nullptr), |
- media_log_(new MediaLog()) {} |
+ media_log_(new MediaLog()) { |
+ DCHECK(mojo_media_client_); |
+} |
MojoMediaApplication::~MojoMediaApplication() {} |
void MojoMediaApplication::Initialize(mojo::Shell* shell, |
- const std::string& url, |
- uint32_t id) { |
+ const std::string& /* url */, |
+ uint32_t /* id */) { |
shell_ = shell; |
mojo_media_client_->Initialize(); |
} |