Loading packages/MediaComponents/src/com/android/media/MediaItem2Impl.java +52 −3 Original line number Diff line number Diff line Loading @@ -24,6 +24,7 @@ import android.annotation.Nullable; import android.content.Context; import android.media.DataSourceDesc; import android.media.MediaItem2; import android.media.MediaItem2.Builder; import android.media.MediaItem2.Flags; import android.media.MediaMetadata2; import android.media.update.MediaItem2Provider; Loading @@ -43,7 +44,7 @@ public class MediaItem2Impl implements MediaItem2Provider { private DataSourceDesc mDataSourceDesc; // From the public API public MediaItem2Impl(Context context, MediaItem2 instance, String mediaId, public MediaItem2Impl(Context context, String mediaId, DataSourceDesc dsd, MediaMetadata2 metadata, @Flags int flags) { if (mediaId == null) { throw new IllegalArgumentException("mediaId shouldn't be null"); Loading @@ -56,12 +57,12 @@ public class MediaItem2Impl implements MediaItem2Provider { } mContext = context; mInstance = instance; mId = mediaId; mDataSourceDesc = dsd; mMetadata = metadata; mFlags = flags; mInstance = new MediaItem2(this); } // Create anonymized version Loading Loading @@ -157,4 +158,52 @@ public class MediaItem2Impl implements MediaItem2Provider { public @Nullable DataSourceDesc getDataSourceDesc_impl() { return mDataSourceDesc; } public static class BuilderImpl implements MediaItem2Provider.BuilderProvider { private Context mContext; private Builder mInstance; private @Flags int mFlags; private String mMediaId; private MediaMetadata2 mMetadata; private DataSourceDesc mDataSourceDesc; public BuilderImpl(Context context, Builder instance, int flags) { mContext = context; mInstance = instance; mFlags = flags; } @Override public Builder setMediaId_impl(@Nullable String mediaId) { mMediaId = mediaId; return mInstance; } @Override public Builder setMetadata_impl(@Nullable MediaMetadata2 metadata) { mMetadata = metadata; return mInstance; } @Override public Builder setDataSourceDesc_impl(@NonNull DataSourceDesc dataSourceDesc) { if (dataSourceDesc == null) { throw new IllegalArgumentException("dataSourceDesc shouldn't be null"); } mDataSourceDesc = dataSourceDesc; return mInstance; } @Override public MediaItem2 build_impl() { String id = (mMetadata != null) ? mMetadata.getString(MediaMetadata2.METADATA_KEY_MEDIA_ID) : null; if (id == null) { // TODO(jaewan): Double check if its sufficient (e.g. Use UUID instead?) id = (mMediaId != null) ? mMediaId : toString(); } return new MediaItem2Impl(mContext, id, mDataSourceDesc, mMetadata, mFlags) .getInstance(); } } } packages/MediaComponents/src/com/android/media/update/ApiFactory.java +7 −7 Original line number Diff line number Diff line Loading @@ -226,9 +226,9 @@ public class ApiFactory implements StaticProvider { } @Override public MediaItem2Provider createMediaItem2(Context context, MediaItem2 instance, String mediaId, DataSourceDesc dsd, MediaMetadata2 metadata, int flags) { return new MediaItem2Impl(context, instance, mediaId, dsd, metadata, flags); public MediaItem2Provider.BuilderProvider createMediaItem2Builder( Context context, MediaItem2.Builder instance, int flags) { return new MediaItem2Impl.BuilderImpl(context, instance, flags); } @Override Loading @@ -249,14 +249,14 @@ public class ApiFactory implements StaticProvider { @Override public MediaMetadata2Provider.BuilderProvider createMediaMetadata2Builder( Context context, MediaMetadata2.Builder builder) { return new MediaMetadata2Impl.BuilderImpl(context, builder); Context context, MediaMetadata2.Builder instance) { return new MediaMetadata2Impl.BuilderImpl(context, instance); } @Override public MediaMetadata2Provider.BuilderProvider createMediaMetadata2Builder( Context context, MediaMetadata2.Builder builder, MediaMetadata2 source) { return new MediaMetadata2Impl.BuilderImpl(context, builder, source); Context context, MediaMetadata2.Builder instance, MediaMetadata2 source) { return new MediaMetadata2Impl.BuilderImpl(context, instance, source); } @Override Loading packages/MediaComponents/test/src/android/media/MockMediaLibraryService2.java +7 −8 Original line number Diff line number Diff line Loading @@ -241,13 +241,12 @@ public class MockMediaLibraryService2 extends MediaLibraryService2 { private MediaItem2 createMediaItem(String mediaId) { Context context = MockMediaLibraryService2.this; return new MediaItem2( context, mediaId, DATA_SOURCE_DESC, new MediaMetadata2.Builder(context) return new MediaItem2.Builder(context, 0 /* Flags */) .setMediaId(mediaId) .setDataSourceDesc(DATA_SOURCE_DESC) .setMetadata(new MediaMetadata2.Builder(context) .putString(MediaMetadata2.METADATA_KEY_MEDIA_ID, mediaId) .build(), 0 /* Flags */); .build()) .build(); } } Loading
packages/MediaComponents/src/com/android/media/MediaItem2Impl.java +52 −3 Original line number Diff line number Diff line Loading @@ -24,6 +24,7 @@ import android.annotation.Nullable; import android.content.Context; import android.media.DataSourceDesc; import android.media.MediaItem2; import android.media.MediaItem2.Builder; import android.media.MediaItem2.Flags; import android.media.MediaMetadata2; import android.media.update.MediaItem2Provider; Loading @@ -43,7 +44,7 @@ public class MediaItem2Impl implements MediaItem2Provider { private DataSourceDesc mDataSourceDesc; // From the public API public MediaItem2Impl(Context context, MediaItem2 instance, String mediaId, public MediaItem2Impl(Context context, String mediaId, DataSourceDesc dsd, MediaMetadata2 metadata, @Flags int flags) { if (mediaId == null) { throw new IllegalArgumentException("mediaId shouldn't be null"); Loading @@ -56,12 +57,12 @@ public class MediaItem2Impl implements MediaItem2Provider { } mContext = context; mInstance = instance; mId = mediaId; mDataSourceDesc = dsd; mMetadata = metadata; mFlags = flags; mInstance = new MediaItem2(this); } // Create anonymized version Loading Loading @@ -157,4 +158,52 @@ public class MediaItem2Impl implements MediaItem2Provider { public @Nullable DataSourceDesc getDataSourceDesc_impl() { return mDataSourceDesc; } public static class BuilderImpl implements MediaItem2Provider.BuilderProvider { private Context mContext; private Builder mInstance; private @Flags int mFlags; private String mMediaId; private MediaMetadata2 mMetadata; private DataSourceDesc mDataSourceDesc; public BuilderImpl(Context context, Builder instance, int flags) { mContext = context; mInstance = instance; mFlags = flags; } @Override public Builder setMediaId_impl(@Nullable String mediaId) { mMediaId = mediaId; return mInstance; } @Override public Builder setMetadata_impl(@Nullable MediaMetadata2 metadata) { mMetadata = metadata; return mInstance; } @Override public Builder setDataSourceDesc_impl(@NonNull DataSourceDesc dataSourceDesc) { if (dataSourceDesc == null) { throw new IllegalArgumentException("dataSourceDesc shouldn't be null"); } mDataSourceDesc = dataSourceDesc; return mInstance; } @Override public MediaItem2 build_impl() { String id = (mMetadata != null) ? mMetadata.getString(MediaMetadata2.METADATA_KEY_MEDIA_ID) : null; if (id == null) { // TODO(jaewan): Double check if its sufficient (e.g. Use UUID instead?) id = (mMediaId != null) ? mMediaId : toString(); } return new MediaItem2Impl(mContext, id, mDataSourceDesc, mMetadata, mFlags) .getInstance(); } } }
packages/MediaComponents/src/com/android/media/update/ApiFactory.java +7 −7 Original line number Diff line number Diff line Loading @@ -226,9 +226,9 @@ public class ApiFactory implements StaticProvider { } @Override public MediaItem2Provider createMediaItem2(Context context, MediaItem2 instance, String mediaId, DataSourceDesc dsd, MediaMetadata2 metadata, int flags) { return new MediaItem2Impl(context, instance, mediaId, dsd, metadata, flags); public MediaItem2Provider.BuilderProvider createMediaItem2Builder( Context context, MediaItem2.Builder instance, int flags) { return new MediaItem2Impl.BuilderImpl(context, instance, flags); } @Override Loading @@ -249,14 +249,14 @@ public class ApiFactory implements StaticProvider { @Override public MediaMetadata2Provider.BuilderProvider createMediaMetadata2Builder( Context context, MediaMetadata2.Builder builder) { return new MediaMetadata2Impl.BuilderImpl(context, builder); Context context, MediaMetadata2.Builder instance) { return new MediaMetadata2Impl.BuilderImpl(context, instance); } @Override public MediaMetadata2Provider.BuilderProvider createMediaMetadata2Builder( Context context, MediaMetadata2.Builder builder, MediaMetadata2 source) { return new MediaMetadata2Impl.BuilderImpl(context, builder, source); Context context, MediaMetadata2.Builder instance, MediaMetadata2 source) { return new MediaMetadata2Impl.BuilderImpl(context, instance, source); } @Override Loading
packages/MediaComponents/test/src/android/media/MockMediaLibraryService2.java +7 −8 Original line number Diff line number Diff line Loading @@ -241,13 +241,12 @@ public class MockMediaLibraryService2 extends MediaLibraryService2 { private MediaItem2 createMediaItem(String mediaId) { Context context = MockMediaLibraryService2.this; return new MediaItem2( context, mediaId, DATA_SOURCE_DESC, new MediaMetadata2.Builder(context) return new MediaItem2.Builder(context, 0 /* Flags */) .setMediaId(mediaId) .setDataSourceDesc(DATA_SOURCE_DESC) .setMetadata(new MediaMetadata2.Builder(context) .putString(MediaMetadata2.METADATA_KEY_MEDIA_ID, mediaId) .build(), 0 /* Flags */); .build()) .build(); } }