blob: c0fb412735d6cd7e23232bf6c69ea499c26d2ad2 [file] [edit]
// Copyright (C) 2023 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.
filegroup {
name: "httpclient_api_sources",
srcs: [
"java/src/android/net/http/BidirectionalStream.java",
"java/src/android/net/http/CallbackException.java",
"java/src/android/net/http/ConnectionMigrationOptions.java",
"java/src/android/net/http/DnsOptions.java",
"java/src/android/net/http/HeaderBlock.java",
"java/src/android/net/http/HttpEngine.java",
"java/src/android/net/http/HttpException.java",
"java/src/android/net/http/InlineExecutionProhibitedException.java",
"java/src/android/net/http/NetworkException.java",
"java/src/android/net/http/QuicException.java",
"java/src/android/net/http/QuicOptions.java",
"java/src/android/net/http/UploadDataProvider.java",
"java/src/android/net/http/UploadDataSink.java",
"java/src/android/net/http/UrlRequest.java",
"java/src/android/net/http/UrlResponseInfo.java",
],
visibility: [
"//packages/modules/Connectivity:__subpackages__",
],
}
java_genrule {
name: "httpclient_classes_java",
tool_files: [
":httpclient_impl_internal{.jar}",
"package_prefix_exclude.txt",
"preloading_exclude.txt",
],
tools: [
"jar-classes-collector",
],
out: ["HttpEngineJavaClasses.java"],
cmd: "$(location jar-classes-collector) " +
"$(location :httpclient_impl_internal{.jar}) " +
"--prefix android.net.connectivity " +
"--prefix-excludes $(location package_prefix_exclude.txt) " +
"--excludes $(location preloading_exclude.txt) " +
"--java-package android.net.http " +
"--output $(out)",
visibility: [
"//external/cronet:__subpackages__",
],
}
java_library {
name: "httpclient_api",
srcs: [
":httpclient_api_sources",
],
defaults: [
"cronet_aml_components_cronet_android_api_version",
],
libs: [
"androidx.annotation_annotation",
"framework-annotations-lib",
"framework-connectivity.stubs.module_lib",
"cronet_aml_api_java",
"cronet_aml_java",
"httpclient_impl",
],
static_libs: [
"com.android.net.http.flags-aconfig-java",
],
sdk_version: "module_current",
visibility: [
"//packages/modules/Connectivity:__subpackages__",
],
}
java_library {
name: "httpclient_impl",
srcs: [":httpclient_classes_java"],
static_libs: ["httpclient_impl_internal"],
sdk_version: "module_current",
min_sdk_version: "30",
visibility: [
"//packages/modules/Connectivity:__subpackages__",
"//external/cronet:__subpackages__",
],
apex_available: [
"com.android.tethering",
],
}
java_library {
name: "httpclient_impl_internal",
srcs: [
"java/src/android/net/http/*Wrapper.java",
"java/src/android/net/http/IHttpEngineBuilder.java",
"java/src/android/net/http/HeaderBlockImpl.java",
"java/src/android/net/http/CronetExceptionTranslationUtils.java",
],
libs: [
"framework-connectivity.stubs",
"androidx.annotation_annotation",
"framework-annotations-lib",
"framework-connectivity.stubs.module_lib",
],
static_libs: [
"cronet_aml_api_java",
"cronet_aml_java",
],
sdk_version: "module_current",
min_sdk_version: "30",
visibility: [
"//packages/modules/Connectivity:__subpackages__",
],
apex_available: [
"com.android.tethering",
],
}
filegroup {
name: "remove_gen_jni_jarjar_rules",
srcs: ["tools/remove-gen-jni-jarjar-rules.txt"],
visibility: ["//external/cronet:__subpackages__"],
}