INetworkPolicyManager.aidl revision 41ff7ec82422a5b6d00892afdb3232bc0e53d851
1d5cdd597b895a48ffa9a8e39f8a2504cd9b905c4Jeff Sharkey/*
2d5cdd597b895a48ffa9a8e39f8a2504cd9b905c4Jeff Sharkey * Copyright (C) 2011 The Android Open Source Project
3d5cdd597b895a48ffa9a8e39f8a2504cd9b905c4Jeff Sharkey *
4d5cdd597b895a48ffa9a8e39f8a2504cd9b905c4Jeff Sharkey * Licensed under the Apache License, Version 2.0 (the "License");
5d5cdd597b895a48ffa9a8e39f8a2504cd9b905c4Jeff Sharkey * you may not use this file except in compliance with the License.
6d5cdd597b895a48ffa9a8e39f8a2504cd9b905c4Jeff Sharkey * You may obtain a copy of the License at
7d5cdd597b895a48ffa9a8e39f8a2504cd9b905c4Jeff Sharkey *
8d5cdd597b895a48ffa9a8e39f8a2504cd9b905c4Jeff Sharkey *      http://www.apache.org/licenses/LICENSE-2.0
9d5cdd597b895a48ffa9a8e39f8a2504cd9b905c4Jeff Sharkey *
10d5cdd597b895a48ffa9a8e39f8a2504cd9b905c4Jeff Sharkey * Unless required by applicable law or agreed to in writing, software
11d5cdd597b895a48ffa9a8e39f8a2504cd9b905c4Jeff Sharkey * distributed under the License is distributed on an "AS IS" BASIS,
12d5cdd597b895a48ffa9a8e39f8a2504cd9b905c4Jeff Sharkey * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13d5cdd597b895a48ffa9a8e39f8a2504cd9b905c4Jeff Sharkey * See the License for the specific language governing permissions and
14d5cdd597b895a48ffa9a8e39f8a2504cd9b905c4Jeff Sharkey * limitations under the License.
15d5cdd597b895a48ffa9a8e39f8a2504cd9b905c4Jeff Sharkey */
16d5cdd597b895a48ffa9a8e39f8a2504cd9b905c4Jeff Sharkey
17d5cdd597b895a48ffa9a8e39f8a2504cd9b905c4Jeff Sharkeypackage android.net;
18d5cdd597b895a48ffa9a8e39f8a2504cd9b905c4Jeff Sharkey
19c006f1aec15454782c35e028ad64d79a5c161cc1Jeff Sharkeyimport android.net.INetworkPolicyListener;
2021c9c45e5caf62b935354b74392fb40c4bf18529Jeff Sharkeyimport android.net.NetworkPolicy;
2141ff7ec82422a5b6d00892afdb3232bc0e53d851Jeff Sharkeyimport android.net.NetworkTemplate;
22c006f1aec15454782c35e028ad64d79a5c161cc1Jeff Sharkey
23d5cdd597b895a48ffa9a8e39f8a2504cd9b905c4Jeff Sharkey/**
24d5cdd597b895a48ffa9a8e39f8a2504cd9b905c4Jeff Sharkey * Interface that creates and modifies network policy rules.
25d5cdd597b895a48ffa9a8e39f8a2504cd9b905c4Jeff Sharkey *
26d5cdd597b895a48ffa9a8e39f8a2504cd9b905c4Jeff Sharkey * {@hide}
27d5cdd597b895a48ffa9a8e39f8a2504cd9b905c4Jeff Sharkey */
28d5cdd597b895a48ffa9a8e39f8a2504cd9b905c4Jeff Sharkeyinterface INetworkPolicyManager {
29d5cdd597b895a48ffa9a8e39f8a2504cd9b905c4Jeff Sharkey
30d5cdd597b895a48ffa9a8e39f8a2504cd9b905c4Jeff Sharkey    void setUidPolicy(int uid, int policy);
31d5cdd597b895a48ffa9a8e39f8a2504cd9b905c4Jeff Sharkey    int getUidPolicy(int uid);
32d5cdd597b895a48ffa9a8e39f8a2504cd9b905c4Jeff Sharkey
339599cc5f21152860af9d18015b1398b50743da76Jeff Sharkey    boolean isUidForeground(int uid);
349599cc5f21152860af9d18015b1398b50743da76Jeff Sharkey
35c006f1aec15454782c35e028ad64d79a5c161cc1Jeff Sharkey    void registerListener(INetworkPolicyListener listener);
36c006f1aec15454782c35e028ad64d79a5c161cc1Jeff Sharkey    void unregisterListener(INetworkPolicyListener listener);
37c006f1aec15454782c35e028ad64d79a5c161cc1Jeff Sharkey
3822c055e6424e0e9579711545d8f4800c0f796db8Jeff Sharkey    void setNetworkPolicies(in NetworkPolicy[] policies);
3922c055e6424e0e9579711545d8f4800c0f796db8Jeff Sharkey    NetworkPolicy[] getNetworkPolicies();
40d5cdd597b895a48ffa9a8e39f8a2504cd9b905c4Jeff Sharkey
4141ff7ec82422a5b6d00892afdb3232bc0e53d851Jeff Sharkey    void snoozePolicy(in NetworkTemplate template);
4241ff7ec82422a5b6d00892afdb3232bc0e53d851Jeff Sharkey
43d5cdd597b895a48ffa9a8e39f8a2504cd9b905c4Jeff Sharkey}
44