1// Copyright (C) 2021 The Android Open Source Project
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7//     http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15package {
16    default_applicable_licenses: ["Android-Apache-2.0"],
17}
18
19filegroup {
20    name: "service-scheduling-sources",
21    srcs: [
22        "java/**/*.java",
23    ],
24}
25
26genrule {
27    name: "statslog-scheduling-java-gen",
28    tools: ["stats-log-api-gen"],
29    cmd: "$(location stats-log-api-gen) --java $(out) --module scheduling" +
30         " --javaPackage com.android.server.scheduling --javaClass SchedulingStatsLog" +
31         " --minApiLevel current",
32    out: ["com/android/server/scheduling/SchedulingStatsLog.java"],
33}
34
35
36java_library {
37    name: "scheduling-statsd",
38    sdk_version: "system_current",
39    srcs: [":statslog-scheduling-java-gen"],
40    apex_available: [
41        "com.android.scheduling",
42    ]
43}
44
45java_library {
46    name: "service-scheduling",
47    srcs: [
48        ":service-scheduling-sources",
49        // TODO(b/161353402): Remove framework dependency when modules-utils expands
50        ":framework-cellbroadcast-shared-srcs",
51        ":reboot-stats-parser",
52    ],
53    min_sdk_version: "current",
54    defaults: ["framework-system-server-module-defaults" ],
55    sdk_version: "system_server_current",
56    libs: [
57        "framework-scheduling.impl",
58        "framework-tethering.stubs.module_lib",
59        "unsupportedappusage",
60    ],
61    static_libs: [
62        "modules-utils-os",
63        "scheduling-statsd",
64    ],
65    jarjar_rules: ":scheduling-jarjar-rules",
66    apex_available: [
67        "com.android.scheduling",
68    ],
69}
70