From 2ee72076e506af1fd06df1b4e8796e31f534e9c5 Mon Sep 17 00:00:00 2001 From: olly Date: Thu, 21 Oct 2021 23:40:40 +0100 Subject: [PATCH] Add datasource module PiperOrigin-RevId: 404897119 --- core_settings.gradle | 2 + extensions/cronet/build.gradle | 1 + extensions/okhttp/build.gradle | 1 + extensions/rtmp/build.gradle | 1 + library/all/build.gradle | 1 + library/common/build.gradle | 9 --- library/common/proguard-rules.txt | 11 ---- library/core/build.gradle | 1 + library/datasource/README.md | 12 ++++ library/datasource/build.gradle | 65 +++++++++++++++++++ library/datasource/proguard-rules.txt | 12 ++++ .../src/androidTest/AndroidManifest.xml | 6 +- .../ContentDataSourceContractTest.java | 0 .../upstream/ContentDataSourceTest.java | 0 .../RawResourceDataSourceContractTest.java | 2 +- .../src/androidTest/res/raw/resource1 | 0 .../src/androidTest/res/raw/resource2 | 0 .../datasource/src/main/AndroidManifest.xml | 19 ++++++ .../upstream}/AesCipherDataSink.java | 4 +- .../upstream}/AesCipherDataSource.java | 5 +- .../upstream}/AesFlushingCipher.java | 2 +- .../exoplayer2/upstream/AssetDataSource.java | 0 .../exoplayer2/upstream/BaseDataSource.java | 0 .../upstream/ByteArrayDataSink.java | 0 .../upstream/ByteArrayDataSource.java | 0 .../upstream/ContentDataSource.java | 0 .../upstream/DataSchemeDataSource.java | 0 .../android/exoplayer2/upstream/DataSink.java | 0 .../exoplayer2/upstream/DataSource.java | 0 .../upstream/DataSourceException.java | 0 .../upstream/DataSourceInputStream.java | 0 .../exoplayer2/upstream/DataSourceUtil.java | 0 .../android/exoplayer2/upstream/DataSpec.java | 0 .../upstream/DefaultDataSource.java | 0 .../upstream/DefaultDataSourceFactory.java | 0 .../upstream/DefaultHttpDataSource.java | 0 .../exoplayer2/upstream/DummyDataSource.java | 0 .../exoplayer2/upstream/FileDataSource.java | 0 .../exoplayer2/upstream/HttpDataSource.java | 0 .../android/exoplayer2/upstream/HttpUtil.java | 0 .../upstream/PriorityDataSource.java | 0 .../upstream/PriorityDataSourceFactory.java | 0 .../upstream/RawResourceDataSource.java | 0 .../upstream/ResolvingDataSource.java | 0 .../exoplayer2/upstream/StatsDataSource.java | 0 .../exoplayer2/upstream/TeeDataSource.java | 0 .../exoplayer2/upstream/TransferListener.java | 0 .../exoplayer2/upstream/UdpDataSource.java | 0 .../exoplayer2/upstream/cache/Cache.java | 0 .../upstream/cache/CacheDataSink.java | 0 .../upstream/cache/CacheDataSource.java | 0 .../upstream/cache/CacheEvictor.java | 0 .../upstream/cache/CacheFileMetadata.java | 0 .../cache/CacheFileMetadataIndex.java | 0 .../upstream/cache/CacheKeyFactory.java | 0 .../exoplayer2/upstream/cache/CacheSpan.java | 0 .../upstream/cache/CacheWriter.java | 0 .../upstream/cache/CachedContent.java | 0 .../upstream/cache/CachedContentIndex.java | 0 .../upstream/cache/ContentMetadata.java | 0 .../cache/ContentMetadataMutations.java | 0 .../cache/DefaultContentMetadata.java | 0 .../cache/LeastRecentlyUsedCacheEvictor.java | 0 .../upstream/cache/NoOpCacheEvictor.java | 0 .../cache/ReusableBufferedOutputStream.java | 0 .../upstream/cache/SimpleCache.java | 0 .../upstream/cache/SimpleCacheSpan.java | 0 .../upstream/cache/package-info.java | 0 .../exoplayer2/upstream/package-info.java | 0 .../datasource/src/test/AndroidManifest.xml | 19 ++++++ .../upstream}/AesFlushingCipherTest.java | 2 +- .../upstream/AssetDataSourceContractTest.java | 0 .../upstream/AssetDataSourceTest.java | 0 .../upstream/BaseDataSourceTest.java | 0 .../ByteArrayDataSourceContractTest.java | 0 .../upstream/ByteArrayDataSourceTest.java | 0 .../DataSchemeDataSourceContractTest.java | 0 .../upstream/DataSchemeDataSourceTest.java | 0 .../upstream/DataSourceExceptionTest.java | 0 .../upstream/DataSourceInputStreamTest.java | 0 .../exoplayer2/upstream/DataSpecTest.java | 0 .../DefaultHttpDataSourceContractTest.java | 0 .../upstream/DefaultHttpDataSourceTest.java | 0 .../upstream/FileDataSourceContractTest.java | 0 .../exoplayer2/upstream/HttpUtilTest.java | 0 .../ResolvingDataSourceContractTest.java | 0 .../upstream/UdpDataSourceContractTest.java | 0 .../cache/CacheDataSourceContractTest.java | 0 .../upstream/cache/CacheDataSourceTest.java | 0 .../upstream/cache/CacheDataSourceTest2.java | 0 .../cache/CacheFileMetadataIndexTest.java | 0 .../upstream/cache/CacheKeyFactoryTest.java | 0 .../upstream/cache/CacheWriterTest.java | 0 .../cache/CachedContentIndexTest.java | 0 .../cache/DefaultContentMetadataTest.java | 0 .../LeastRecentlyUsedCacheEvictorTest.java | 0 .../ReusableBufferedOutputStreamTest.java | 0 .../upstream/cache/SimpleCacheSpanTest.java | 0 .../upstream/cache/SimpleCacheTest.java | 0 99 files changed, 142 insertions(+), 33 deletions(-) create mode 100644 library/datasource/README.md create mode 100644 library/datasource/build.gradle create mode 100644 library/datasource/proguard-rules.txt rename library/{common => datasource}/src/androidTest/AndroidManifest.xml (86%) rename library/{common => datasource}/src/androidTest/java/com/google/android/exoplayer2/upstream/ContentDataSourceContractTest.java (100%) rename library/{common => datasource}/src/androidTest/java/com/google/android/exoplayer2/upstream/ContentDataSourceTest.java (100%) rename library/{common => datasource}/src/androidTest/java/com/google/android/exoplayer2/upstream/RawResourceDataSourceContractTest.java (98%) rename library/{common => datasource}/src/androidTest/res/raw/resource1 (100%) rename library/{common => datasource}/src/androidTest/res/raw/resource2 (100%) create mode 100644 library/datasource/src/main/AndroidManifest.xml rename library/{common/src/main/java/com/google/android/exoplayer2/upstream/crypto => datasource/src/main/java/com/google/android/exoplayer2/upstream}/AesCipherDataSink.java (95%) rename library/{common/src/main/java/com/google/android/exoplayer2/upstream/crypto => datasource/src/main/java/com/google/android/exoplayer2/upstream}/AesCipherDataSource.java (91%) rename library/{common/src/main/java/com/google/android/exoplayer2/upstream/crypto => datasource/src/main/java/com/google/android/exoplayer2/upstream}/AesFlushingCipher.java (99%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/AssetDataSource.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/BaseDataSource.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/ByteArrayDataSink.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/ByteArrayDataSource.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/ContentDataSource.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/DataSchemeDataSource.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/DataSink.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/DataSource.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/DataSourceException.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/DataSourceInputStream.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/DataSourceUtil.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/DataSpec.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/DefaultDataSource.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/DefaultDataSourceFactory.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/DefaultHttpDataSource.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/DummyDataSource.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/FileDataSource.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/HttpDataSource.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/HttpUtil.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/PriorityDataSource.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/PriorityDataSourceFactory.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/RawResourceDataSource.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/ResolvingDataSource.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/StatsDataSource.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/TeeDataSource.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/TransferListener.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/UdpDataSource.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/cache/Cache.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheDataSink.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheDataSource.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheEvictor.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheFileMetadata.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheFileMetadataIndex.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheKeyFactory.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheSpan.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheWriter.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/cache/CachedContent.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/cache/CachedContentIndex.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/cache/ContentMetadata.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/cache/ContentMetadataMutations.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/cache/DefaultContentMetadata.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/cache/LeastRecentlyUsedCacheEvictor.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/cache/NoOpCacheEvictor.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/cache/ReusableBufferedOutputStream.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/cache/SimpleCache.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/cache/SimpleCacheSpan.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/cache/package-info.java (100%) rename library/{common => datasource}/src/main/java/com/google/android/exoplayer2/upstream/package-info.java (100%) create mode 100644 library/datasource/src/test/AndroidManifest.xml rename library/{common/src/test/java/com/google/android/exoplayer2/upstream/crypto => datasource/src/test/java/com/google/android/exoplayer2/upstream}/AesFlushingCipherTest.java (99%) rename library/{common => datasource}/src/test/java/com/google/android/exoplayer2/upstream/AssetDataSourceContractTest.java (100%) rename library/{common => datasource}/src/test/java/com/google/android/exoplayer2/upstream/AssetDataSourceTest.java (100%) rename library/{common => datasource}/src/test/java/com/google/android/exoplayer2/upstream/BaseDataSourceTest.java (100%) rename library/{common => datasource}/src/test/java/com/google/android/exoplayer2/upstream/ByteArrayDataSourceContractTest.java (100%) rename library/{common => datasource}/src/test/java/com/google/android/exoplayer2/upstream/ByteArrayDataSourceTest.java (100%) rename library/{common => datasource}/src/test/java/com/google/android/exoplayer2/upstream/DataSchemeDataSourceContractTest.java (100%) rename library/{common => datasource}/src/test/java/com/google/android/exoplayer2/upstream/DataSchemeDataSourceTest.java (100%) rename library/{common => datasource}/src/test/java/com/google/android/exoplayer2/upstream/DataSourceExceptionTest.java (100%) rename library/{common => datasource}/src/test/java/com/google/android/exoplayer2/upstream/DataSourceInputStreamTest.java (100%) rename library/{common => datasource}/src/test/java/com/google/android/exoplayer2/upstream/DataSpecTest.java (100%) rename library/{common => datasource}/src/test/java/com/google/android/exoplayer2/upstream/DefaultHttpDataSourceContractTest.java (100%) rename library/{common => datasource}/src/test/java/com/google/android/exoplayer2/upstream/DefaultHttpDataSourceTest.java (100%) rename library/{common => datasource}/src/test/java/com/google/android/exoplayer2/upstream/FileDataSourceContractTest.java (100%) rename library/{common => datasource}/src/test/java/com/google/android/exoplayer2/upstream/HttpUtilTest.java (100%) rename library/{common => datasource}/src/test/java/com/google/android/exoplayer2/upstream/ResolvingDataSourceContractTest.java (100%) rename library/{common => datasource}/src/test/java/com/google/android/exoplayer2/upstream/UdpDataSourceContractTest.java (100%) rename library/{common => datasource}/src/test/java/com/google/android/exoplayer2/upstream/cache/CacheDataSourceContractTest.java (100%) rename library/{common => datasource}/src/test/java/com/google/android/exoplayer2/upstream/cache/CacheDataSourceTest.java (100%) rename library/{common => datasource}/src/test/java/com/google/android/exoplayer2/upstream/cache/CacheDataSourceTest2.java (100%) rename library/{common => datasource}/src/test/java/com/google/android/exoplayer2/upstream/cache/CacheFileMetadataIndexTest.java (100%) rename library/{common => datasource}/src/test/java/com/google/android/exoplayer2/upstream/cache/CacheKeyFactoryTest.java (100%) rename library/{common => datasource}/src/test/java/com/google/android/exoplayer2/upstream/cache/CacheWriterTest.java (100%) rename library/{common => datasource}/src/test/java/com/google/android/exoplayer2/upstream/cache/CachedContentIndexTest.java (100%) rename library/{common => datasource}/src/test/java/com/google/android/exoplayer2/upstream/cache/DefaultContentMetadataTest.java (100%) rename library/{common => datasource}/src/test/java/com/google/android/exoplayer2/upstream/cache/LeastRecentlyUsedCacheEvictorTest.java (100%) rename library/{common => datasource}/src/test/java/com/google/android/exoplayer2/upstream/cache/ReusableBufferedOutputStreamTest.java (100%) rename library/{common => datasource}/src/test/java/com/google/android/exoplayer2/upstream/cache/SimpleCacheSpanTest.java (100%) rename library/{common => datasource}/src/test/java/com/google/android/exoplayer2/upstream/cache/SimpleCacheTest.java (100%) diff --git a/core_settings.gradle b/core_settings.gradle index 3002d134fb..1f22196a33 100644 --- a/core_settings.gradle +++ b/core_settings.gradle @@ -51,6 +51,8 @@ project(modulePrefix + 'library-ui').projectDir = new File(rootDir, 'library/ui' include modulePrefix + 'extension-leanback' project(modulePrefix + 'extension-leanback').projectDir = new File(rootDir, 'extensions/leanback') +include modulePrefix + 'library-datasource' +project(modulePrefix + 'library-datasource').projectDir = new File(rootDir, 'library/datasource') include modulePrefix + 'extension-cronet' project(modulePrefix + 'extension-cronet').projectDir = new File(rootDir, 'extensions/cronet') include modulePrefix + 'extension-rtmp' diff --git a/extensions/cronet/build.gradle b/extensions/cronet/build.gradle index 5b806f6f38..6fdba05663 100644 --- a/extensions/cronet/build.gradle +++ b/extensions/cronet/build.gradle @@ -22,6 +22,7 @@ android { dependencies { api "com.google.android.gms:play-services-cronet:17.0.1" implementation project(modulePrefix + 'library-common') + implementation project(modulePrefix + 'library-datasource') implementation 'androidx.annotation:annotation:' + androidxAnnotationVersion compileOnly 'org.checkerframework:checker-qual:' + checkerframeworkVersion compileOnly 'org.jetbrains.kotlin:kotlin-annotations-jvm:' + kotlinAnnotationsVersion diff --git a/extensions/okhttp/build.gradle b/extensions/okhttp/build.gradle index a8c3c622d2..ba2078e78d 100644 --- a/extensions/okhttp/build.gradle +++ b/extensions/okhttp/build.gradle @@ -17,6 +17,7 @@ android.defaultConfig.minSdkVersion 21 dependencies { implementation project(modulePrefix + 'library-common') + implementation project(modulePrefix + 'library-datasource') implementation 'androidx.annotation:annotation:' + androidxAnnotationVersion compileOnly 'org.checkerframework:checker-qual:' + checkerframeworkVersion compileOnly 'org.jetbrains.kotlin:kotlin-annotations-jvm:' + kotlinAnnotationsVersion diff --git a/extensions/rtmp/build.gradle b/extensions/rtmp/build.gradle index 7b1e9d244c..b2ff46f80a 100644 --- a/extensions/rtmp/build.gradle +++ b/extensions/rtmp/build.gradle @@ -15,6 +15,7 @@ apply from: "$gradle.ext.exoplayerSettingsDir/common_library_config.gradle" dependencies { implementation project(modulePrefix + 'library-common') + implementation project(modulePrefix + 'library-datasource') implementation 'net.butterflytv.utils:rtmp-client:3.1.0' implementation 'androidx.annotation:annotation:' + androidxAnnotationVersion compileOnly 'org.jetbrains.kotlin:kotlin-annotations-jvm:' + kotlinAnnotationsVersion diff --git a/library/all/build.gradle b/library/all/build.gradle index 965cdc11c4..8daf11eea7 100644 --- a/library/all/build.gradle +++ b/library/all/build.gradle @@ -15,6 +15,7 @@ apply from: "$gradle.ext.exoplayerSettingsDir/common_library_config.gradle" dependencies { api project(modulePrefix + 'library-common') + api project(modulePrefix + 'library-datasource') api project(modulePrefix + 'library-decoder') api project(modulePrefix + 'library-extractor') api project(modulePrefix + 'library-core') diff --git a/library/common/build.gradle b/library/common/build.gradle index 1a3217fabe..40d6c7c610 100644 --- a/library/common/build.gradle +++ b/library/common/build.gradle @@ -14,19 +14,11 @@ apply from: "$gradle.ext.exoplayerSettingsDir/common_library_config.gradle" android { - defaultConfig { - multiDexEnabled true - } - buildTypes { debug { testCoverageEnabled = true } } - - sourceSets { - androidTest.assets.srcDir '../../testdata/src/test/assets/' - } } dependencies { @@ -56,7 +48,6 @@ dependencies { testImplementation 'androidx.test.ext:junit:' + androidxTestJUnitVersion testImplementation 'junit:junit:' + junitVersion testImplementation 'com.google.truth:truth:' + truthVersion - testImplementation 'com.squareup.okhttp3:mockwebserver:' + okhttpVersion testImplementation 'org.robolectric:robolectric:' + robolectricVersion testImplementation project(modulePrefix + 'library-core') testImplementation project(modulePrefix + 'testutils') diff --git a/library/common/proguard-rules.txt b/library/common/proguard-rules.txt index 557df0f374..2eb313c45d 100644 --- a/library/common/proguard-rules.txt +++ b/library/common/proguard-rules.txt @@ -1,16 +1,5 @@ # Proguard rules specific to the common module. -# Constant folding for resource integers may mean that a resource passed to this method appears to be unused. Keep the method to prevent this from happening. --keepclassmembers class com.google.android.exoplayer2.upstream.RawResourceDataSource { - public static android.net.Uri buildRawResourceUri(int); -} - -# Constructors accessed via reflection in DefaultDataSource --dontnote com.google.android.exoplayer2.ext.rtmp.RtmpDataSource --keepclassmembers class com.google.android.exoplayer2.ext.rtmp.RtmpDataSource { - (); -} - # Don't warn about checkerframework and Kotlin annotations -dontwarn org.checkerframework.** -dontwarn kotlin.annotations.jvm.** diff --git a/library/core/build.gradle b/library/core/build.gradle index 7d848f9ab5..524948cc1e 100644 --- a/library/core/build.gradle +++ b/library/core/build.gradle @@ -37,6 +37,7 @@ android { dependencies { api project(modulePrefix + 'library-common') // TODO(b/203754886): Revisit which modules are exported as API dependencies. + api project(modulePrefix + 'library-datasource') api project(modulePrefix + 'library-decoder') api project(modulePrefix + 'library-extractor') implementation 'androidx.annotation:annotation:' + androidxAnnotationVersion diff --git a/library/datasource/README.md b/library/datasource/README.md new file mode 100644 index 0000000000..f87be557e9 --- /dev/null +++ b/library/datasource/README.md @@ -0,0 +1,12 @@ +# DataSource module + +Provides a `DataSource` abstraction and a number of concrete implementations for +reading data from different sources. Application code will not normally need to +depend on this module directly. + +## Links + +* [Javadoc][]: Classes matching `com.google.android.exoplayer2.upstream.*` belong to this + module. + +[Javadoc]: https://exoplayer.dev/doc/reference/index.html diff --git a/library/datasource/build.gradle b/library/datasource/build.gradle new file mode 100644 index 0000000000..98de23a80e --- /dev/null +++ b/library/datasource/build.gradle @@ -0,0 +1,65 @@ +// Copyright (C) 2020 The Android Open Source Project +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +apply from: "$gradle.ext.exoplayerSettingsDir/common_library_config.gradle" + +android { + defaultConfig { + multiDexEnabled true + } + + buildTypes { + debug { + testCoverageEnabled = true + } + } + + sourceSets { + androidTest.assets.srcDir '../../testdata/src/test/assets/' + test.assets.srcDir '../../testdata/src/test/assets/' + } +} + +dependencies { + implementation project(modulePrefix + 'library-common') + implementation 'androidx.annotation:annotation:' + androidxAnnotationVersion + compileOnly 'com.google.code.findbugs:jsr305:' + jsr305Version + compileOnly 'com.google.errorprone:error_prone_annotations:' + errorProneVersion + compileOnly 'org.checkerframework:checker-compat-qual:' + checkerframeworkCompatVersion + compileOnly 'org.checkerframework:checker-qual:' + checkerframeworkVersion + compileOnly 'org.jetbrains.kotlin:kotlin-annotations-jvm:' + kotlinAnnotationsVersion + androidTestImplementation 'androidx.test:runner:' + androidxTestRunnerVersion + androidTestImplementation 'com.linkedin.dexmaker:dexmaker:' + dexmakerVersion + androidTestImplementation 'com.linkedin.dexmaker:dexmaker-mockito:' + dexmakerVersion + androidTestImplementation(project(modulePrefix + 'testutils')) { + exclude module: modulePrefix.substring(1) + 'library-core' + } + testImplementation 'org.mockito:mockito-core:' + mockitoVersion + testImplementation 'androidx.test:core:' + androidxTestCoreVersion + testImplementation 'androidx.test.ext:junit:' + androidxTestJUnitVersion + testImplementation 'com.google.truth:truth:' + truthVersion + testImplementation 'com.squareup.okhttp3:mockwebserver:' + okhttpVersion + testImplementation 'org.robolectric:robolectric:' + robolectricVersion + testImplementation project(modulePrefix + 'testutils') +} + +ext { + javadocTitle = 'DataSource module' +} +apply from: '../../javadoc_library.gradle' + +ext { + releaseArtifactId = 'exoplayer-datasource' + releaseDescription = 'The ExoPlayer library DataSource module.' +} +apply from: '../../publish.gradle' diff --git a/library/datasource/proguard-rules.txt b/library/datasource/proguard-rules.txt new file mode 100644 index 0000000000..ecdc535689 --- /dev/null +++ b/library/datasource/proguard-rules.txt @@ -0,0 +1,12 @@ +# Proguard rules specific to the DataSource module. + +# Constant folding for resource integers may mean that a resource passed to this method appears to be unused. Keep the method to prevent this from happening. +-keepclassmembers class com.google.android.exoplayer2.upstream.RawResourceDataSource { + public static android.net.Uri buildRawResourceUri(int); +} + +# Constructors accessed via reflection in DefaultDataSource +-dontnote com.google.android.exoplayer2.ext.rtmp.RtmpDataSource +-keepclassmembers class com.google.android.exoplayer2.ext.rtmp.RtmpDataSource { + (); +} diff --git a/library/common/src/androidTest/AndroidManifest.xml b/library/datasource/src/androidTest/AndroidManifest.xml similarity index 86% rename from library/common/src/androidTest/AndroidManifest.xml rename to library/datasource/src/androidTest/AndroidManifest.xml index 15db6a41e0..5edae1db96 100644 --- a/library/common/src/androidTest/AndroidManifest.xml +++ b/library/datasource/src/androidTest/AndroidManifest.xml @@ -1,5 +1,5 @@ - + + + + diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/crypto/AesCipherDataSink.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/AesCipherDataSink.java similarity index 95% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/crypto/AesCipherDataSink.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/AesCipherDataSink.java index 4e5b9f2b8e..5d84485e24 100644 --- a/library/common/src/main/java/com/google/android/exoplayer2/upstream/crypto/AesCipherDataSink.java +++ b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/AesCipherDataSink.java @@ -13,14 +13,12 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.google.android.exoplayer2.upstream.crypto; +package com.google.android.exoplayer2.upstream; import static com.google.android.exoplayer2.util.Util.castNonNull; import static java.lang.Math.min; import androidx.annotation.Nullable; -import com.google.android.exoplayer2.upstream.DataSink; -import com.google.android.exoplayer2.upstream.DataSpec; import java.io.IOException; import javax.crypto.Cipher; diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/crypto/AesCipherDataSource.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/AesCipherDataSource.java similarity index 91% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/crypto/AesCipherDataSource.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/AesCipherDataSource.java index 98ec914fa0..77126904bb 100644 --- a/library/common/src/main/java/com/google/android/exoplayer2/upstream/crypto/AesCipherDataSource.java +++ b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/AesCipherDataSource.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.google.android.exoplayer2.upstream.crypto; +package com.google.android.exoplayer2.upstream; import static com.google.android.exoplayer2.util.Assertions.checkNotNull; import static com.google.android.exoplayer2.util.Util.castNonNull; @@ -21,9 +21,6 @@ import static com.google.android.exoplayer2.util.Util.castNonNull; import android.net.Uri; import androidx.annotation.Nullable; import com.google.android.exoplayer2.C; -import com.google.android.exoplayer2.upstream.DataSource; -import com.google.android.exoplayer2.upstream.DataSpec; -import com.google.android.exoplayer2.upstream.TransferListener; import java.io.IOException; import java.util.List; import java.util.Map; diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/crypto/AesFlushingCipher.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/AesFlushingCipher.java similarity index 99% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/crypto/AesFlushingCipher.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/AesFlushingCipher.java index 96cb13604e..5a60a985db 100644 --- a/library/common/src/main/java/com/google/android/exoplayer2/upstream/crypto/AesFlushingCipher.java +++ b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/AesFlushingCipher.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.google.android.exoplayer2.upstream.crypto; +package com.google.android.exoplayer2.upstream; import androidx.annotation.Nullable; import com.google.android.exoplayer2.util.Assertions; diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/AssetDataSource.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/AssetDataSource.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/AssetDataSource.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/AssetDataSource.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/BaseDataSource.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/BaseDataSource.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/BaseDataSource.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/BaseDataSource.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/ByteArrayDataSink.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/ByteArrayDataSink.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/ByteArrayDataSink.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/ByteArrayDataSink.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/ByteArrayDataSource.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/ByteArrayDataSource.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/ByteArrayDataSource.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/ByteArrayDataSource.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/ContentDataSource.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/ContentDataSource.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/ContentDataSource.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/ContentDataSource.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/DataSchemeDataSource.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/DataSchemeDataSource.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/DataSchemeDataSource.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/DataSchemeDataSource.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/DataSink.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/DataSink.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/DataSink.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/DataSink.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/DataSource.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/DataSource.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/DataSource.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/DataSource.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/DataSourceException.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/DataSourceException.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/DataSourceException.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/DataSourceException.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/DataSourceInputStream.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/DataSourceInputStream.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/DataSourceInputStream.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/DataSourceInputStream.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/DataSourceUtil.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/DataSourceUtil.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/DataSourceUtil.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/DataSourceUtil.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/DataSpec.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/DataSpec.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/DataSpec.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/DataSpec.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/DefaultDataSource.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/DefaultDataSource.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/DefaultDataSource.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/DefaultDataSource.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/DefaultDataSourceFactory.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/DefaultDataSourceFactory.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/DefaultDataSourceFactory.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/DefaultDataSourceFactory.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/DefaultHttpDataSource.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/DefaultHttpDataSource.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/DefaultHttpDataSource.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/DefaultHttpDataSource.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/DummyDataSource.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/DummyDataSource.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/DummyDataSource.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/DummyDataSource.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/FileDataSource.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/FileDataSource.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/FileDataSource.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/FileDataSource.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/HttpDataSource.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/HttpDataSource.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/HttpDataSource.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/HttpDataSource.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/HttpUtil.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/HttpUtil.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/HttpUtil.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/HttpUtil.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/PriorityDataSource.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/PriorityDataSource.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/PriorityDataSource.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/PriorityDataSource.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/PriorityDataSourceFactory.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/PriorityDataSourceFactory.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/PriorityDataSourceFactory.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/PriorityDataSourceFactory.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/RawResourceDataSource.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/RawResourceDataSource.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/RawResourceDataSource.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/RawResourceDataSource.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/ResolvingDataSource.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/ResolvingDataSource.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/ResolvingDataSource.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/ResolvingDataSource.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/StatsDataSource.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/StatsDataSource.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/StatsDataSource.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/StatsDataSource.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/TeeDataSource.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/TeeDataSource.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/TeeDataSource.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/TeeDataSource.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/TransferListener.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/TransferListener.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/TransferListener.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/TransferListener.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/UdpDataSource.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/UdpDataSource.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/UdpDataSource.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/UdpDataSource.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/Cache.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/Cache.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/Cache.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/Cache.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheDataSink.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheDataSink.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheDataSink.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheDataSink.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheDataSource.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheDataSource.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheDataSource.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheDataSource.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheEvictor.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheEvictor.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheEvictor.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheEvictor.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheFileMetadata.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheFileMetadata.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheFileMetadata.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheFileMetadata.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheFileMetadataIndex.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheFileMetadataIndex.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheFileMetadataIndex.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheFileMetadataIndex.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheKeyFactory.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheKeyFactory.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheKeyFactory.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheKeyFactory.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheSpan.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheSpan.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheSpan.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheSpan.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheWriter.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheWriter.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheWriter.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheWriter.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/CachedContent.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/CachedContent.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/CachedContent.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/CachedContent.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/CachedContentIndex.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/CachedContentIndex.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/CachedContentIndex.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/CachedContentIndex.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/ContentMetadata.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/ContentMetadata.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/ContentMetadata.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/ContentMetadata.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/ContentMetadataMutations.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/ContentMetadataMutations.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/ContentMetadataMutations.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/ContentMetadataMutations.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/DefaultContentMetadata.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/DefaultContentMetadata.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/DefaultContentMetadata.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/DefaultContentMetadata.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/LeastRecentlyUsedCacheEvictor.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/LeastRecentlyUsedCacheEvictor.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/LeastRecentlyUsedCacheEvictor.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/LeastRecentlyUsedCacheEvictor.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/NoOpCacheEvictor.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/NoOpCacheEvictor.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/NoOpCacheEvictor.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/NoOpCacheEvictor.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/ReusableBufferedOutputStream.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/ReusableBufferedOutputStream.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/ReusableBufferedOutputStream.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/ReusableBufferedOutputStream.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/SimpleCache.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/SimpleCache.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/SimpleCache.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/SimpleCache.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/SimpleCacheSpan.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/SimpleCacheSpan.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/SimpleCacheSpan.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/SimpleCacheSpan.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/package-info.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/package-info.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/cache/package-info.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/package-info.java diff --git a/library/common/src/main/java/com/google/android/exoplayer2/upstream/package-info.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/package-info.java similarity index 100% rename from library/common/src/main/java/com/google/android/exoplayer2/upstream/package-info.java rename to library/datasource/src/main/java/com/google/android/exoplayer2/upstream/package-info.java diff --git a/library/datasource/src/test/AndroidManifest.xml b/library/datasource/src/test/AndroidManifest.xml new file mode 100644 index 0000000000..173af4332e --- /dev/null +++ b/library/datasource/src/test/AndroidManifest.xml @@ -0,0 +1,19 @@ + + + + + + diff --git a/library/common/src/test/java/com/google/android/exoplayer2/upstream/crypto/AesFlushingCipherTest.java b/library/datasource/src/test/java/com/google/android/exoplayer2/upstream/AesFlushingCipherTest.java similarity index 99% rename from library/common/src/test/java/com/google/android/exoplayer2/upstream/crypto/AesFlushingCipherTest.java rename to library/datasource/src/test/java/com/google/android/exoplayer2/upstream/AesFlushingCipherTest.java index 2811b0eada..b6cdb61ba0 100644 --- a/library/common/src/test/java/com/google/android/exoplayer2/upstream/crypto/AesFlushingCipherTest.java +++ b/library/datasource/src/test/java/com/google/android/exoplayer2/upstream/AesFlushingCipherTest.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.google.android.exoplayer2.upstream.crypto; +package com.google.android.exoplayer2.upstream; import static com.google.common.truth.Truth.assertThat; import static java.lang.Math.min; diff --git a/library/common/src/test/java/com/google/android/exoplayer2/upstream/AssetDataSourceContractTest.java b/library/datasource/src/test/java/com/google/android/exoplayer2/upstream/AssetDataSourceContractTest.java similarity index 100% rename from library/common/src/test/java/com/google/android/exoplayer2/upstream/AssetDataSourceContractTest.java rename to library/datasource/src/test/java/com/google/android/exoplayer2/upstream/AssetDataSourceContractTest.java diff --git a/library/common/src/test/java/com/google/android/exoplayer2/upstream/AssetDataSourceTest.java b/library/datasource/src/test/java/com/google/android/exoplayer2/upstream/AssetDataSourceTest.java similarity index 100% rename from library/common/src/test/java/com/google/android/exoplayer2/upstream/AssetDataSourceTest.java rename to library/datasource/src/test/java/com/google/android/exoplayer2/upstream/AssetDataSourceTest.java diff --git a/library/common/src/test/java/com/google/android/exoplayer2/upstream/BaseDataSourceTest.java b/library/datasource/src/test/java/com/google/android/exoplayer2/upstream/BaseDataSourceTest.java similarity index 100% rename from library/common/src/test/java/com/google/android/exoplayer2/upstream/BaseDataSourceTest.java rename to library/datasource/src/test/java/com/google/android/exoplayer2/upstream/BaseDataSourceTest.java diff --git a/library/common/src/test/java/com/google/android/exoplayer2/upstream/ByteArrayDataSourceContractTest.java b/library/datasource/src/test/java/com/google/android/exoplayer2/upstream/ByteArrayDataSourceContractTest.java similarity index 100% rename from library/common/src/test/java/com/google/android/exoplayer2/upstream/ByteArrayDataSourceContractTest.java rename to library/datasource/src/test/java/com/google/android/exoplayer2/upstream/ByteArrayDataSourceContractTest.java diff --git a/library/common/src/test/java/com/google/android/exoplayer2/upstream/ByteArrayDataSourceTest.java b/library/datasource/src/test/java/com/google/android/exoplayer2/upstream/ByteArrayDataSourceTest.java similarity index 100% rename from library/common/src/test/java/com/google/android/exoplayer2/upstream/ByteArrayDataSourceTest.java rename to library/datasource/src/test/java/com/google/android/exoplayer2/upstream/ByteArrayDataSourceTest.java diff --git a/library/common/src/test/java/com/google/android/exoplayer2/upstream/DataSchemeDataSourceContractTest.java b/library/datasource/src/test/java/com/google/android/exoplayer2/upstream/DataSchemeDataSourceContractTest.java similarity index 100% rename from library/common/src/test/java/com/google/android/exoplayer2/upstream/DataSchemeDataSourceContractTest.java rename to library/datasource/src/test/java/com/google/android/exoplayer2/upstream/DataSchemeDataSourceContractTest.java diff --git a/library/common/src/test/java/com/google/android/exoplayer2/upstream/DataSchemeDataSourceTest.java b/library/datasource/src/test/java/com/google/android/exoplayer2/upstream/DataSchemeDataSourceTest.java similarity index 100% rename from library/common/src/test/java/com/google/android/exoplayer2/upstream/DataSchemeDataSourceTest.java rename to library/datasource/src/test/java/com/google/android/exoplayer2/upstream/DataSchemeDataSourceTest.java diff --git a/library/common/src/test/java/com/google/android/exoplayer2/upstream/DataSourceExceptionTest.java b/library/datasource/src/test/java/com/google/android/exoplayer2/upstream/DataSourceExceptionTest.java similarity index 100% rename from library/common/src/test/java/com/google/android/exoplayer2/upstream/DataSourceExceptionTest.java rename to library/datasource/src/test/java/com/google/android/exoplayer2/upstream/DataSourceExceptionTest.java diff --git a/library/common/src/test/java/com/google/android/exoplayer2/upstream/DataSourceInputStreamTest.java b/library/datasource/src/test/java/com/google/android/exoplayer2/upstream/DataSourceInputStreamTest.java similarity index 100% rename from library/common/src/test/java/com/google/android/exoplayer2/upstream/DataSourceInputStreamTest.java rename to library/datasource/src/test/java/com/google/android/exoplayer2/upstream/DataSourceInputStreamTest.java diff --git a/library/common/src/test/java/com/google/android/exoplayer2/upstream/DataSpecTest.java b/library/datasource/src/test/java/com/google/android/exoplayer2/upstream/DataSpecTest.java similarity index 100% rename from library/common/src/test/java/com/google/android/exoplayer2/upstream/DataSpecTest.java rename to library/datasource/src/test/java/com/google/android/exoplayer2/upstream/DataSpecTest.java diff --git a/library/common/src/test/java/com/google/android/exoplayer2/upstream/DefaultHttpDataSourceContractTest.java b/library/datasource/src/test/java/com/google/android/exoplayer2/upstream/DefaultHttpDataSourceContractTest.java similarity index 100% rename from library/common/src/test/java/com/google/android/exoplayer2/upstream/DefaultHttpDataSourceContractTest.java rename to library/datasource/src/test/java/com/google/android/exoplayer2/upstream/DefaultHttpDataSourceContractTest.java diff --git a/library/common/src/test/java/com/google/android/exoplayer2/upstream/DefaultHttpDataSourceTest.java b/library/datasource/src/test/java/com/google/android/exoplayer2/upstream/DefaultHttpDataSourceTest.java similarity index 100% rename from library/common/src/test/java/com/google/android/exoplayer2/upstream/DefaultHttpDataSourceTest.java rename to library/datasource/src/test/java/com/google/android/exoplayer2/upstream/DefaultHttpDataSourceTest.java diff --git a/library/common/src/test/java/com/google/android/exoplayer2/upstream/FileDataSourceContractTest.java b/library/datasource/src/test/java/com/google/android/exoplayer2/upstream/FileDataSourceContractTest.java similarity index 100% rename from library/common/src/test/java/com/google/android/exoplayer2/upstream/FileDataSourceContractTest.java rename to library/datasource/src/test/java/com/google/android/exoplayer2/upstream/FileDataSourceContractTest.java diff --git a/library/common/src/test/java/com/google/android/exoplayer2/upstream/HttpUtilTest.java b/library/datasource/src/test/java/com/google/android/exoplayer2/upstream/HttpUtilTest.java similarity index 100% rename from library/common/src/test/java/com/google/android/exoplayer2/upstream/HttpUtilTest.java rename to library/datasource/src/test/java/com/google/android/exoplayer2/upstream/HttpUtilTest.java diff --git a/library/common/src/test/java/com/google/android/exoplayer2/upstream/ResolvingDataSourceContractTest.java b/library/datasource/src/test/java/com/google/android/exoplayer2/upstream/ResolvingDataSourceContractTest.java similarity index 100% rename from library/common/src/test/java/com/google/android/exoplayer2/upstream/ResolvingDataSourceContractTest.java rename to library/datasource/src/test/java/com/google/android/exoplayer2/upstream/ResolvingDataSourceContractTest.java diff --git a/library/common/src/test/java/com/google/android/exoplayer2/upstream/UdpDataSourceContractTest.java b/library/datasource/src/test/java/com/google/android/exoplayer2/upstream/UdpDataSourceContractTest.java similarity index 100% rename from library/common/src/test/java/com/google/android/exoplayer2/upstream/UdpDataSourceContractTest.java rename to library/datasource/src/test/java/com/google/android/exoplayer2/upstream/UdpDataSourceContractTest.java diff --git a/library/common/src/test/java/com/google/android/exoplayer2/upstream/cache/CacheDataSourceContractTest.java b/library/datasource/src/test/java/com/google/android/exoplayer2/upstream/cache/CacheDataSourceContractTest.java similarity index 100% rename from library/common/src/test/java/com/google/android/exoplayer2/upstream/cache/CacheDataSourceContractTest.java rename to library/datasource/src/test/java/com/google/android/exoplayer2/upstream/cache/CacheDataSourceContractTest.java diff --git a/library/common/src/test/java/com/google/android/exoplayer2/upstream/cache/CacheDataSourceTest.java b/library/datasource/src/test/java/com/google/android/exoplayer2/upstream/cache/CacheDataSourceTest.java similarity index 100% rename from library/common/src/test/java/com/google/android/exoplayer2/upstream/cache/CacheDataSourceTest.java rename to library/datasource/src/test/java/com/google/android/exoplayer2/upstream/cache/CacheDataSourceTest.java diff --git a/library/common/src/test/java/com/google/android/exoplayer2/upstream/cache/CacheDataSourceTest2.java b/library/datasource/src/test/java/com/google/android/exoplayer2/upstream/cache/CacheDataSourceTest2.java similarity index 100% rename from library/common/src/test/java/com/google/android/exoplayer2/upstream/cache/CacheDataSourceTest2.java rename to library/datasource/src/test/java/com/google/android/exoplayer2/upstream/cache/CacheDataSourceTest2.java diff --git a/library/common/src/test/java/com/google/android/exoplayer2/upstream/cache/CacheFileMetadataIndexTest.java b/library/datasource/src/test/java/com/google/android/exoplayer2/upstream/cache/CacheFileMetadataIndexTest.java similarity index 100% rename from library/common/src/test/java/com/google/android/exoplayer2/upstream/cache/CacheFileMetadataIndexTest.java rename to library/datasource/src/test/java/com/google/android/exoplayer2/upstream/cache/CacheFileMetadataIndexTest.java diff --git a/library/common/src/test/java/com/google/android/exoplayer2/upstream/cache/CacheKeyFactoryTest.java b/library/datasource/src/test/java/com/google/android/exoplayer2/upstream/cache/CacheKeyFactoryTest.java similarity index 100% rename from library/common/src/test/java/com/google/android/exoplayer2/upstream/cache/CacheKeyFactoryTest.java rename to library/datasource/src/test/java/com/google/android/exoplayer2/upstream/cache/CacheKeyFactoryTest.java diff --git a/library/common/src/test/java/com/google/android/exoplayer2/upstream/cache/CacheWriterTest.java b/library/datasource/src/test/java/com/google/android/exoplayer2/upstream/cache/CacheWriterTest.java similarity index 100% rename from library/common/src/test/java/com/google/android/exoplayer2/upstream/cache/CacheWriterTest.java rename to library/datasource/src/test/java/com/google/android/exoplayer2/upstream/cache/CacheWriterTest.java diff --git a/library/common/src/test/java/com/google/android/exoplayer2/upstream/cache/CachedContentIndexTest.java b/library/datasource/src/test/java/com/google/android/exoplayer2/upstream/cache/CachedContentIndexTest.java similarity index 100% rename from library/common/src/test/java/com/google/android/exoplayer2/upstream/cache/CachedContentIndexTest.java rename to library/datasource/src/test/java/com/google/android/exoplayer2/upstream/cache/CachedContentIndexTest.java diff --git a/library/common/src/test/java/com/google/android/exoplayer2/upstream/cache/DefaultContentMetadataTest.java b/library/datasource/src/test/java/com/google/android/exoplayer2/upstream/cache/DefaultContentMetadataTest.java similarity index 100% rename from library/common/src/test/java/com/google/android/exoplayer2/upstream/cache/DefaultContentMetadataTest.java rename to library/datasource/src/test/java/com/google/android/exoplayer2/upstream/cache/DefaultContentMetadataTest.java diff --git a/library/common/src/test/java/com/google/android/exoplayer2/upstream/cache/LeastRecentlyUsedCacheEvictorTest.java b/library/datasource/src/test/java/com/google/android/exoplayer2/upstream/cache/LeastRecentlyUsedCacheEvictorTest.java similarity index 100% rename from library/common/src/test/java/com/google/android/exoplayer2/upstream/cache/LeastRecentlyUsedCacheEvictorTest.java rename to library/datasource/src/test/java/com/google/android/exoplayer2/upstream/cache/LeastRecentlyUsedCacheEvictorTest.java diff --git a/library/common/src/test/java/com/google/android/exoplayer2/upstream/cache/ReusableBufferedOutputStreamTest.java b/library/datasource/src/test/java/com/google/android/exoplayer2/upstream/cache/ReusableBufferedOutputStreamTest.java similarity index 100% rename from library/common/src/test/java/com/google/android/exoplayer2/upstream/cache/ReusableBufferedOutputStreamTest.java rename to library/datasource/src/test/java/com/google/android/exoplayer2/upstream/cache/ReusableBufferedOutputStreamTest.java diff --git a/library/common/src/test/java/com/google/android/exoplayer2/upstream/cache/SimpleCacheSpanTest.java b/library/datasource/src/test/java/com/google/android/exoplayer2/upstream/cache/SimpleCacheSpanTest.java similarity index 100% rename from library/common/src/test/java/com/google/android/exoplayer2/upstream/cache/SimpleCacheSpanTest.java rename to library/datasource/src/test/java/com/google/android/exoplayer2/upstream/cache/SimpleCacheSpanTest.java diff --git a/library/common/src/test/java/com/google/android/exoplayer2/upstream/cache/SimpleCacheTest.java b/library/datasource/src/test/java/com/google/android/exoplayer2/upstream/cache/SimpleCacheTest.java similarity index 100% rename from library/common/src/test/java/com/google/android/exoplayer2/upstream/cache/SimpleCacheTest.java rename to library/datasource/src/test/java/com/google/android/exoplayer2/upstream/cache/SimpleCacheTest.java