// Copyright (C) 2021 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.

package {
    default_applicable_licenses: ["Android-Apache-2.0"],
}

filegroup {
    name: "service-scheduling-sources",
    srcs: [
        "java/**/*.java",
    ],
}

genrule {
    name: "statslog-scheduling-java-gen",
    tools: ["stats-log-api-gen"],
    cmd: "$(location stats-log-api-gen) --java $(out) --module scheduling" +
         " --javaPackage com.android.server.scheduling --javaClass SchedulingStatsLog" +
         " --minApiLevel current",
    out: ["com/android/server/scheduling/SchedulingStatsLog.java"],
}


java_library {
    name: "scheduling-statsd",
    sdk_version: "system_current",
    srcs: [":statslog-scheduling-java-gen"],
    apex_available: [
        "com.android.scheduling",
    ]
}

java_library {
    name: "service-scheduling",
    srcs: [
        ":service-scheduling-sources",
        // TODO(b/161353402): Remove framework dependency when modules-utils expands
        ":framework-cellbroadcast-shared-srcs",
        ":reboot-stats-parser",
    ],
    min_sdk_version: "current",
    defaults: ["framework-system-server-module-defaults" ],
    sdk_version: "system_server_current",
    libs: [
        "framework-scheduling.impl",
        "framework-tethering.stubs.module_lib",
        "unsupportedappusage",
    ],
    static_libs: [
        "modules-utils-os",
        "scheduling-statsd",
    ],
    jarjar_rules: ":scheduling-jarjar-rules",
    apex_available: [
        "com.android.scheduling",
    ],
}