1// Signature format: 4.0
2package androidx.room {
3
4  public class DatabaseConfiguration {
5    method public boolean isMigrationRequired(int, int);
6    method @Deprecated public boolean isMigrationRequiredFrom(int);
7    field public final boolean allowDestructiveMigrationOnDowngrade;
8    field public final boolean allowMainThreadQueries;
9    field public final java.util.List<androidx.room.RoomDatabase.Callback!>? callbacks;
10    field public final android.content.Context context;
11    field public final androidx.room.RoomDatabase.JournalMode! journalMode;
12    field public final androidx.room.RoomDatabase.MigrationContainer migrationContainer;
13    field public final boolean multiInstanceInvalidation;
14    field public final String? name;
15    field public final java.util.concurrent.Executor queryExecutor;
16    field public final boolean requireMigration;
17    field public final androidx.sqlite.db.SupportSQLiteOpenHelper.Factory sqliteOpenHelperFactory;
18    field public final java.util.concurrent.Executor transactionExecutor;
19  }
20
21  public class InvalidationTracker {
22    method @WorkerThread public void addObserver(androidx.room.InvalidationTracker.Observer);
23    method public void refreshVersionsAsync();
24    method @WorkerThread public void removeObserver(androidx.room.InvalidationTracker.Observer);
25  }
26
27  public abstract static class InvalidationTracker.Observer {
28    ctor protected InvalidationTracker.Observer(String, java.lang.String!...);
29    ctor public InvalidationTracker.Observer(String![]);
30    method public abstract void onInvalidated(java.util.Set<java.lang.String!>);
31  }
32
33  public class Room {
34    ctor @Deprecated public Room();
35    method public static <T extends androidx.room.RoomDatabase> androidx.room.RoomDatabase.Builder<T!> databaseBuilder(android.content.Context, Class<T!>, String);
36    method public static <T extends androidx.room.RoomDatabase> androidx.room.RoomDatabase.Builder<T!> inMemoryDatabaseBuilder(android.content.Context, Class<T!>);
37    field public static final String MASTER_TABLE_NAME = "room_master_table";
38  }
39
40  public abstract class RoomDatabase {
41    ctor public RoomDatabase();
42    method @Deprecated public void beginTransaction();
43    method @WorkerThread public abstract void clearAllTables();
44    method public void close();
45    method public androidx.sqlite.db.SupportSQLiteStatement! compileStatement(String);
46    method protected abstract androidx.room.InvalidationTracker createInvalidationTracker();
47    method protected abstract androidx.sqlite.db.SupportSQLiteOpenHelper createOpenHelper(androidx.room.DatabaseConfiguration!);
48    method @Deprecated public void endTransaction();
49    method public androidx.room.InvalidationTracker getInvalidationTracker();
50    method public androidx.sqlite.db.SupportSQLiteOpenHelper getOpenHelper();
51    method public java.util.concurrent.Executor getQueryExecutor();
52    method public java.util.concurrent.Executor getTransactionExecutor();
53    method public boolean inTransaction();
54    method @CallSuper public void init(androidx.room.DatabaseConfiguration);
55    method protected void internalInitInvalidationTracker(androidx.sqlite.db.SupportSQLiteDatabase);
56    method public boolean isOpen();
57    method public android.database.Cursor! query(androidx.sqlite.db.SupportSQLiteQuery!);
58    method public android.database.Cursor! query(String!, Object![]?);
59    method public void runInTransaction(Runnable);
60    method public <V> V! runInTransaction(java.util.concurrent.Callable<V!>);
61    method @Deprecated public void setTransactionSuccessful();
62    field @Deprecated protected java.util.List<androidx.room.RoomDatabase.Callback!>? mCallbacks;
63    field @Deprecated protected volatile androidx.sqlite.db.SupportSQLiteDatabase! mDatabase;
64  }
65
66  public static class RoomDatabase.Builder<T extends androidx.room.RoomDatabase> {
67    method public androidx.room.RoomDatabase.Builder<T!> addCallback(androidx.room.RoomDatabase.Callback);
68    method public androidx.room.RoomDatabase.Builder<T!> addMigrations(androidx.room.migration.Migration!...);
69    method public androidx.room.RoomDatabase.Builder<T!> allowMainThreadQueries();
70    method public T build();
71    method public androidx.room.RoomDatabase.Builder<T!> enableMultiInstanceInvalidation();
72    method public androidx.room.RoomDatabase.Builder<T!> fallbackToDestructiveMigration();
73    method public androidx.room.RoomDatabase.Builder<T!> fallbackToDestructiveMigrationFrom(int...);
74    method public androidx.room.RoomDatabase.Builder<T!> fallbackToDestructiveMigrationOnDowngrade();
75    method public androidx.room.RoomDatabase.Builder<T!> openHelperFactory(androidx.sqlite.db.SupportSQLiteOpenHelper.Factory?);
76    method public androidx.room.RoomDatabase.Builder<T!> setJournalMode(androidx.room.RoomDatabase.JournalMode);
77    method public androidx.room.RoomDatabase.Builder<T!> setQueryExecutor(java.util.concurrent.Executor);
78    method public androidx.room.RoomDatabase.Builder<T!> setTransactionExecutor(java.util.concurrent.Executor);
79  }
80
81  public abstract static class RoomDatabase.Callback {
82    ctor public RoomDatabase.Callback();
83    method public void onCreate(androidx.sqlite.db.SupportSQLiteDatabase);
84    method public void onOpen(androidx.sqlite.db.SupportSQLiteDatabase);
85  }
86
87  public enum RoomDatabase.JournalMode {
88    enum_constant public static final androidx.room.RoomDatabase.JournalMode AUTOMATIC;
89    enum_constant public static final androidx.room.RoomDatabase.JournalMode TRUNCATE;
90    enum_constant @RequiresApi(android.os.Build.VERSION_CODES.JELLY_BEAN) public static final androidx.room.RoomDatabase.JournalMode WRITE_AHEAD_LOGGING;
91  }
92
93  public static class RoomDatabase.MigrationContainer {
94    ctor public RoomDatabase.MigrationContainer();
95    method public void addMigrations(androidx.room.migration.Migration!...);
96    method public java.util.List<androidx.room.migration.Migration!>? findMigrationPath(int, int);
97  }
98
99}
100
101package androidx.room.migration {
102
103  public abstract class Migration {
104    ctor public Migration(int, int);
105    method public abstract void migrate(androidx.sqlite.db.SupportSQLiteDatabase);
106    field public final int endVersion;
107    field public final int startVersion;
108  }
109
110}
111
112