summaryrefslogtreecommitdiff
path: root/services/permission
diff options
context:
space:
mode:
Diffstat (limited to 'services/permission')
-rw-r--r--services/permission/Android.bp40
-rw-r--r--services/permission/OWNERS4
-rw-r--r--services/permission/jarjar-rules.txt1
-rw-r--r--services/permission/java/com/android/server/permission/ModernPermissionManagerServiceImpl.kt26
4 files changed, 71 insertions, 0 deletions
diff --git a/services/permission/Android.bp b/services/permission/Android.bp
new file mode 100644
index 000000000000..b03f17b1bef7
--- /dev/null
+++ b/services/permission/Android.bp
@@ -0,0 +1,40 @@
+package {
+ // See: http://go/android-license-faq
+ // A large-scale-change added 'default_applicable_licenses' to import
+ // all of the 'license_kinds' from "frameworks_base_license"
+ // to get the below license kinds:
+ // SPDX-license-identifier-Apache-2.0
+ default_applicable_licenses: ["frameworks_base_license"],
+}
+
+filegroup {
+ name: "services.permission-sources",
+ srcs: [
+ "java/**/*.java",
+ "java/**/*.kt",
+ ],
+ path: "java",
+ visibility: ["//frameworks/base/services"],
+}
+
+java_library_static {
+ name: "services.permission",
+ defaults: ["platform_service_defaults"],
+ srcs: [":services.permission-sources"],
+ libs: [
+ "services.core",
+ // Soong fails to automatically add this dependency because all the
+ // *.kt sources are inside a filegroup.
+ "kotlin-annotations",
+ ],
+ static_libs: [
+ "kotlin-stdlib",
+ ],
+ jarjar_rules: "jarjar-rules.txt",
+ kotlincflags: [
+ "-Xjvm-default=all",
+ "-Xno-call-assertions",
+ "-Xno-param-assertions",
+ "-Xno-receiver-assertions",
+ ],
+}
diff --git a/services/permission/OWNERS b/services/permission/OWNERS
new file mode 100644
index 000000000000..6c6c9fc10d3b
--- /dev/null
+++ b/services/permission/OWNERS
@@ -0,0 +1,4 @@
+ashfall@google.com
+joecastro@google.com
+ntmyren@google.com
+zhanghai@google.com
diff --git a/services/permission/jarjar-rules.txt b/services/permission/jarjar-rules.txt
new file mode 100644
index 000000000000..34af3afabc4f
--- /dev/null
+++ b/services/permission/jarjar-rules.txt
@@ -0,0 +1 @@
+rule kotlin.** com.android.server.permission.jarjar.@0
diff --git a/services/permission/java/com/android/server/permission/ModernPermissionManagerServiceImpl.kt b/services/permission/java/com/android/server/permission/ModernPermissionManagerServiceImpl.kt
new file mode 100644
index 000000000000..21ec1593fdeb
--- /dev/null
+++ b/services/permission/java/com/android/server/permission/ModernPermissionManagerServiceImpl.kt
@@ -0,0 +1,26 @@
+/*
+ * Copyright (C) 2022 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 com.android.server.permission
+
+import com.android.internal.annotations.Keep
+import com.android.server.pm.permission.PermissionManagerServiceInterface
+
+/**
+ * Modern implementation of [PermissionManagerServiceInterface].
+ */
+@Keep
+class ModernPermissionManagerServiceImpl