You've already forked android_translation_layer
mirror of
https://gitlab.com/android_translation_layer/android_translation_layer.git
synced 2025-10-27 11:48:10 -07:00
52 lines
1.7 KiB
Java
52 lines
1.7 KiB
Java
package android.content;
|
|
|
|
import java.io.FileNotFoundException;
|
|
import java.util.HashMap;
|
|
import java.util.Map;
|
|
|
|
import android.content.pm.PackageParser;
|
|
import android.content.pm.ProviderInfo;
|
|
import android.database.Cursor;
|
|
import android.net.Uri;
|
|
import android.os.ParcelFileDescriptor;
|
|
|
|
public abstract class ContentProvider {
|
|
|
|
static Map<String, ContentProvider> providers = new HashMap<String, ContentProvider>();
|
|
|
|
static void createContentProviders() {
|
|
for (PackageParser.Provider provider_parsed : Context.pkg.providers) {
|
|
try {
|
|
String providerName = provider_parsed.className;
|
|
System.out.println("creating " + providerName);
|
|
Class<? extends ContentProvider> providerCls = Class.forName(providerName).asSubclass(ContentProvider.class);
|
|
ContentProvider provider = providerCls.getConstructor().newInstance();
|
|
provider.attachInfo(Context.this_application, provider_parsed.info);
|
|
provider.onCreate();
|
|
providers.put(provider_parsed.info.authority, provider);
|
|
} catch(Exception e) { e.printStackTrace(); }
|
|
}
|
|
}
|
|
|
|
public boolean onCreate() {return false;}
|
|
|
|
public Context getContext() {
|
|
return Context.this_application;
|
|
}
|
|
|
|
public abstract Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder);
|
|
|
|
public abstract Uri insert(Uri uri, ContentValues values);
|
|
|
|
public abstract int update(Uri uri, ContentValues values, String selection, String[] selectionArgs);
|
|
|
|
public abstract int delete(Uri uri, String selection, String[] selectionArgs);
|
|
|
|
public abstract String getType(Uri uri);
|
|
|
|
public abstract ParcelFileDescriptor openFile(Uri uri, String mode) throws FileNotFoundException;
|
|
|
|
public void attachInfo(Context context, ProviderInfo provider) {}
|
|
|
|
}
|