blob: 4461b16fe15c764e717fdbcb84f1e34a69c7a35b [file] [log] [blame]
Jason Monk8f5f7ff2017-10-17 14:12:42 -04001/**
2 * Copyright (c) 2017, 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 */
16
17package android.app.slice;
18
Jason Monk74f5e362017-12-06 08:56:33 -050019import android.app.slice.ISliceListener;
20import android.app.slice.SliceSpec;
21import android.net.Uri;
22
Jason Monk8f5f7ff2017-10-17 14:12:42 -040023/** @hide */
24interface ISliceManager {
Jason Monk74f5e362017-12-06 08:56:33 -050025 void addSliceListener(in Uri uri, String pkg, in ISliceListener listener,
26 in SliceSpec[] specs);
27 void removeSliceListener(in Uri uri, String pkg, in ISliceListener listener);
28 void pinSlice(String pkg, in Uri uri, in SliceSpec[] specs);
29 void unpinSlice(String pkg, in Uri uri);
30 boolean hasSliceAccess(String pkg);
31 SliceSpec[] getPinnedSpecs(in Uri uri, String pkg);
Jason Monke8f8be72018-01-21 10:10:35 -050032 int checkSlicePermission(in Uri uri, String pkg, int pid, int uid);
33 void grantPermissionFromUser(in Uri uri, String pkg, String callingPkg, boolean allSlices);
Jason Monk8f5f7ff2017-10-17 14:12:42 -040034}