15da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn/* 25da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn * Copyright (C) 2013 The Android Open Source Project 35da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn * 45da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn * Licensed under the Apache License, Version 2.0 (the "License"); 55da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn * you may not use this file except in compliance with the License. 65da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn * You may obtain a copy of the License at 75da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn * 85da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn * http://www.apache.org/licenses/LICENSE-2.0 95da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn * 105da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn * Unless required by applicable law or agreed to in writing, software 115da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn * distributed under the License is distributed on an "AS IS" BASIS, 125da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 135da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn * See the License for the specific language governing permissions and 145da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn * limitations under the License. 155da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn */ 165da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn 175da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn// 185da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn#ifndef ANDROID_IAPP_OPS_CALLBACK_H 195da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn#define ANDROID_IAPP_OPS_CALLBACK_H 205da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn 215da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn#include <binder/IInterface.h> 225da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn 235da5ca520cca085528588f6067acb1c437001ef2Dianne Hackbornnamespace android { 245da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn 255da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn// ---------------------------------------------------------------------- 265da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn 275da5ca520cca085528588f6067acb1c437001ef2Dianne Hackbornclass IAppOpsCallback : public IInterface 285da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn{ 295da5ca520cca085528588f6067acb1c437001ef2Dianne Hackbornpublic: 305da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn DECLARE_META_INTERFACE(AppOpsCallback); 315da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn 325da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn virtual void opChanged(int32_t op, const String16& packageName) = 0; 335da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn 345da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn enum { 355da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn OP_CHANGED_TRANSACTION = IBinder::FIRST_CALL_TRANSACTION 365da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn }; 375da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn}; 385da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn 395da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn// ---------------------------------------------------------------------- 405da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn 415da5ca520cca085528588f6067acb1c437001ef2Dianne Hackbornclass BnAppOpsCallback : public BnInterface<IAppOpsCallback> 425da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn{ 435da5ca520cca085528588f6067acb1c437001ef2Dianne Hackbornpublic: 445da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn virtual status_t onTransact( uint32_t code, 455da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn const Parcel& data, 465da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn Parcel* reply, 475da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn uint32_t flags = 0); 485da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn}; 495da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn 505da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn// ---------------------------------------------------------------------- 515da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn 525da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn}; // namespace android 535da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn 545da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn#endif // ANDROID_IAPP_OPS_CALLBACK_H 555da5ca520cca085528588f6067acb1c437001ef2Dianne Hackborn 56