MediaPlayer2: use DataSource to replace IDataSource.

Also fix deadlock by always posting notification to NuPlayer2Driver's
looper.
Test: MediaPlayer2 can play callback source.
Bug: 63934228

Change-Id: Ie27bc0038bcc07ffef5c610662db3fcb5df7aec4
diff --git a/media/libmedia/MediaPlayer2Manager.h b/media/libmedia/MediaPlayer2Manager.h
index d3ee044..b42cbbb 100644
--- a/media/libmedia/MediaPlayer2Manager.h
+++ b/media/libmedia/MediaPlayer2Manager.h
@@ -39,7 +39,7 @@
 struct AudioPlaybackRate;
 class AudioTrack;
 struct AVSyncSettings;
-class IDataSource;
+class DataSource;
 struct MediaHTTPService;
 class MediaPlayer2EngineClient;
 
@@ -297,7 +297,7 @@
         virtual status_t        setDataSource(int fd, int64_t offset, int64_t length);
 
         virtual status_t        setDataSource(const sp<IStreamSource> &source);
-        virtual status_t        setDataSource(const sp<IDataSource> &source);
+        virtual status_t        setDataSource(const sp<DataSource> &source);
 
 
         sp<MediaPlayer2Base>    setDataSource_pre(player2_type playerType);