1282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski/* 2282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski * Copyright (C) 2010 The Android Open Source Project 3282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski * 4282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski * Licensed under the Apache License, Version 2.0 (the "License"); 5282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski * you may not use this file except in compliance with the License. 6282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski * You may obtain a copy of the License at 7282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski * 8282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski * http://www.apache.org/licenses/LICENSE-2.0 9282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski * 10282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski * Unless required by applicable law or agreed to in writing, software 11282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski * distributed under the License is distributed on an "AS IS" BASIS, 12282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski * See the License for the specific language governing permissions and 14282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski * limitations under the License. 15282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski */ 16282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski 17282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinskipackage com.android.layoutlib.bridge.android; 18282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski 19282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinskiimport android.content.ContentProviderOperation; 20282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinskiimport android.content.ContentProviderResult; 21282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinskiimport android.content.ContentValues; 22282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinskiimport android.content.IContentProvider; 23282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinskiimport android.content.OperationApplicationException; 24282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinskiimport android.content.res.AssetFileDescriptor; 25282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinskiimport android.database.Cursor; 26282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinskiimport android.net.Uri; 27282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinskiimport android.os.Bundle; 28282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinskiimport android.os.IBinder; 29282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinskiimport android.os.ICancellationSignal; 30282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinskiimport android.os.ParcelFileDescriptor; 31282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinskiimport android.os.RemoteException; 32282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski 33282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinskiimport java.io.FileNotFoundException; 34282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinskiimport java.util.ArrayList; 35282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski 36282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski/** 37282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski * Mock implementation of {@link IContentProvider}. 38282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski * 39282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski * TODO: never return null when the method is not supposed to. Return fake data instead. 40282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski */ 41282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinskipublic final class BridgeContentProvider implements IContentProvider { 42282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski @Override 43282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski public ContentProviderResult[] applyBatch(String callingPackage, 44282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski ArrayList<ContentProviderOperation> arg0) 45282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski throws RemoteException, OperationApplicationException { 46282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski // TODO Auto-generated method stub 47282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski return null; 48282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski } 49282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski 50282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski @Override 51282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski public int bulkInsert(String callingPackage, Uri arg0, ContentValues[] arg1) 52282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski throws RemoteException { 53282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski // TODO Auto-generated method stub 54282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski return 0; 55282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski } 56282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski 57282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski @Override 58282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski public Bundle call(String callingPackage, String arg0, String arg1, Bundle arg2) 59282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski throws RemoteException { 60282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski // TODO Auto-generated method stub 61282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski return null; 62282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski } 63282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski 64282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski @Override 65282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski public int delete(String callingPackage, Uri arg0, String arg1, String[] arg2) 66282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski throws RemoteException { 67282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski // TODO Auto-generated method stub 68282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski return 0; 69282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski } 70282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski 71282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski @Override 72282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski public String getType(Uri arg0) throws RemoteException { 73282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski // TODO Auto-generated method stub 74282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski return null; 75282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski } 76282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski 77282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski @Override 78282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski public Uri insert(String callingPackage, Uri arg0, ContentValues arg1) throws RemoteException { 79282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski // TODO Auto-generated method stub 80282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski return null; 81282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski } 82282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski 83282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski @Override 84282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski public AssetFileDescriptor openAssetFile( 85282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski String callingPackage, Uri arg0, String arg1, ICancellationSignal signal) 86282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski throws RemoteException, FileNotFoundException { 87282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski // TODO Auto-generated method stub 88282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski return null; 89282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski } 90282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski 91282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski @Override 92282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski public ParcelFileDescriptor openFile( 93ff17024e583b170312d82089fd358d278ce16c9aDianne Hackborn String callingPackage, Uri arg0, String arg1, ICancellationSignal signal, IBinder token) 94282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski throws RemoteException, FileNotFoundException { 95282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski // TODO Auto-generated method stub 96282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski return null; 97282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski } 98282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski 99282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski @Override 100282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski public Cursor query(String callingPackage, Uri arg0, String[] arg1, String arg2, String[] arg3, 101282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski String arg4, ICancellationSignal arg5) throws RemoteException { 102282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski // TODO Auto-generated method stub 103282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski return null; 104282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski } 105282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski 106282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski @Override 107282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski public int update(String callingPackage, Uri arg0, ContentValues arg1, String arg2, 108282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski String[] arg3) throws RemoteException { 109282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski // TODO Auto-generated method stub 110282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski return 0; 111282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski } 112282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski 113282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski @Override 114282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski public IBinder asBinder() { 115282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski // TODO Auto-generated method stub 116282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski return null; 117282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski } 118282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski 119282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski @Override 120282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski public String[] getStreamTypes(Uri arg0, String arg1) throws RemoteException { 121282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski // TODO Auto-generated method stub 122282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski return null; 123282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski } 124282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski 125282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski @Override 126282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski public AssetFileDescriptor openTypedAssetFile(String callingPackage, Uri arg0, String arg1, 127282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski Bundle arg2, ICancellationSignal signal) throws RemoteException, FileNotFoundException { 128282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski // TODO Auto-generated method stub 129282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski return null; 130282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski } 131282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski 132282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski @Override 133282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski public ICancellationSignal createCancellationSignal() throws RemoteException { 134282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski // TODO Auto-generated method stub 135282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski return null; 136282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski } 137f6ee5fa3e2219e6c6ea56c4bdb7b5df528d336c4Narayan Kamath 138f6ee5fa3e2219e6c6ea56c4bdb7b5df528d336c4Narayan Kamath 139f6ee5fa3e2219e6c6ea56c4bdb7b5df528d336c4Narayan Kamath @Override 140f6ee5fa3e2219e6c6ea56c4bdb7b5df528d336c4Narayan Kamath public Uri canonicalize(String callingPkg, Uri uri) throws RemoteException { 141f6ee5fa3e2219e6c6ea56c4bdb7b5df528d336c4Narayan Kamath return null; 142f6ee5fa3e2219e6c6ea56c4bdb7b5df528d336c4Narayan Kamath } 143f6ee5fa3e2219e6c6ea56c4bdb7b5df528d336c4Narayan Kamath 144f6ee5fa3e2219e6c6ea56c4bdb7b5df528d336c4Narayan Kamath @Override 145f6ee5fa3e2219e6c6ea56c4bdb7b5df528d336c4Narayan Kamath public Uri uncanonicalize(String callingPkg, Uri uri) throws RemoteException { 146f6ee5fa3e2219e6c6ea56c4bdb7b5df528d336c4Narayan Kamath return null; 147f6ee5fa3e2219e6c6ea56c4bdb7b5df528d336c4Narayan Kamath } 148282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski} 149