diff --git a/build.gradle b/build.gradle index 4e6f4529e4..3d792da33f 100644 --- a/build.gradle +++ b/build.gradle @@ -41,5 +41,3 @@ allprojects { } group = 'androidx.media3' } - -apply from: 'javadoc_combined.gradle' diff --git a/javadoc_combined.gradle b/javadoc_combined.gradle deleted file mode 100644 index 3da265f5b0..0000000000 --- a/javadoc_combined.gradle +++ /dev/null @@ -1,94 +0,0 @@ -// Copyright (C) 2017 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: "${buildscript.sourceFile.parentFile}/constants.gradle" -apply from: "${buildscript.sourceFile.parentFile}/javadoc_util.gradle" - -class CombinedJavadocPlugin implements Plugin { - - static final String JAVADOC_TASK_NAME = "generateCombinedJavadoc" - - @Override - void apply(Project project) { - project.gradle.projectsEvaluated { - Set libraryModules = getLibraryModules(project) - if (!libraryModules.isEmpty()) { - def guavaReferenceUrl = "https://guava.dev/releases/$project.ext.guavaVersion/api/docs" - - project.task(JAVADOC_TASK_NAME, type: Javadoc) { - description = "Generates combined Javadoc." - title = "ExoPlayer library" - source = libraryModules.generateJavadoc.source - classpath = project.files([]) - destinationDir = project.file("$project.buildDir/docs/javadoc") - options { - links "https://developer.android.com/reference", guavaReferenceUrl - encoding = "UTF-8" - } - exclude "**/BuildConfig.java" - exclude "**/R.java" - doFirst { - libraryModules.each { libraryModule -> - libraryModule.android.libraryVariants.all { variant -> - def name = variant.buildType.name - if (name == "release") { - // Works around b/234569640 that causes different versions of the androidx.media - // jar to be on the classpath. - def allJarFiles = [] - allJarFiles.addAll(variant.javaCompileProvider.get().classpath.files) - def filteredJarFiles = allJarFiles.findAll { file -> - if (file ==~ /.*media-.\..\..-api.jar$/ - && !file.path.endsWith( - "media-" + project.ext.androidxMediaVersion + "-api.jar")) { - return false; - } - if (file ==~ /.*\/core-.\..\..-api.jar$/ - && !file.path.endsWith( - "core-" + project.ext.androidxCoreVersion + "-api.jar")) { - return false; - } - return true; - } - classpath += - libraryModule.project.files( - filteredJarFiles, - libraryModule.project.android.getBootClasspath()) - } - } - } - } - doLast { - libraryModules.each { libraryModule -> - project.copy { - from "${libraryModule.projectDir}/src/main/javadoc" - into "${project.buildDir}/docs/javadoc" - } - } - project.fixJavadoc() - } - } - } - } - } - - // Returns Android library modules that declare a generateJavadoc task. - private static Set getLibraryModules(Project project) { - project.subprojects.findAll { - it.plugins.findPlugin("com.android.library") && - it.tasks.findByName("generateJavadoc") - } - } - -} - -apply plugin: CombinedJavadocPlugin diff --git a/javadoc_library.gradle b/javadoc_library.gradle deleted file mode 100644 index 20be99ee12..0000000000 --- a/javadoc_library.gradle +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright (C) 2017 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: "${buildscript.sourceFile.parentFile}/constants.gradle" -apply from: "${buildscript.sourceFile.parentFile}/javadoc_util.gradle" - -android.libraryVariants.all { variant -> - def name = variant.buildType.name - if (name != "release") { - return // Skip non-release builds. - } - def allSourceDirs = variant.sourceSets.inject ([]) { - acc, val -> acc << val.javaDirectories - } - task("generateJavadoc", type: Javadoc) { - description = "Generates Javadoc for the ${javadocTitle}." - title = "ExoPlayer ${javadocTitle}" - source = allSourceDirs + "${buildDir}/generated/aidl_source_output_dir/" - options { - links "https://developer.android.com/reference", - "https://guava.dev/releases/$project.ext.guavaVersion/api/docs" - encoding = "UTF-8" - } - exclude "**/BuildConfig.java" - exclude "**/R.java" - doFirst { - classpath = - files( - variant.javaCompileProvider.get().classpath.files, - project.android.getBootClasspath()) - } - doLast { - copy { - from "src/main/javadoc" - into "$buildDir/docs/javadoc" - } - project.fixJavadoc() - } - } -} diff --git a/javadoc_util.gradle b/javadoc_util.gradle deleted file mode 100644 index b9962d33a9..0000000000 --- a/javadoc_util.gradle +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright (C) 2018 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. -ext.fixJavadoc = { - def javadocPath = "${project.buildDir}/docs/javadoc" - // Fix external Android links to target the top frame. - def androidRoot = "https://developer.android.com/reference/" - def androidLink = "" + - "" + - "" + - "" + - "" + - "" + - "" + - "" + - "" + - "" + - "" - ant.replaceregexp(match:headTag, replace:headTagWithFavicon, flags:'g') { - fileset(dir: "${javadocPath}", includes: "**/*.html") - } - // Remove date metadata that changes every time Javadoc is generated. - def javadocGeneratedBy = "\n" - ant.replaceregexp(match:javadocGeneratedBy, replace:"") { - fileset(dir: "${javadocPath}", includes: "**/*.html") - } - def dateMeta = "\n" - ant.replaceregexp(match:dateMeta, replace:"") { - fileset(dir: "${javadocPath}", includes: "**/*.html") - } -} diff --git a/libraries/cast/build.gradle b/libraries/cast/build.gradle index 8d72ba141e..9b9cca615e 100644 --- a/libraries/cast/build.gradle +++ b/libraries/cast/build.gradle @@ -34,11 +34,6 @@ dependencies { testImplementation 'org.robolectric:robolectric:' + robolectricVersion } -ext { - javadocTitle = 'Cast extension' -} -apply from: '../../javadoc_library.gradle' - ext { releaseArtifactId = 'media3-cast' releaseName = 'Media3 Cast module' diff --git a/libraries/common/build.gradle b/libraries/common/build.gradle index e86d9d4ba8..6b81490aae 100644 --- a/libraries/common/build.gradle +++ b/libraries/common/build.gradle @@ -86,11 +86,6 @@ dependencies { testImplementation project(modulePrefix + 'test-utils') } -ext { - javadocTitle = 'Common module' -} -apply from: '../../javadoc_library.gradle' - ext { releaseArtifactId = 'media3-common' releaseName = 'Media3 common module' diff --git a/libraries/container/build.gradle b/libraries/container/build.gradle index 0397606f9d..565275724e 100644 --- a/libraries/container/build.gradle +++ b/libraries/container/build.gradle @@ -41,10 +41,6 @@ android { } } -ext { - javadocTitle = 'Container module' -} - dependencies { implementation project(modulePrefix + 'lib-common') implementation 'androidx.annotation:annotation:' + androidxAnnotationVersion @@ -53,7 +49,6 @@ dependencies { testImplementation 'junit:junit:' + junitVersion testImplementation 'org.robolectric:robolectric:' + robolectricVersion } -apply from: '../../javadoc_library.gradle' ext { releaseArtifactId = 'media3-container' diff --git a/libraries/database/build.gradle b/libraries/database/build.gradle index b76f025068..367ffb4c2f 100644 --- a/libraries/database/build.gradle +++ b/libraries/database/build.gradle @@ -40,11 +40,6 @@ dependencies { testImplementation project(modulePrefix + 'test-utils') } -ext { - javadocTitle = 'Database module' -} -apply from: '../../javadoc_library.gradle' - ext { releaseArtifactId = 'media3-database' releaseName = 'Media3 database module' diff --git a/libraries/datasource/build.gradle b/libraries/datasource/build.gradle index 1001800f4b..7c5e1c05ea 100644 --- a/libraries/datasource/build.gradle +++ b/libraries/datasource/build.gradle @@ -60,11 +60,6 @@ dependencies { testImplementation project(modulePrefix + 'test-utils') } -ext { - javadocTitle = 'DataSource module' -} -apply from: '../../javadoc_library.gradle' - ext { releaseArtifactId = 'media3-datasource' releaseName = 'Media3 DataSource module' diff --git a/libraries/datasource_cronet/build.gradle b/libraries/datasource_cronet/build.gradle index 1670d42829..57ccac9be1 100644 --- a/libraries/datasource_cronet/build.gradle +++ b/libraries/datasource_cronet/build.gradle @@ -43,11 +43,6 @@ dependencies { testImplementation 'org.robolectric:robolectric:' + robolectricVersion } -ext { - javadocTitle = 'Cronet extension' -} -apply from: '../../javadoc_library.gradle' - ext { releaseArtifactId = 'media3-datasource-cronet' releaseName = 'Media3 Cronet DataSource module' diff --git a/libraries/datasource_okhttp/build.gradle b/libraries/datasource_okhttp/build.gradle index 252f1dec79..f745599a40 100644 --- a/libraries/datasource_okhttp/build.gradle +++ b/libraries/datasource_okhttp/build.gradle @@ -38,11 +38,6 @@ dependencies { api 'com.squareup.okhttp3:okhttp:' + okhttpVersion } -ext { - javadocTitle = 'OkHttp extension' -} -apply from: '../../javadoc_library.gradle' - ext { releaseArtifactId = 'media3-datasource-okhttp' releaseName = 'Media3 OkHttp DataSource module' diff --git a/libraries/datasource_rtmp/build.gradle b/libraries/datasource_rtmp/build.gradle index 4738fec2b6..ab3bd3435f 100644 --- a/libraries/datasource_rtmp/build.gradle +++ b/libraries/datasource_rtmp/build.gradle @@ -35,11 +35,6 @@ dependencies { testImplementation 'org.robolectric:robolectric:' + robolectricVersion } -ext { - javadocTitle = 'RTMP extension' -} -apply from: '../../javadoc_library.gradle' - ext { releaseArtifactId = 'media3-datasource-rtmp' releaseName = 'Media3 RTMP DataSource module' diff --git a/libraries/decoder/build.gradle b/libraries/decoder/build.gradle index b4fa29b95c..1d8e357e2b 100644 --- a/libraries/decoder/build.gradle +++ b/libraries/decoder/build.gradle @@ -39,11 +39,6 @@ dependencies { testImplementation 'org.robolectric:robolectric:' + robolectricVersion } -ext { - javadocTitle = 'Decoder module' -} -apply from: '../../javadoc_library.gradle' - ext { releaseArtifactId = 'media3-decoder' releaseName = 'Media3 decoder module' diff --git a/libraries/decoder_av1/build.gradle b/libraries/decoder_av1/build.gradle index aa2e3fce8b..6f66ad5880 100644 --- a/libraries/decoder_av1/build.gradle +++ b/libraries/decoder_av1/build.gradle @@ -52,8 +52,3 @@ dependencies { implementation 'androidx.annotation:annotation:' + androidxAnnotationVersion compileOnly 'org.jetbrains.kotlin:kotlin-annotations-jvm:' + kotlinAnnotationsVersion } - -ext { - javadocTitle = 'AV1 extension' -} -apply from: '../../javadoc_library.gradle' diff --git a/libraries/decoder_ffmpeg/build.gradle b/libraries/decoder_ffmpeg/build.gradle index 6d79254af6..3c111c9e14 100644 --- a/libraries/decoder_ffmpeg/build.gradle +++ b/libraries/decoder_ffmpeg/build.gradle @@ -33,8 +33,3 @@ dependencies { testImplementation project(modulePrefix + 'test-utils') testImplementation 'org.robolectric:robolectric:' + robolectricVersion } - -ext { - javadocTitle = 'FFmpeg extension' -} -apply from: '../../javadoc_library.gradle' diff --git a/libraries/decoder_flac/build.gradle b/libraries/decoder_flac/build.gradle index a263c4aff8..0da6fa2e52 100644 --- a/libraries/decoder_flac/build.gradle +++ b/libraries/decoder_flac/build.gradle @@ -40,8 +40,3 @@ dependencies { testImplementation project(modulePrefix + 'test-data') testImplementation 'org.robolectric:robolectric:' + robolectricVersion } - -ext { - javadocTitle = 'FLAC extension' -} -apply from: '../../javadoc_library.gradle' diff --git a/libraries/decoder_midi/build.gradle b/libraries/decoder_midi/build.gradle index 0ea96e0106..e9bbc8e89b 100644 --- a/libraries/decoder_midi/build.gradle +++ b/libraries/decoder_midi/build.gradle @@ -34,8 +34,3 @@ dependencies { testImplementation project(modulePrefix + 'test-data') testImplementation 'org.robolectric:robolectric:' + robolectricVersion } - -ext { - javadocTitle = 'MIDI extension' -} -apply from: '../../javadoc_library.gradle' diff --git a/libraries/decoder_opus/build.gradle b/libraries/decoder_opus/build.gradle index 806babeebc..8b88ff82b4 100644 --- a/libraries/decoder_opus/build.gradle +++ b/libraries/decoder_opus/build.gradle @@ -36,8 +36,3 @@ dependencies { androidTestImplementation 'androidx.test:runner:' + androidxTestRunnerVersion androidTestImplementation 'androidx.test.ext:junit:' + androidxTestJUnitVersion } - -ext { - javadocTitle = 'Opus extension' -} -apply from: '../../javadoc_library.gradle' diff --git a/libraries/decoder_vp9/build.gradle b/libraries/decoder_vp9/build.gradle index 909c50d245..d7a29e5427 100644 --- a/libraries/decoder_vp9/build.gradle +++ b/libraries/decoder_vp9/build.gradle @@ -37,8 +37,3 @@ dependencies { androidTestImplementation 'androidx.test.ext:junit:' + androidxTestJUnitVersion androidTestImplementation 'com.google.truth:truth:' + truthVersion } - -ext { - javadocTitle = 'VP9 extension' -} -apply from: '../../javadoc_library.gradle' diff --git a/libraries/effect/build.gradle b/libraries/effect/build.gradle index 9a3d3da01e..1420de6203 100644 --- a/libraries/effect/build.gradle +++ b/libraries/effect/build.gradle @@ -61,11 +61,6 @@ dependencies { androidTestCompileOnly 'org.checkerframework:checker-compat-qual:' + checkerframeworkCompatVersion } -ext { - javadocTitle = 'Effect module' -} -apply from: '../../javadoc_library.gradle' - ext { releaseArtifactId = 'media3-effect' releaseName = 'Media3 Effect module' diff --git a/libraries/exoplayer/build.gradle b/libraries/exoplayer/build.gradle index 3299e8069e..e02177374d 100644 --- a/libraries/exoplayer/build.gradle +++ b/libraries/exoplayer/build.gradle @@ -70,11 +70,6 @@ dependencies { testImplementation project(modulePrefix + 'test-utils-robolectric') } -ext { - javadocTitle = 'Core module' -} -apply from: '../../javadoc_library.gradle' - ext { releaseArtifactId = 'media3-exoplayer' releaseName = 'Media3 ExoPlayer module' diff --git a/libraries/exoplayer_dash/build.gradle b/libraries/exoplayer_dash/build.gradle index c4baa07b8a..5e4ca3b03a 100644 --- a/libraries/exoplayer_dash/build.gradle +++ b/libraries/exoplayer_dash/build.gradle @@ -43,11 +43,6 @@ dependencies { testImplementation 'org.robolectric:robolectric:' + robolectricVersion } -ext { - javadocTitle = 'DASH module' -} -apply from: '../../javadoc_library.gradle' - ext { releaseArtifactId = 'media3-exoplayer-dash' releaseName = 'Media3 ExoPlayer DASH module' diff --git a/libraries/exoplayer_hls/build.gradle b/libraries/exoplayer_hls/build.gradle index 93ba75b5b9..eadf3f2c0d 100644 --- a/libraries/exoplayer_hls/build.gradle +++ b/libraries/exoplayer_hls/build.gradle @@ -45,11 +45,6 @@ dependencies { testImplementation 'org.robolectric:robolectric:' + robolectricVersion } -ext { - javadocTitle = 'HLS module' -} -apply from: '../../javadoc_library.gradle' - ext { releaseArtifactId = 'media3-exoplayer-hls' releaseName = 'Media3 ExoPlayer HLS module' diff --git a/libraries/exoplayer_ima/build.gradle b/libraries/exoplayer_ima/build.gradle index e5d4e054b4..a4ecd60dd4 100644 --- a/libraries/exoplayer_ima/build.gradle +++ b/libraries/exoplayer_ima/build.gradle @@ -42,11 +42,6 @@ dependencies { testImplementation 'org.robolectric:robolectric:' + robolectricVersion } -ext { - javadocTitle = 'IMA extension' -} -apply from: '../../javadoc_library.gradle' - ext { releaseArtifactId = 'media3-exoplayer-ima' releaseName = 'Media3 ExoPlayer IMA module' diff --git a/libraries/exoplayer_rtsp/build.gradle b/libraries/exoplayer_rtsp/build.gradle index e4941cc53e..0920252e8f 100644 --- a/libraries/exoplayer_rtsp/build.gradle +++ b/libraries/exoplayer_rtsp/build.gradle @@ -46,11 +46,6 @@ dependencies { testImplementation 'org.robolectric:robolectric:' + robolectricVersion } -ext { - javadocTitle = 'RTSP module' -} -apply from: '../../javadoc_library.gradle' - ext { releaseArtifactId = 'media3-exoplayer-rtsp' releaseName = 'Media3 ExoPlayer RTSP module' diff --git a/libraries/exoplayer_smoothstreaming/build.gradle b/libraries/exoplayer_smoothstreaming/build.gradle index 94d99999ae..71f820151f 100644 --- a/libraries/exoplayer_smoothstreaming/build.gradle +++ b/libraries/exoplayer_smoothstreaming/build.gradle @@ -43,11 +43,6 @@ dependencies { testImplementation 'org.robolectric:robolectric:' + robolectricVersion } -ext { - javadocTitle = 'SmoothStreaming module' -} -apply from: '../../javadoc_library.gradle' - ext { releaseArtifactId = 'media3-exoplayer-smoothstreaming' releaseName = 'Media3 ExoPlayer SmoothStreaming module' diff --git a/libraries/exoplayer_workmanager/build.gradle b/libraries/exoplayer_workmanager/build.gradle index bf19ddb756..74ff63d63c 100644 --- a/libraries/exoplayer_workmanager/build.gradle +++ b/libraries/exoplayer_workmanager/build.gradle @@ -31,11 +31,6 @@ dependencies { compileOnly 'org.jetbrains.kotlin:kotlin-annotations-jvm:' + kotlinAnnotationsVersion } -ext { - javadocTitle = 'WorkManager extension' -} -apply from: '../../javadoc_library.gradle' - ext { releaseArtifactId = 'media3-exoplayer-workmanager' releaseName = 'Media3 ExoPlayer WorkManager module' diff --git a/libraries/extractor/build.gradle b/libraries/extractor/build.gradle index 042ee511ad..a54955455f 100644 --- a/libraries/extractor/build.gradle +++ b/libraries/extractor/build.gradle @@ -47,11 +47,6 @@ dependencies { testImplementation 'org.robolectric:robolectric:' + robolectricVersion } -ext { - javadocTitle = 'Extractor module' -} -apply from: '../../javadoc_library.gradle' - ext { releaseArtifactId = 'media3-extractor' releaseName = 'Media3 Extractor module' diff --git a/libraries/muxer/build.gradle b/libraries/muxer/build.gradle index ed81a405cb..baeb110776 100644 --- a/libraries/muxer/build.gradle +++ b/libraries/muxer/build.gradle @@ -41,10 +41,6 @@ android { } } -ext { - javadocTitle = 'Muxer module' -} - dependencies { implementation project(modulePrefix + 'lib-common') implementation project(modulePrefix + 'lib-container') @@ -63,7 +59,6 @@ dependencies { androidTestImplementation project(modulePrefix + 'test-utils') androidTestImplementation project(modulePrefix + 'lib-extractor') } -apply from: '../../javadoc_library.gradle' ext { releaseArtifactId = 'media3-muxer' diff --git a/libraries/test_utils/build.gradle b/libraries/test_utils/build.gradle index 8093218550..9b38196484 100644 --- a/libraries/test_utils/build.gradle +++ b/libraries/test_utils/build.gradle @@ -40,11 +40,6 @@ dependencies { testImplementation 'org.robolectric:robolectric:' + robolectricVersion } -ext { - javadocTitle = 'Test utils' -} -apply from: '../../javadoc_library.gradle' - ext { releaseArtifactId = 'media3-test-utils' releaseName = 'Media3 test utils module' diff --git a/libraries/test_utils_robolectric/build.gradle b/libraries/test_utils_robolectric/build.gradle index e24e05cbb6..24ceaad05e 100644 --- a/libraries/test_utils_robolectric/build.gradle +++ b/libraries/test_utils_robolectric/build.gradle @@ -34,11 +34,6 @@ dependencies { implementation project(modulePrefix + 'test-utils') } -ext { - javadocTitle = 'Robolectric utils' -} -apply from: '../../javadoc_library.gradle' - ext { releaseArtifactId = 'media3-test-utils-robolectric' releaseName = 'Media3 robolectric test utils module' diff --git a/libraries/transformer/build.gradle b/libraries/transformer/build.gradle index 00c06da8f8..e9de868a6a 100644 --- a/libraries/transformer/build.gradle +++ b/libraries/transformer/build.gradle @@ -65,11 +65,6 @@ dependencies { androidTestCompileOnly 'org.checkerframework:checker-compat-qual:' + checkerframeworkCompatVersion } -ext { - javadocTitle = 'Transformer module' -} -apply from: '../../javadoc_library.gradle' - ext { releaseArtifactId = 'media3-transformer' releaseName = 'Media3 Transformer module' diff --git a/libraries/ui/build.gradle b/libraries/ui/build.gradle index 78bf86314c..bdc618db59 100644 --- a/libraries/ui/build.gradle +++ b/libraries/ui/build.gradle @@ -40,11 +40,6 @@ dependencies { testImplementation 'org.robolectric:robolectric:' + robolectricVersion } -ext { - javadocTitle = 'UI module' -} -apply from: '../../javadoc_library.gradle' - ext { releaseArtifactId = 'media3-ui' releaseName = 'Media3 UI module' diff --git a/libraries/ui_leanback/build.gradle b/libraries/ui_leanback/build.gradle index 8f1954cb25..91c091517c 100644 --- a/libraries/ui_leanback/build.gradle +++ b/libraries/ui_leanback/build.gradle @@ -32,11 +32,6 @@ dependencies { compileOnly 'org.jetbrains.kotlin:kotlin-annotations-jvm:' + kotlinAnnotationsVersion } -ext { - javadocTitle = 'Leanback extension' -} -apply from: '../../javadoc_library.gradle' - ext { releaseArtifactId = 'media3-ui-leanback' releaseName = 'Media3 Leanback UI module'