• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1//
2// Copyright (C) 2020 The Android Open Source Project
3//
4// Licensed under the Apache License, Version 2.0 (the "License");
5// you may not use this file except in compliance with the License.
6// You may obtain a copy of the License at
7//
8//      http://www.apache.org/licenses/LICENSE-2.0
9//
10// Unless required by applicable law or agreed to in writing, software
11// distributed under the License is distributed on an "AS IS" BASIS,
12// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13// See the License for the specific language governing permissions and
14// limitations under the License.
15
16package {
17    default_applicable_licenses: ["Android-Apache-2.0"],
18}
19
20java_defaults {
21    name: "modules-utils-defaults",
22    sdk_version: "module_current",
23    min_sdk_version: "29",
24    libs: ["framework-annotations-lib"],
25    visibility: ["//visibility:public"],
26    apex_available: [
27        "//apex_available:anyapex",
28        "//apex_available:platform",
29    ],
30    defaults_visibility: [
31        "//frameworks/libs/modules-utils/java:__subpackages__",
32    ],
33}
34
35java_library {
36    name: "modules-utils-os",
37    defaults: ["modules-utils-defaults"],
38    min_sdk_version: "30",
39    static_libs: [
40        "modules-utils-list-slice",
41        "modules-utils-shell-command-handler",
42    ],
43    visibility: [
44        // NOTE: Do not add new rules to this list. New users should use the separate libraries it
45        // consists of.
46        "//visibility:override",
47        "//frameworks/base",
48        "//packages/modules/Connectivity/service",
49        "//packages/modules/Permission/service",
50        "//packages/modules/Scheduling/service",
51        "//packages/modules/Wifi/framework",
52        "//packages/modules/Wifi/service",
53        "//packages/services/Car/service",
54        "//packages/services/Telephony",
55    ],
56}
57
58java_library {
59    name: "modules-utils-handlerexecutor",
60    defaults: ["modules-utils-defaults"],
61    srcs: ["HandlerExecutor.java"],
62}
63
64java_library {
65    name: "modules-utils-backgroundthread",
66    defaults: ["modules-utils-defaults"],
67    srcs: ["BackgroundThread.java"],
68    static_libs: ["modules-utils-handlerexecutor"],
69}
70
71java_library {
72    name: "modules-utils-binary-xml",
73    defaults: ["modules-utils-defaults"],
74    min_sdk_version: "31",
75    srcs: [
76        "BinaryXmlPullParser.java",
77        "BinaryXmlSerializer.java",
78        "FastDataInput.java",
79        "FastDataOutput.java",
80        "ModifiedUtf8.java",
81        "TypedXmlPullParser.java",
82        "TypedXmlSerializer.java",
83    ],
84}
85
86java_library {
87    name: "modules-utils-bytesmatcher",
88    defaults: ["modules-utils-defaults"],
89    srcs: ["BytesMatcher.java"],
90    lint: {
91        baseline_filename: "lint-baseline.xml",
92    },
93}
94
95java_library {
96    name: "modules-utils-list-slice",
97    defaults: ["modules-utils-defaults"],
98    srcs: [
99        ":module-utils-os-aidls",
100        "BaseParceledListSlice.java",
101        "ParceledListSlice.java",
102        "StringParceledListSlice.java",
103    ],
104    min_sdk_version: "30",
105}
106
107java_library {
108    name: "modules-utils-shell-command-handler",
109    defaults: ["modules-utils-defaults"],
110    srcs: ["BasicShellCommandHandler.java"],
111}
112
113java_library {
114    name: "modules-utils-synchronous-result-receiver",
115    defaults: ["modules-utils-defaults"],
116    srcs: [
117        ":modules-utils-synchronous-result-receiver-aidl",
118        "SynchronousResultReceiver.java",
119    ],
120}
121