ContextWrapper.java revision 98365d7663cbd82979a5700faf0050220b01084d
19066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/*
29066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Copyright (C) 2006 The Android Open Source Project
39066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *
49066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Licensed under the Apache License, Version 2.0 (the "License");
59066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * you may not use this file except in compliance with the License.
69066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * You may obtain a copy of the License at
79066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *
89066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *      http://www.apache.org/licenses/LICENSE-2.0
99066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *
109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Unless required by applicable law or agreed to in writing, software
119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * distributed under the License is distributed on an "AS IS" BASIS,
129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * See the License for the specific language governing permissions and
149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * limitations under the License.
159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */
169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectpackage android.content;
189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
195c1e00b14d2ef10ec76abf3e951fa8003a67f558Dianne Hackbornimport android.content.pm.ApplicationInfo;
209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.content.pm.PackageManager;
219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.content.res.AssetManager;
22756220bd1912535840388a6743830d2e59ad4964Dianne Hackbornimport android.content.res.Configuration;
239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.content.res.Resources;
2474f170f9468d3cf6d7d0ef453320141a3e63571bVasu Noriimport android.database.DatabaseErrorHandler;
259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.database.sqlite.SQLiteDatabase;
269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.database.sqlite.SQLiteDatabase.CursorFactory;
279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.graphics.Bitmap;
289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.graphics.drawable.Drawable;
299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.net.Uri;
309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.os.Bundle;
319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.os.Handler;
329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.os.Looper;
3379af1dd54c16cde063152922b42c96d72ae9eca8Dianne Hackbornimport android.os.UserHandle;
3498365d7663cbd82979a5700faf0050220b01084dJeff Brownimport android.view.CompatibilityInfoHolder;
359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport java.io.File;
379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport java.io.FileInputStream;
389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport java.io.FileNotFoundException;
399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport java.io.FileOutputStream;
409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport java.io.IOException;
419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport java.io.InputStream;
429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/**
449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Proxying implementation of Context that simply delegates all of its calls to
459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * another Context.  Can be subclassed to modify behavior without changing
469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * the original Context.
479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */
489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectpublic class ContextWrapper extends Context {
499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    Context mBase;
509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public ContextWrapper(Context base) {
529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        mBase = base;
539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    /**
569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project     * Set the base context for this ContextWrapper.  All calls will then be
579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project     * delegated to the base context.  Throws
589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project     * IllegalStateException if a base context has already been set.
599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project     *
609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project     * @param base The new base context for this wrapper.
619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project     */
629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    protected void attachBaseContext(Context base) {
639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        if (mBase != null) {
649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project            throw new IllegalStateException("Base context already set");
659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        }
669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        mBase = base;
679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    /**
709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project     * @return the base context as set by the constructor or setBaseContext
719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project     */
729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public Context getBaseContext() {
739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase;
749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public AssetManager getAssets() {
789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.getAssets();
799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public Resources getResources()
839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    {
849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.getResources();
859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public PackageManager getPackageManager() {
899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.getPackageManager();
909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public ContentResolver getContentResolver() {
949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.getContentResolver();
959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public Looper getMainLooper() {
999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.getMainLooper();
1009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
1019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
1029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
1039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public Context getApplicationContext() {
1049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.getApplicationContext();
1059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
1069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
1079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
1089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public void setTheme(int resid) {
1099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        mBase.setTheme(resid);
1109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
1119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
112247fe74c934cb3fba85aae7e051a8044f460fb11Dianne Hackborn    /** @hide */
113247fe74c934cb3fba85aae7e051a8044f460fb11Dianne Hackborn    @Override
114247fe74c934cb3fba85aae7e051a8044f460fb11Dianne Hackborn    public int getThemeResId() {
115247fe74c934cb3fba85aae7e051a8044f460fb11Dianne Hackborn        return mBase.getThemeResId();
116247fe74c934cb3fba85aae7e051a8044f460fb11Dianne Hackborn    }
117247fe74c934cb3fba85aae7e051a8044f460fb11Dianne Hackborn
1189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
1199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public Resources.Theme getTheme() {
1209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.getTheme();
1219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
1229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
1239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
1249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public ClassLoader getClassLoader() {
1259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.getClassLoader();
1269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
1279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
1289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
1299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public String getPackageName() {
1309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.getPackageName();
1319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
1329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
1339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
1345c1e00b14d2ef10ec76abf3e951fa8003a67f558Dianne Hackborn    public ApplicationInfo getApplicationInfo() {
1355c1e00b14d2ef10ec76abf3e951fa8003a67f558Dianne Hackborn        return mBase.getApplicationInfo();
1365c1e00b14d2ef10ec76abf3e951fa8003a67f558Dianne Hackborn    }
1375c1e00b14d2ef10ec76abf3e951fa8003a67f558Dianne Hackborn
1385c1e00b14d2ef10ec76abf3e951fa8003a67f558Dianne Hackborn    @Override
1399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public String getPackageResourcePath() {
1409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.getPackageResourcePath();
1419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
1429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
1439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
1449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public String getPackageCodePath() {
1459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.getPackageCodePath();
1469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
1479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
1487f2054392e9957d3ba8579ef08c29cfb27df564eDianne Hackborn    /** @hide */
1499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
15023ecae3bbb60c5af940f3a22170d75eb6ac05b69Joe Onorato    public File getSharedPrefsFile(String name) {
15123ecae3bbb60c5af940f3a22170d75eb6ac05b69Joe Onorato        return mBase.getSharedPrefsFile(name);
15223ecae3bbb60c5af940f3a22170d75eb6ac05b69Joe Onorato    }
15323ecae3bbb60c5af940f3a22170d75eb6ac05b69Joe Onorato
15423ecae3bbb60c5af940f3a22170d75eb6ac05b69Joe Onorato    @Override
1559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public SharedPreferences getSharedPreferences(String name, int mode) {
1569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.getSharedPreferences(name, mode);
1579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
1589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
1599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
1609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public FileInputStream openFileInput(String name)
1619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        throws FileNotFoundException {
1629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.openFileInput(name);
1639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
1649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
1659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
1669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public FileOutputStream openFileOutput(String name, int mode)
1679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        throws FileNotFoundException {
1689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.openFileOutput(name, mode);
1699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
1709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
1719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
1729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public boolean deleteFile(String name) {
1739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.deleteFile(name);
1749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
1759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
1769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
1779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public File getFileStreamPath(String name) {
1789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.getFileStreamPath(name);
1799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
1809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
1819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
1829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public String[] fileList() {
1839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.fileList();
1849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
1859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
1869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
1879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public File getFilesDir() {
1889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.getFilesDir();
1899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
1909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
1919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
192e83cefcef07f9ac025642c1ffec76b4c7ab39cf2Dianne Hackborn    public File getExternalFilesDir(String type) {
193e83cefcef07f9ac025642c1ffec76b4c7ab39cf2Dianne Hackborn        return mBase.getExternalFilesDir(type);
194e83cefcef07f9ac025642c1ffec76b4c7ab39cf2Dianne Hackborn    }
195e83cefcef07f9ac025642c1ffec76b4c7ab39cf2Dianne Hackborn
196e83cefcef07f9ac025642c1ffec76b4c7ab39cf2Dianne Hackborn    @Override
197805fd7ee0e5dc2939e85c84f78d9890a51982bc0Dianne Hackborn    public File getObbDir() {
198805fd7ee0e5dc2939e85c84f78d9890a51982bc0Dianne Hackborn        return mBase.getObbDir();
199805fd7ee0e5dc2939e85c84f78d9890a51982bc0Dianne Hackborn    }
200805fd7ee0e5dc2939e85c84f78d9890a51982bc0Dianne Hackborn
201805fd7ee0e5dc2939e85c84f78d9890a51982bc0Dianne Hackborn    @Override
2029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public File getCacheDir() {
2039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.getCacheDir();
2049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
2059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
2069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
207e83cefcef07f9ac025642c1ffec76b4c7ab39cf2Dianne Hackborn    public File getExternalCacheDir() {
208e83cefcef07f9ac025642c1ffec76b4c7ab39cf2Dianne Hackborn        return mBase.getExternalCacheDir();
209e83cefcef07f9ac025642c1ffec76b4c7ab39cf2Dianne Hackborn    }
210e83cefcef07f9ac025642c1ffec76b4c7ab39cf2Dianne Hackborn
211e83cefcef07f9ac025642c1ffec76b4c7ab39cf2Dianne Hackborn    @Override
2129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public File getDir(String name, int mode) {
2139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.getDir(name, mode);
2149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
2159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
2169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
2179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public SQLiteDatabase openOrCreateDatabase(String name, int mode, CursorFactory factory) {
2189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.openOrCreateDatabase(name, mode, factory);
2199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
2209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
2219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
22274f170f9468d3cf6d7d0ef453320141a3e63571bVasu Nori    public SQLiteDatabase openOrCreateDatabase(String name, int mode, CursorFactory factory,
22374f170f9468d3cf6d7d0ef453320141a3e63571bVasu Nori            DatabaseErrorHandler errorHandler) {
22474f170f9468d3cf6d7d0ef453320141a3e63571bVasu Nori        return mBase.openOrCreateDatabase(name, mode, factory, errorHandler);
22574f170f9468d3cf6d7d0ef453320141a3e63571bVasu Nori    }
22674f170f9468d3cf6d7d0ef453320141a3e63571bVasu Nori
22774f170f9468d3cf6d7d0ef453320141a3e63571bVasu Nori    @Override
2289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public boolean deleteDatabase(String name) {
2299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.deleteDatabase(name);
2309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
2319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
2329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
2339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public File getDatabasePath(String name) {
2349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.getDatabasePath(name);
2359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
2369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
2379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
2389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public String[] databaseList() {
2399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.databaseList();
2409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
2419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
2429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
2439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public Drawable getWallpaper() {
2449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.getWallpaper();
2459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
2469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
2479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
2489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public Drawable peekWallpaper() {
2499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.peekWallpaper();
2509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
2519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
2529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
2539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public int getWallpaperDesiredMinimumWidth() {
2549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.getWallpaperDesiredMinimumWidth();
2559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
2569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
2579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
2589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public int getWallpaperDesiredMinimumHeight() {
2599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.getWallpaperDesiredMinimumHeight();
2609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
2619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
2629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
2639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public void setWallpaper(Bitmap bitmap) throws IOException {
2649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        mBase.setWallpaper(bitmap);
2659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
2669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
2679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
2689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public void setWallpaper(InputStream data) throws IOException {
2699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        mBase.setWallpaper(data);
2709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
2719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
2729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
2739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public void clearWallpaper() throws IOException {
2749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        mBase.clearWallpaper();
2759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
2769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
2779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
2789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public void startActivity(Intent intent) {
2799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        mBase.startActivity(intent);
2809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
2819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
2828264408f5995534f8e3147b001664ea0df52aaa5Amith Yamasani    /** @hide */
2838264408f5995534f8e3147b001664ea0df52aaa5Amith Yamasani    @Override
28479af1dd54c16cde063152922b42c96d72ae9eca8Dianne Hackborn    public void startActivityAsUser(Intent intent, UserHandle user) {
28579af1dd54c16cde063152922b42c96d72ae9eca8Dianne Hackborn        mBase.startActivityAsUser(intent, user);
2868264408f5995534f8e3147b001664ea0df52aaa5Amith Yamasani    }
2878264408f5995534f8e3147b001664ea0df52aaa5Amith Yamasani
2889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
289a4972e951bf2bdb7afdafee95b3ab0c15b8bacaeDianne Hackborn    public void startActivity(Intent intent, Bundle options) {
290a4972e951bf2bdb7afdafee95b3ab0c15b8bacaeDianne Hackborn        mBase.startActivity(intent, options);
291a4972e951bf2bdb7afdafee95b3ab0c15b8bacaeDianne Hackborn    }
292a4972e951bf2bdb7afdafee95b3ab0c15b8bacaeDianne Hackborn
293258848d2ae04f447ff1c18023fa76b139fcc0862Amith Yamasani    /** @hide */
294258848d2ae04f447ff1c18023fa76b139fcc0862Amith Yamasani    @Override
29579af1dd54c16cde063152922b42c96d72ae9eca8Dianne Hackborn    public void startActivityAsUser(Intent intent, Bundle options, UserHandle user) {
29679af1dd54c16cde063152922b42c96d72ae9eca8Dianne Hackborn        mBase.startActivityAsUser(intent, options, user);
297258848d2ae04f447ff1c18023fa76b139fcc0862Amith Yamasani    }
298258848d2ae04f447ff1c18023fa76b139fcc0862Amith Yamasani
299a4972e951bf2bdb7afdafee95b3ab0c15b8bacaeDianne Hackborn    @Override
300621e17de87f18003aba2dedb719a2941020a7902Dianne Hackborn    public void startActivities(Intent[] intents) {
301621e17de87f18003aba2dedb719a2941020a7902Dianne Hackborn        mBase.startActivities(intents);
302621e17de87f18003aba2dedb719a2941020a7902Dianne Hackborn    }
303621e17de87f18003aba2dedb719a2941020a7902Dianne Hackborn
304621e17de87f18003aba2dedb719a2941020a7902Dianne Hackborn    @Override
305a4972e951bf2bdb7afdafee95b3ab0c15b8bacaeDianne Hackborn    public void startActivities(Intent[] intents, Bundle options) {
306a4972e951bf2bdb7afdafee95b3ab0c15b8bacaeDianne Hackborn        mBase.startActivities(intents, options);
307a4972e951bf2bdb7afdafee95b3ab0c15b8bacaeDianne Hackborn    }
308a4972e951bf2bdb7afdafee95b3ab0c15b8bacaeDianne Hackborn
309a4972e951bf2bdb7afdafee95b3ab0c15b8bacaeDianne Hackborn    @Override
310fa82f22f1d8c4c828bdf9b670006be4f4fec772eDianne Hackborn    public void startIntentSender(IntentSender intent,
311fa82f22f1d8c4c828bdf9b670006be4f4fec772eDianne Hackborn            Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags)
312fa82f22f1d8c4c828bdf9b670006be4f4fec772eDianne Hackborn            throws IntentSender.SendIntentException {
313fa82f22f1d8c4c828bdf9b670006be4f4fec772eDianne Hackborn        mBase.startIntentSender(intent, fillInIntent, flagsMask,
314fa82f22f1d8c4c828bdf9b670006be4f4fec772eDianne Hackborn                flagsValues, extraFlags);
315fa82f22f1d8c4c828bdf9b670006be4f4fec772eDianne Hackborn    }
316a4972e951bf2bdb7afdafee95b3ab0c15b8bacaeDianne Hackborn
317a4972e951bf2bdb7afdafee95b3ab0c15b8bacaeDianne Hackborn    @Override
318a4972e951bf2bdb7afdafee95b3ab0c15b8bacaeDianne Hackborn    public void startIntentSender(IntentSender intent,
319a4972e951bf2bdb7afdafee95b3ab0c15b8bacaeDianne Hackborn            Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags,
320a4972e951bf2bdb7afdafee95b3ab0c15b8bacaeDianne Hackborn            Bundle options) throws IntentSender.SendIntentException {
321a4972e951bf2bdb7afdafee95b3ab0c15b8bacaeDianne Hackborn        mBase.startIntentSender(intent, fillInIntent, flagsMask,
322a4972e951bf2bdb7afdafee95b3ab0c15b8bacaeDianne Hackborn                flagsValues, extraFlags, options);
323a4972e951bf2bdb7afdafee95b3ab0c15b8bacaeDianne Hackborn    }
324fa82f22f1d8c4c828bdf9b670006be4f4fec772eDianne Hackborn
325fa82f22f1d8c4c828bdf9b670006be4f4fec772eDianne Hackborn    @Override
3269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public void sendBroadcast(Intent intent) {
3279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        mBase.sendBroadcast(intent);
3289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
3299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
33067cf7d314b5b94db1a9f1c57140b6615b0ea8291Amith Yamasani    @Override
3319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public void sendBroadcast(Intent intent, String receiverPermission) {
3329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        mBase.sendBroadcast(intent, receiverPermission);
3339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
3349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
3359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
3369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public void sendOrderedBroadcast(Intent intent,
3379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project            String receiverPermission) {
3389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        mBase.sendOrderedBroadcast(intent, receiverPermission);
3399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
3409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
3419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
3429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public void sendOrderedBroadcast(
3439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        Intent intent, String receiverPermission, BroadcastReceiver resultReceiver,
3449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        Handler scheduler, int initialCode, String initialData,
3459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        Bundle initialExtras) {
3469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        mBase.sendOrderedBroadcast(intent, receiverPermission,
3479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project                resultReceiver, scheduler, initialCode,
3489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project                initialData, initialExtras);
3499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
3509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
3519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
35279af1dd54c16cde063152922b42c96d72ae9eca8Dianne Hackborn    public void sendBroadcastAsUser(Intent intent, UserHandle user) {
35379af1dd54c16cde063152922b42c96d72ae9eca8Dianne Hackborn        mBase.sendBroadcastAsUser(intent, user);
3547d19e0242faac8017033dabb872cdf1542fa184cDianne Hackborn    }
3557d19e0242faac8017033dabb872cdf1542fa184cDianne Hackborn
3567d19e0242faac8017033dabb872cdf1542fa184cDianne Hackborn    @Override
35779af1dd54c16cde063152922b42c96d72ae9eca8Dianne Hackborn    public void sendOrderedBroadcastAsUser(Intent intent, UserHandle user,
3587d19e0242faac8017033dabb872cdf1542fa184cDianne Hackborn            BroadcastReceiver resultReceiver, Handler scheduler,
3597d19e0242faac8017033dabb872cdf1542fa184cDianne Hackborn            int initialCode, String initialData, Bundle initialExtras) {
36079af1dd54c16cde063152922b42c96d72ae9eca8Dianne Hackborn        mBase.sendOrderedBroadcastAsUser(intent, user, resultReceiver,
3617d19e0242faac8017033dabb872cdf1542fa184cDianne Hackborn                scheduler, initialCode, initialData, initialExtras);
3627d19e0242faac8017033dabb872cdf1542fa184cDianne Hackborn    }
3637d19e0242faac8017033dabb872cdf1542fa184cDianne Hackborn
3647d19e0242faac8017033dabb872cdf1542fa184cDianne Hackborn    @Override
3659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public void sendStickyBroadcast(Intent intent) {
3669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        mBase.sendStickyBroadcast(intent);
3679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
3689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
3699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
370efa199f016985b0a9d0471e42c803ee9f7941f0eDianne Hackborn    public void sendStickyOrderedBroadcast(
371efa199f016985b0a9d0471e42c803ee9f7941f0eDianne Hackborn        Intent intent, BroadcastReceiver resultReceiver,
372efa199f016985b0a9d0471e42c803ee9f7941f0eDianne Hackborn        Handler scheduler, int initialCode, String initialData,
373efa199f016985b0a9d0471e42c803ee9f7941f0eDianne Hackborn        Bundle initialExtras) {
374efa199f016985b0a9d0471e42c803ee9f7941f0eDianne Hackborn        mBase.sendStickyOrderedBroadcast(intent,
375efa199f016985b0a9d0471e42c803ee9f7941f0eDianne Hackborn                resultReceiver, scheduler, initialCode,
376efa199f016985b0a9d0471e42c803ee9f7941f0eDianne Hackborn                initialData, initialExtras);
377efa199f016985b0a9d0471e42c803ee9f7941f0eDianne Hackborn    }
378efa199f016985b0a9d0471e42c803ee9f7941f0eDianne Hackborn
379efa199f016985b0a9d0471e42c803ee9f7941f0eDianne Hackborn    @Override
3809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public void removeStickyBroadcast(Intent intent) {
3819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        mBase.removeStickyBroadcast(intent);
3829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
3839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
3849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
3859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public Intent registerReceiver(
3869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        BroadcastReceiver receiver, IntentFilter filter) {
3879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.registerReceiver(receiver, filter);
3889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
3899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
3909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
3919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public Intent registerReceiver(
3929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        BroadcastReceiver receiver, IntentFilter filter,
3939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        String broadcastPermission, Handler scheduler) {
3949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.registerReceiver(receiver, filter, broadcastPermission,
3959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project                scheduler);
3969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
3979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
3989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
3999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public void unregisterReceiver(BroadcastReceiver receiver) {
4009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        mBase.unregisterReceiver(receiver);
4019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
4029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
4039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
4049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public ComponentName startService(Intent service) {
4059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.startService(service);
4069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
4079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
4089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
4099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public boolean stopService(Intent name) {
4109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.stopService(name);
4119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
4129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
4139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
4149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public boolean bindService(Intent service, ServiceConnection conn,
4159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project            int flags) {
4169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.bindService(service, conn, flags);
4179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
4189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
41937ce3a8af6faab675319d0803b288ab1dddc76beAmith Yamasani    /** @hide */
42037ce3a8af6faab675319d0803b288ab1dddc76beAmith Yamasani    @Override
4217d19e0242faac8017033dabb872cdf1542fa184cDianne Hackborn    public boolean bindService(Intent service, ServiceConnection conn, int flags, int userHandle) {
4227d19e0242faac8017033dabb872cdf1542fa184cDianne Hackborn        return mBase.bindService(service, conn, flags, userHandle);
42337ce3a8af6faab675319d0803b288ab1dddc76beAmith Yamasani    }
42437ce3a8af6faab675319d0803b288ab1dddc76beAmith Yamasani
4259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
4269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public void unbindService(ServiceConnection conn) {
4279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        mBase.unbindService(conn);
4289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
4299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
4309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
4319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public boolean startInstrumentation(ComponentName className,
4329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project            String profileFile, Bundle arguments) {
4339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.startInstrumentation(className, profileFile, arguments);
4349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
4359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
4369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
4379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public Object getSystemService(String name) {
4389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.getSystemService(name);
4399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
4409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
4419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
4429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public int checkPermission(String permission, int pid, int uid) {
4439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.checkPermission(permission, pid, uid);
4449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
4459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
4469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
4479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public int checkCallingPermission(String permission) {
4489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.checkCallingPermission(permission);
4499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
4509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
4519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
4529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public int checkCallingOrSelfPermission(String permission) {
4539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.checkCallingOrSelfPermission(permission);
4549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
4559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
4569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
4579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public void enforcePermission(
4589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project            String permission, int pid, int uid, String message) {
4599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        mBase.enforcePermission(permission, pid, uid, message);
4609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
4619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
4629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
4639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public void enforceCallingPermission(String permission, String message) {
4649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        mBase.enforceCallingPermission(permission, message);
4659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
4669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
4679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
4689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public void enforceCallingOrSelfPermission(
4699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project            String permission, String message) {
4709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        mBase.enforceCallingOrSelfPermission(permission, message);
4719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
4729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
4739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
4749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public void grantUriPermission(String toPackage, Uri uri, int modeFlags) {
4759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        mBase.grantUriPermission(toPackage, uri, modeFlags);
4769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
4779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
4789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
4799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public void revokeUriPermission(Uri uri, int modeFlags) {
4809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        mBase.revokeUriPermission(uri, modeFlags);
4819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
4829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
4839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
4849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public int checkUriPermission(Uri uri, int pid, int uid, int modeFlags) {
4859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.checkUriPermission(uri, pid, uid, modeFlags);
4869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
4879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
4889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
4899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public int checkCallingUriPermission(Uri uri, int modeFlags) {
4909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.checkCallingUriPermission(uri, modeFlags);
4919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
4929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
4939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
4949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public int checkCallingOrSelfUriPermission(Uri uri, int modeFlags) {
4959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.checkCallingOrSelfUriPermission(uri, modeFlags);
4969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
4979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
4989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
4999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public int checkUriPermission(Uri uri, String readPermission,
5009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project            String writePermission, int pid, int uid, int modeFlags) {
5019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.checkUriPermission(uri, readPermission, writePermission,
5029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project                pid, uid, modeFlags);
5039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
5049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
5059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
5069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public void enforceUriPermission(
5079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project            Uri uri, int pid, int uid, int modeFlags, String message) {
5089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        mBase.enforceUriPermission(uri, pid, uid, modeFlags, message);
5099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
5109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
5119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
5129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public void enforceCallingUriPermission(
5139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project            Uri uri, int modeFlags, String message) {
5149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        mBase.enforceCallingUriPermission(uri, modeFlags, message);
5159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
5169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
5179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
5189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public void enforceCallingOrSelfUriPermission(
5199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project            Uri uri, int modeFlags, String message) {
5209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        mBase.enforceCallingOrSelfUriPermission(uri, modeFlags, message);
5219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
5229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
5239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
5249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public void enforceUriPermission(
5259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project            Uri uri, String readPermission, String writePermission,
5269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project            int pid, int uid, int modeFlags, String message) {
5279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        mBase.enforceUriPermission(
5289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project                uri, readPermission, writePermission, pid, uid, modeFlags,
5299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project                message);
5309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
5319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
5329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    @Override
5339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public Context createPackageContext(String packageName, int flags)
5349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        throws PackageManager.NameNotFoundException {
5359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return mBase.createPackageContext(packageName, flags);
5369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
537870e09fcd2dfdc12ac318962efd28b0420c562bbRomain Guy
538870e09fcd2dfdc12ac318962efd28b0420c562bbRomain Guy    @Override
539756220bd1912535840388a6743830d2e59ad4964Dianne Hackborn    public Context createConfigurationContext(Configuration overrideConfiguration) {
540756220bd1912535840388a6743830d2e59ad4964Dianne Hackborn        return mBase.createConfigurationContext(overrideConfiguration);
541756220bd1912535840388a6743830d2e59ad4964Dianne Hackborn    }
542756220bd1912535840388a6743830d2e59ad4964Dianne Hackborn
543756220bd1912535840388a6743830d2e59ad4964Dianne Hackborn    @Override
544870e09fcd2dfdc12ac318962efd28b0420c562bbRomain Guy    public boolean isRestricted() {
545870e09fcd2dfdc12ac318962efd28b0420c562bbRomain Guy        return mBase.isRestricted();
546870e09fcd2dfdc12ac318962efd28b0420c562bbRomain Guy    }
54798365d7663cbd82979a5700faf0050220b01084dJeff Brown
54898365d7663cbd82979a5700faf0050220b01084dJeff Brown    /** @hide */
54998365d7663cbd82979a5700faf0050220b01084dJeff Brown    @Override
55098365d7663cbd82979a5700faf0050220b01084dJeff Brown    public CompatibilityInfoHolder getCompatibilityInfo() {
55198365d7663cbd82979a5700faf0050220b01084dJeff Brown        return mBase.getCompatibilityInfo();
55298365d7663cbd82979a5700faf0050220b01084dJeff Brown    }
5539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project}
554