1// Signature format: 4.0 2package androidx.room { 3 4 @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public final class CoroutinesRoom { 5 method @Deprecated public static <R> kotlinx.coroutines.flow.Flow<R> createFlow(androidx.room.RoomDatabase db, boolean inTransaction, String[] tableNames, java.util.concurrent.Callable<R> callable); 6 method @Deprecated public static suspend <R> Object? execute(androidx.room.RoomDatabase db, boolean inTransaction, android.os.CancellationSignal? cancellationSignal, java.util.concurrent.Callable<R> callable, kotlin.coroutines.Continuation<? super R>); 7 method @Deprecated public static suspend <R> Object? execute(androidx.room.RoomDatabase db, boolean inTransaction, java.util.concurrent.Callable<R> callable, kotlin.coroutines.Continuation<? super R>); 8 field public static final androidx.room.CoroutinesRoom.Companion Companion; 9 } 10 11 public static final class CoroutinesRoom.Companion { 12 method @Deprecated public <R> kotlinx.coroutines.flow.Flow<R> createFlow(androidx.room.RoomDatabase db, boolean inTransaction, String[] tableNames, java.util.concurrent.Callable<R> callable); 13 method @Deprecated public suspend <R> Object? execute(androidx.room.RoomDatabase db, boolean inTransaction, android.os.CancellationSignal? cancellationSignal, java.util.concurrent.Callable<R> callable, kotlin.coroutines.Continuation<? super R>); 14 method @Deprecated public suspend <R> Object? execute(androidx.room.RoomDatabase db, boolean inTransaction, java.util.concurrent.Callable<R> callable, kotlin.coroutines.Continuation<? super R>); 15 } 16 17 public class DatabaseConfiguration { 18 ctor @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public DatabaseConfiguration(android.content.Context context, String? name, androidx.sqlite.db.SupportSQLiteOpenHelper.Factory sqliteOpenHelperFactory, androidx.room.RoomDatabase.MigrationContainer migrationContainer, java.util.List<? extends androidx.room.RoomDatabase.Callback>? callbacks, boolean allowMainThreadQueries, androidx.room.RoomDatabase.JournalMode journalMode, java.util.concurrent.Executor queryExecutor, boolean requireMigration, java.util.Set<java.lang.Integer>? migrationNotRequiredFrom); 19 ctor @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public DatabaseConfiguration(android.content.Context context, String? name, androidx.sqlite.db.SupportSQLiteOpenHelper.Factory sqliteOpenHelperFactory, androidx.room.RoomDatabase.MigrationContainer migrationContainer, java.util.List<? extends androidx.room.RoomDatabase.Callback>? callbacks, boolean allowMainThreadQueries, androidx.room.RoomDatabase.JournalMode journalMode, java.util.concurrent.Executor queryExecutor, java.util.concurrent.Executor transactionExecutor, android.content.Intent? multiInstanceInvalidationServiceIntent, boolean requireMigration, boolean allowDestructiveMigrationOnDowngrade, java.util.Set<java.lang.Integer>? migrationNotRequiredFrom, String? copyFromAssetPath, java.io.File? copyFromFile, java.util.concurrent.Callable<java.io.InputStream>? copyFromInputStream, androidx.room.RoomDatabase.PrepackagedDatabaseCallback? prepackagedDatabaseCallback, java.util.List<?> typeConverters, java.util.List<? extends androidx.room.migration.AutoMigrationSpec> autoMigrationSpecs); 20 ctor @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public DatabaseConfiguration(android.content.Context context, String? name, androidx.sqlite.db.SupportSQLiteOpenHelper.Factory sqliteOpenHelperFactory, androidx.room.RoomDatabase.MigrationContainer migrationContainer, java.util.List<? extends androidx.room.RoomDatabase.Callback>? callbacks, boolean allowMainThreadQueries, androidx.room.RoomDatabase.JournalMode journalMode, java.util.concurrent.Executor queryExecutor, java.util.concurrent.Executor transactionExecutor, android.content.Intent? multiInstanceInvalidationServiceIntent, boolean requireMigration, boolean allowDestructiveMigrationOnDowngrade, java.util.Set<java.lang.Integer>? migrationNotRequiredFrom, String? copyFromAssetPath, java.io.File? copyFromFile, java.util.concurrent.Callable<java.io.InputStream>? copyFromInputStream, androidx.room.RoomDatabase.PrepackagedDatabaseCallback? prepackagedDatabaseCallback, java.util.List<?> typeConverters, java.util.List<? extends androidx.room.migration.AutoMigrationSpec> autoMigrationSpecs, boolean allowDestructiveMigrationForAllTables); 21 ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public DatabaseConfiguration(android.content.Context context, String? name, androidx.sqlite.db.SupportSQLiteOpenHelper.Factory? sqliteOpenHelperFactory, androidx.room.RoomDatabase.MigrationContainer migrationContainer, java.util.List<? extends androidx.room.RoomDatabase.Callback>? callbacks, boolean allowMainThreadQueries, androidx.room.RoomDatabase.JournalMode journalMode, java.util.concurrent.Executor queryExecutor, java.util.concurrent.Executor transactionExecutor, android.content.Intent? multiInstanceInvalidationServiceIntent, boolean requireMigration, boolean allowDestructiveMigrationOnDowngrade, java.util.Set<java.lang.Integer>? migrationNotRequiredFrom, String? copyFromAssetPath, java.io.File? copyFromFile, java.util.concurrent.Callable<java.io.InputStream>? copyFromInputStream, androidx.room.RoomDatabase.PrepackagedDatabaseCallback? prepackagedDatabaseCallback, java.util.List<?> typeConverters, java.util.List<? extends androidx.room.migration.AutoMigrationSpec> autoMigrationSpecs, boolean allowDestructiveMigrationForAllTables, androidx.sqlite.SQLiteDriver? sqliteDriver, kotlin.coroutines.CoroutineContext? queryCoroutineContext); 22 ctor @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public DatabaseConfiguration(android.content.Context context, String? name, androidx.sqlite.db.SupportSQLiteOpenHelper.Factory sqliteOpenHelperFactory, androidx.room.RoomDatabase.MigrationContainer migrationContainer, java.util.List<? extends androidx.room.RoomDatabase.Callback>? callbacks, boolean allowMainThreadQueries, androidx.room.RoomDatabase.JournalMode journalMode, java.util.concurrent.Executor queryExecutor, java.util.concurrent.Executor transactionExecutor, boolean multiInstanceInvalidation, boolean requireMigration, boolean allowDestructiveMigrationOnDowngrade, java.util.Set<java.lang.Integer>? migrationNotRequiredFrom); 23 ctor @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public DatabaseConfiguration(android.content.Context context, String? name, androidx.sqlite.db.SupportSQLiteOpenHelper.Factory sqliteOpenHelperFactory, androidx.room.RoomDatabase.MigrationContainer migrationContainer, java.util.List<? extends androidx.room.RoomDatabase.Callback>? callbacks, boolean allowMainThreadQueries, androidx.room.RoomDatabase.JournalMode journalMode, java.util.concurrent.Executor queryExecutor, java.util.concurrent.Executor transactionExecutor, boolean multiInstanceInvalidation, boolean requireMigration, boolean allowDestructiveMigrationOnDowngrade, java.util.Set<java.lang.Integer>? migrationNotRequiredFrom, String? copyFromAssetPath, java.io.File? copyFromFile); 24 ctor @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public DatabaseConfiguration(android.content.Context context, String? name, androidx.sqlite.db.SupportSQLiteOpenHelper.Factory sqliteOpenHelperFactory, androidx.room.RoomDatabase.MigrationContainer migrationContainer, java.util.List<? extends androidx.room.RoomDatabase.Callback>? callbacks, boolean allowMainThreadQueries, androidx.room.RoomDatabase.JournalMode journalMode, java.util.concurrent.Executor queryExecutor, java.util.concurrent.Executor transactionExecutor, boolean multiInstanceInvalidation, boolean requireMigration, boolean allowDestructiveMigrationOnDowngrade, java.util.Set<java.lang.Integer>? migrationNotRequiredFrom, String? copyFromAssetPath, java.io.File? copyFromFile, java.util.concurrent.Callable<java.io.InputStream>? copyFromInputStream); 25 ctor @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public DatabaseConfiguration(android.content.Context context, String? name, androidx.sqlite.db.SupportSQLiteOpenHelper.Factory sqliteOpenHelperFactory, androidx.room.RoomDatabase.MigrationContainer migrationContainer, java.util.List<? extends androidx.room.RoomDatabase.Callback>? callbacks, boolean allowMainThreadQueries, androidx.room.RoomDatabase.JournalMode journalMode, java.util.concurrent.Executor queryExecutor, java.util.concurrent.Executor transactionExecutor, boolean multiInstanceInvalidation, boolean requireMigration, boolean allowDestructiveMigrationOnDowngrade, java.util.Set<java.lang.Integer>? migrationNotRequiredFrom, String? copyFromAssetPath, java.io.File? copyFromFile, java.util.concurrent.Callable<java.io.InputStream>? copyFromInputStream, androidx.room.RoomDatabase.PrepackagedDatabaseCallback? prepackagedDatabaseCallback); 26 ctor @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public DatabaseConfiguration(android.content.Context context, String? name, androidx.sqlite.db.SupportSQLiteOpenHelper.Factory sqliteOpenHelperFactory, androidx.room.RoomDatabase.MigrationContainer migrationContainer, java.util.List<? extends androidx.room.RoomDatabase.Callback>? callbacks, boolean allowMainThreadQueries, androidx.room.RoomDatabase.JournalMode journalMode, java.util.concurrent.Executor queryExecutor, java.util.concurrent.Executor transactionExecutor, boolean multiInstanceInvalidation, boolean requireMigration, boolean allowDestructiveMigrationOnDowngrade, java.util.Set<java.lang.Integer>? migrationNotRequiredFrom, String? copyFromAssetPath, java.io.File? copyFromFile, java.util.concurrent.Callable<java.io.InputStream>? copyFromInputStream, androidx.room.RoomDatabase.PrepackagedDatabaseCallback? prepackagedDatabaseCallback, java.util.List<?> typeConverters); 27 ctor @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public DatabaseConfiguration(android.content.Context context, String? name, androidx.sqlite.db.SupportSQLiteOpenHelper.Factory sqliteOpenHelperFactory, androidx.room.RoomDatabase.MigrationContainer migrationContainer, java.util.List<? extends androidx.room.RoomDatabase.Callback>? callbacks, boolean allowMainThreadQueries, androidx.room.RoomDatabase.JournalMode journalMode, java.util.concurrent.Executor queryExecutor, java.util.concurrent.Executor transactionExecutor, boolean multiInstanceInvalidation, boolean requireMigration, boolean allowDestructiveMigrationOnDowngrade, java.util.Set<java.lang.Integer>? migrationNotRequiredFrom, String? copyFromAssetPath, java.io.File? copyFromFile, java.util.concurrent.Callable<java.io.InputStream>? copyFromInputStream, androidx.room.RoomDatabase.PrepackagedDatabaseCallback? prepackagedDatabaseCallback, java.util.List<?> typeConverters, java.util.List<? extends androidx.room.migration.AutoMigrationSpec> autoMigrationSpecs); 28 method public boolean isMigrationRequired(int fromVersion, int toVersion); 29 method @Deprecated public boolean isMigrationRequiredFrom(int version); 30 property public final boolean allowDestructiveMigrationForAllTables; 31 property public final boolean allowDestructiveMigrationOnDowngrade; 32 property public final boolean allowMainThreadQueries; 33 property public final java.util.List<? extends androidx.room.migration.AutoMigrationSpec> autoMigrationSpecs; 34 property public final java.util.List<? extends androidx.room.RoomDatabase.Callback>? callbacks; 35 property public final android.content.Context context; 36 property public final String? copyFromAssetPath; 37 property public final java.io.File? copyFromFile; 38 property public final java.util.concurrent.Callable<java.io.InputStream>? copyFromInputStream; 39 property public final androidx.room.RoomDatabase.JournalMode journalMode; 40 property public final androidx.room.RoomDatabase.MigrationContainer migrationContainer; 41 property public final boolean multiInstanceInvalidation; 42 property public final android.content.Intent? multiInstanceInvalidationServiceIntent; 43 property public final String? name; 44 property public final androidx.room.RoomDatabase.PrepackagedDatabaseCallback? prepackagedDatabaseCallback; 45 property public final kotlin.coroutines.CoroutineContext? queryCoroutineContext; 46 property public final java.util.concurrent.Executor queryExecutor; 47 property public final boolean requireMigration; 48 property public final androidx.sqlite.SQLiteDriver? sqliteDriver; 49 property public final androidx.sqlite.db.SupportSQLiteOpenHelper.Factory? sqliteOpenHelperFactory; 50 property public final java.util.concurrent.Executor transactionExecutor; 51 property public final java.util.List<?> typeConverters; 52 field public final boolean allowDestructiveMigrationForAllTables; 53 field public final boolean allowDestructiveMigrationOnDowngrade; 54 field public final boolean allowMainThreadQueries; 55 field public final java.util.List<androidx.room.migration.AutoMigrationSpec> autoMigrationSpecs; 56 field public final java.util.List<androidx.room.RoomDatabase.Callback>? callbacks; 57 field public final android.content.Context context; 58 field public final String? copyFromAssetPath; 59 field public final java.io.File? copyFromFile; 60 field public final java.util.concurrent.Callable<java.io.InputStream>? copyFromInputStream; 61 field public final androidx.room.RoomDatabase.JournalMode journalMode; 62 field public final androidx.room.RoomDatabase.MigrationContainer migrationContainer; 63 field public final boolean multiInstanceInvalidation; 64 field @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public final android.content.Intent? multiInstanceInvalidationServiceIntent; 65 field public final String? name; 66 field public final androidx.room.RoomDatabase.PrepackagedDatabaseCallback? prepackagedDatabaseCallback; 67 field public final kotlin.coroutines.CoroutineContext? queryCoroutineContext; 68 field public final java.util.concurrent.Executor queryExecutor; 69 field public final boolean requireMigration; 70 field public final androidx.sqlite.SQLiteDriver? sqliteDriver; 71 field public final androidx.sqlite.db.SupportSQLiteOpenHelper.Factory? sqliteOpenHelperFactory; 72 field public final java.util.concurrent.Executor transactionExecutor; 73 field public final java.util.List<java.lang.Object> typeConverters; 74 } 75 76 @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public abstract class EntityDeleteOrUpdateAdapter<T> { 77 ctor public EntityDeleteOrUpdateAdapter(); 78 method protected abstract void bind(androidx.sqlite.SQLiteStatement statement, T entity); 79 method protected abstract String createQuery(); 80 method public final int handle(androidx.sqlite.SQLiteConnection connection, T? entity); 81 method public final int handleMultiple(androidx.sqlite.SQLiteConnection connection, Iterable<? extends T?>? entities); 82 method public final int handleMultiple(androidx.sqlite.SQLiteConnection connection, T?[]? entities); 83 } 84 85 @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public abstract class EntityDeletionOrUpdateAdapter<T> extends androidx.room.SharedSQLiteStatement { 86 ctor @Deprecated public EntityDeletionOrUpdateAdapter(androidx.room.RoomDatabase database); 87 method @Deprecated protected abstract void bind(androidx.sqlite.db.SupportSQLiteStatement statement, T entity); 88 method @Deprecated public final int handle(T entity); 89 method @Deprecated public final int handleMultiple(Iterable<? extends T> entities); 90 method @Deprecated public final int handleMultiple(T[] entities); 91 } 92 93 @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public abstract class EntityInsertAdapter<T> { 94 ctor public EntityInsertAdapter(); 95 method protected abstract void bind(androidx.sqlite.SQLiteStatement statement, T entity); 96 method protected abstract String createQuery(); 97 method public final void insert(androidx.sqlite.SQLiteConnection connection, Iterable<? extends T?>? entities); 98 method public final void insert(androidx.sqlite.SQLiteConnection connection, T? entity); 99 method public final void insert(androidx.sqlite.SQLiteConnection connection, T?[]? entities); 100 method public final long insertAndReturnId(androidx.sqlite.SQLiteConnection connection, T? entity); 101 method public final long[] insertAndReturnIdsArray(androidx.sqlite.SQLiteConnection connection, java.util.Collection<? extends T?>? entities); 102 method public final long[] insertAndReturnIdsArray(androidx.sqlite.SQLiteConnection connection, T?[]? entities); 103 method public final Long[] insertAndReturnIdsArrayBox(androidx.sqlite.SQLiteConnection connection, java.util.Collection<? extends T?>? entities); 104 method public final Long[] insertAndReturnIdsArrayBox(androidx.sqlite.SQLiteConnection connection, T?[]? entities); 105 method public final java.util.List<java.lang.Long> insertAndReturnIdsList(androidx.sqlite.SQLiteConnection connection, java.util.Collection<? extends T?>? entities); 106 method public final java.util.List<java.lang.Long> insertAndReturnIdsList(androidx.sqlite.SQLiteConnection connection, T?[]? entities); 107 } 108 109 @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public abstract class EntityInsertionAdapter<T> extends androidx.room.SharedSQLiteStatement { 110 ctor @Deprecated public EntityInsertionAdapter(androidx.room.RoomDatabase database); 111 method @Deprecated protected abstract void bind(androidx.sqlite.db.SupportSQLiteStatement statement, T entity); 112 method @Deprecated public final void insert(Iterable<? extends T> entities); 113 method @Deprecated public final void insert(T entity); 114 method @Deprecated public final void insert(T[] entities); 115 method @Deprecated public final long insertAndReturnId(T entity); 116 method @Deprecated public final long[] insertAndReturnIdsArray(java.util.Collection<? extends T> entities); 117 method @Deprecated public final long[] insertAndReturnIdsArray(T[] entities); 118 method @Deprecated public final Long[] insertAndReturnIdsArrayBox(java.util.Collection<? extends T> entities); 119 method @Deprecated public final Long[] insertAndReturnIdsArrayBox(T[] entities); 120 method @Deprecated public final java.util.List<java.lang.Long> insertAndReturnIdsList(java.util.Collection<? extends T> entities); 121 method @Deprecated public final java.util.List<java.lang.Long> insertAndReturnIdsList(T[] entities); 122 } 123 124 @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public final class EntityUpsertAdapter<T> { 125 ctor public EntityUpsertAdapter(androidx.room.EntityInsertAdapter<T> entityInsertAdapter, androidx.room.EntityDeleteOrUpdateAdapter<T> updateAdapter); 126 method public void upsert(androidx.sqlite.SQLiteConnection connection, Iterable<? extends T?>? entities); 127 method public void upsert(androidx.sqlite.SQLiteConnection connection, T? entity); 128 method public void upsert(androidx.sqlite.SQLiteConnection connection, T?[]? entities); 129 method public long upsertAndReturnId(androidx.sqlite.SQLiteConnection connection, T? entity); 130 method public long[] upsertAndReturnIdsArray(androidx.sqlite.SQLiteConnection connection, java.util.Collection<? extends T?>? entities); 131 method public long[] upsertAndReturnIdsArray(androidx.sqlite.SQLiteConnection connection, T?[]? entities); 132 method public Long[] upsertAndReturnIdsArrayBox(androidx.sqlite.SQLiteConnection connection, java.util.Collection<? extends T?>? entities); 133 method public Long[] upsertAndReturnIdsArrayBox(androidx.sqlite.SQLiteConnection connection, T?[]? entities); 134 method public java.util.List<java.lang.Long> upsertAndReturnIdsList(androidx.sqlite.SQLiteConnection connection, java.util.Collection<? extends T?>? entities); 135 method public java.util.List<java.lang.Long> upsertAndReturnIdsList(androidx.sqlite.SQLiteConnection connection, T?[]? entities); 136 field public static final androidx.room.EntityUpsertAdapter.Companion Companion; 137 } 138 139 public static final class EntityUpsertAdapter.Companion { 140 } 141 142 @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public final class EntityUpsertionAdapter<T> { 143 ctor @Deprecated public EntityUpsertionAdapter(androidx.room.EntityInsertionAdapter<T> insertionAdapter, androidx.room.EntityDeletionOrUpdateAdapter<T> updateAdapter); 144 method @Deprecated public void upsert(Iterable<? extends T> entities); 145 method @Deprecated public void upsert(T entity); 146 method @Deprecated public void upsert(T[] entities); 147 method @Deprecated public long upsertAndReturnId(T entity); 148 method @Deprecated public long[] upsertAndReturnIdsArray(java.util.Collection<? extends T> entities); 149 method @Deprecated public long[] upsertAndReturnIdsArray(T[] entities); 150 method @Deprecated public Long[] upsertAndReturnIdsArrayBox(java.util.Collection<? extends T> entities); 151 method @Deprecated public Long[] upsertAndReturnIdsArrayBox(T[] entities); 152 method @Deprecated public java.util.List<java.lang.Long> upsertAndReturnIdsList(java.util.Collection<? extends T> entities); 153 method @Deprecated public java.util.List<java.lang.Long> upsertAndReturnIdsList(T[] entities); 154 } 155 156 @SuppressCompatibility @kotlin.RequiresOptIn @kotlin.annotation.Retention(kotlin.annotation.AnnotationRetention.BINARY) @kotlin.annotation.Target(allowedTargets={kotlin.annotation.AnnotationTarget.CLASS, kotlin.annotation.AnnotationTarget.FUNCTION}) public @interface ExperimentalRoomApi { 157 } 158 159 public class InvalidationTracker { 160 ctor @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public InvalidationTracker(androidx.room.RoomDatabase database, java.lang.String... tableNames); 161 ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public InvalidationTracker(androidx.room.RoomDatabase database, java.util.Map<java.lang.String,java.lang.String> shadowTablesMap, java.util.Map<java.lang.String,java.util.Set<java.lang.String>> viewTables, java.lang.String... tableNames); 162 method @WorkerThread public void addObserver(androidx.room.InvalidationTracker.Observer observer); 163 method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) @WorkerThread public void addWeakObserver(androidx.room.InvalidationTracker.Observer observer); 164 method public final kotlinx.coroutines.flow.Flow<java.util.Set<java.lang.String>> createFlow(String[] tables); 165 method public final kotlinx.coroutines.flow.Flow<java.util.Set<java.lang.String>> createFlow(String[] tables, optional boolean emitInitialState); 166 method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public <T> androidx.lifecycle.LiveData<T> createLiveData(String[] tableNames, boolean inTransaction, java.util.concurrent.Callable<T?> computeFunction); 167 method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public final <T> androidx.lifecycle.LiveData<T> createLiveData(String[] tableNames, boolean inTransaction, kotlin.jvm.functions.Function1<? super androidx.sqlite.SQLiteConnection,? extends T?> computeFunction); 168 method @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public <T> androidx.lifecycle.LiveData<T> createLiveData(String[] tableNames, java.util.concurrent.Callable<T?> computeFunction); 169 method public final void refreshAsync(); 170 method public void refreshVersionsAsync(); 171 method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) @WorkerThread public void refreshVersionsSync(); 172 method @WorkerThread public void removeObserver(androidx.room.InvalidationTracker.Observer observer); 173 field public static final androidx.room.InvalidationTracker.Companion Companion; 174 } 175 176 public static final class InvalidationTracker.Companion { 177 } 178 179 public abstract static class InvalidationTracker.Observer { 180 ctor protected InvalidationTracker.Observer(String firstTable, java.lang.String... rest); 181 ctor public InvalidationTracker.Observer(String[] tables); 182 method public abstract void onInvalidated(java.util.Set<java.lang.String> tables); 183 } 184 185 @SuppressCompatibility @androidx.room.ExperimentalRoomApi public final class MultiInstanceInvalidationService extends android.app.Service { 186 ctor public MultiInstanceInvalidationService(); 187 method public android.os.IBinder onBind(android.content.Intent intent); 188 } 189 190 public interface PooledConnection { 191 method public suspend <R> Object? usePrepared(String sql, kotlin.jvm.functions.Function1<? super androidx.sqlite.SQLiteStatement,? extends R> block, kotlin.coroutines.Continuation<? super R>); 192 } 193 194 public final class Room { 195 method public static <T extends androidx.room.RoomDatabase> androidx.room.RoomDatabase.Builder<T> databaseBuilder(android.content.Context context, Class<T> klass, String? name); 196 method public inline <reified T extends androidx.room.RoomDatabase> androidx.room.RoomDatabase.Builder<T> databaseBuilder(android.content.Context context, String name, optional kotlin.jvm.functions.Function0<? extends T> factory); 197 method public static <T extends androidx.room.RoomDatabase> androidx.room.RoomDatabase.Builder<T> inMemoryDatabaseBuilder(android.content.Context context, Class<T> klass); 198 method public inline <reified T extends androidx.room.RoomDatabase> androidx.room.RoomDatabase.Builder<T> inMemoryDatabaseBuilder(android.content.Context context, optional kotlin.jvm.functions.Function0<? extends T> factory); 199 property public static String MASTER_TABLE_NAME; 200 field public static final androidx.room.Room INSTANCE; 201 field public static final String MASTER_TABLE_NAME = "room_master_table"; 202 } 203 204 public abstract class RoomDatabase { 205 ctor public RoomDatabase(); 206 method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public void assertNotMainThread(); 207 method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public void assertNotSuspendingTransaction(); 208 method @Deprecated public void beginTransaction(); 209 method @WorkerThread public abstract void clearAllTables(); 210 method public void close(); 211 method public androidx.sqlite.db.SupportSQLiteStatement compileStatement(String sql); 212 method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public java.util.List<androidx.room.migration.Migration> createAutoMigrations(java.util.Map<kotlin.reflect.KClass<? extends androidx.room.migration.AutoMigrationSpec>,? extends androidx.room.migration.AutoMigrationSpec> autoMigrationSpecs); 213 method protected abstract androidx.room.InvalidationTracker createInvalidationTracker(); 214 method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) protected androidx.room.RoomOpenDelegateMarker createOpenDelegate(); 215 method @Deprecated protected androidx.sqlite.db.SupportSQLiteOpenHelper createOpenHelper(androidx.room.DatabaseConfiguration config); 216 method @Deprecated public void endTransaction(); 217 method @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) @kotlin.jvm.JvmSuppressWildcards public java.util.List<androidx.room.migration.Migration> getAutoMigrations(java.util.Map<java.lang.Class<? extends androidx.room.migration.AutoMigrationSpec>,androidx.room.migration.AutoMigrationSpec> autoMigrationSpecs); 218 method public androidx.room.InvalidationTracker getInvalidationTracker(); 219 method @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) protected final java.util.List<androidx.room.RoomDatabase.Callback>? getMCallbacks(); 220 method @Deprecated @kotlin.jvm.Volatile protected final androidx.sqlite.db.SupportSQLiteDatabase? getMDatabase(); 221 method public androidx.sqlite.db.SupportSQLiteOpenHelper getOpenHelper(); 222 method public java.util.concurrent.Executor getQueryExecutor(); 223 method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public java.util.Set<kotlin.reflect.KClass<? extends androidx.room.migration.AutoMigrationSpec>> getRequiredAutoMigrationSpecClasses(); 224 method @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public java.util.Set<java.lang.Class<? extends androidx.room.migration.AutoMigrationSpec>> getRequiredAutoMigrationSpecs(); 225 method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) protected java.util.Map<kotlin.reflect.KClass<? extends java.lang.Object?>,java.util.List<kotlin.reflect.KClass<? extends java.lang.Object?>>> getRequiredTypeConverterClasses(); 226 method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) protected java.util.Map<java.lang.Class<? extends java.lang.Object?>,java.util.List<java.lang.Class<? extends java.lang.Object?>>> getRequiredTypeConverters(); 227 method public java.util.concurrent.Executor getTransactionExecutor(); 228 method @Deprecated public <T> T? getTypeConverter(Class<T> klass); 229 method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public final <T> T getTypeConverter(kotlin.reflect.KClass<T> klass); 230 method public boolean inTransaction(); 231 method @CallSuper public void init(androidx.room.DatabaseConfiguration configuration); 232 method @Deprecated protected void internalInitInvalidationTracker(androidx.sqlite.db.SupportSQLiteDatabase db); 233 method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) protected final void internalInitInvalidationTracker(androidx.sqlite.SQLiteConnection connection); 234 method public boolean isOpen(); 235 method public android.database.Cursor query(androidx.sqlite.db.SupportSQLiteQuery query); 236 method public android.database.Cursor query(androidx.sqlite.db.SupportSQLiteQuery query, optional android.os.CancellationSignal? signal); 237 method public android.database.Cursor query(String query, Object?[]? args); 238 method public void runInTransaction(Runnable body); 239 method public <V> V runInTransaction(java.util.concurrent.Callable<V> body); 240 method @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) protected final void setMCallbacks(java.util.List<androidx.room.RoomDatabase.Callback>?); 241 method @Deprecated @kotlin.jvm.Volatile protected final void setMDatabase(androidx.sqlite.db.SupportSQLiteDatabase?); 242 method @Deprecated public void setTransactionSuccessful(); 243 property public androidx.room.InvalidationTracker invalidationTracker; 244 property public boolean isOpen; 245 property @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) protected final java.util.List<androidx.room.RoomDatabase.Callback>? mCallbacks; 246 property @Deprecated @kotlin.jvm.Volatile protected final androidx.sqlite.db.SupportSQLiteDatabase? mDatabase; 247 property public androidx.sqlite.db.SupportSQLiteOpenHelper openHelper; 248 property public java.util.concurrent.Executor queryExecutor; 249 property public java.util.concurrent.Executor transactionExecutor; 250 field public static final androidx.room.RoomDatabase.Companion Companion; 251 field @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static final int MAX_BIND_PARAMETER_CNT = 999; // 0x3e7 252 field @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) protected java.util.List<? extends androidx.room.RoomDatabase.Callback>? mCallbacks; 253 field @Deprecated @kotlin.jvm.Volatile protected volatile androidx.sqlite.db.SupportSQLiteDatabase? mDatabase; 254 } 255 256 public static class RoomDatabase.Builder<T extends androidx.room.RoomDatabase> { 257 ctor @kotlin.PublishedApi internal RoomDatabase.Builder(kotlin.reflect.KClass<T> klass, String? name, kotlin.jvm.functions.Function0<? extends T>? factory, android.content.Context context); 258 method public androidx.room.RoomDatabase.Builder<T> addAutoMigrationSpec(androidx.room.migration.AutoMigrationSpec autoMigrationSpec); 259 method public androidx.room.RoomDatabase.Builder<T> addCallback(androidx.room.RoomDatabase.Callback callback); 260 method public androidx.room.RoomDatabase.Builder<T> addMigrations(androidx.room.migration.Migration... migrations); 261 method public androidx.room.RoomDatabase.Builder<T> addTypeConverter(Object typeConverter); 262 method public androidx.room.RoomDatabase.Builder<T> allowMainThreadQueries(); 263 method public T build(); 264 method public androidx.room.RoomDatabase.Builder<T> createFromAsset(String databaseFilePath); 265 method public androidx.room.RoomDatabase.Builder<T> createFromAsset(String databaseFilePath, androidx.room.RoomDatabase.PrepackagedDatabaseCallback callback); 266 method public androidx.room.RoomDatabase.Builder<T> createFromFile(java.io.File databaseFile); 267 method public androidx.room.RoomDatabase.Builder<T> createFromFile(java.io.File databaseFile, androidx.room.RoomDatabase.PrepackagedDatabaseCallback callback); 268 method public androidx.room.RoomDatabase.Builder<T> createFromInputStream(java.util.concurrent.Callable<java.io.InputStream> inputStreamCallable); 269 method public androidx.room.RoomDatabase.Builder<T> createFromInputStream(java.util.concurrent.Callable<java.io.InputStream> inputStreamCallable, androidx.room.RoomDatabase.PrepackagedDatabaseCallback callback); 270 method public androidx.room.RoomDatabase.Builder<T> enableMultiInstanceInvalidation(); 271 method @Deprecated public androidx.room.RoomDatabase.Builder<T> fallbackToDestructiveMigration(); 272 method public final androidx.room.RoomDatabase.Builder<T> fallbackToDestructiveMigration(boolean dropAllTables); 273 method public androidx.room.RoomDatabase.Builder<T> fallbackToDestructiveMigrationFrom(boolean dropAllTables, int... startVersions); 274 method @Deprecated public androidx.room.RoomDatabase.Builder<T> fallbackToDestructiveMigrationFrom(int... startVersions); 275 method @Deprecated public androidx.room.RoomDatabase.Builder<T> fallbackToDestructiveMigrationOnDowngrade(); 276 method public final androidx.room.RoomDatabase.Builder<T> fallbackToDestructiveMigrationOnDowngrade(boolean dropAllTables); 277 method public androidx.room.RoomDatabase.Builder<T> openHelperFactory(androidx.sqlite.db.SupportSQLiteOpenHelper.Factory? factory); 278 method @SuppressCompatibility @androidx.room.ExperimentalRoomApi public androidx.room.RoomDatabase.Builder<T> setAutoCloseTimeout(@IntRange(from=0L) long autoCloseTimeout, java.util.concurrent.TimeUnit autoCloseTimeUnit); 279 method public final androidx.room.RoomDatabase.Builder<T> setDriver(androidx.sqlite.SQLiteDriver driver); 280 method @SuppressCompatibility @androidx.room.ExperimentalRoomApi public final androidx.room.RoomDatabase.Builder<T> setInMemoryTrackingMode(boolean inMemory); 281 method public androidx.room.RoomDatabase.Builder<T> setJournalMode(androidx.room.RoomDatabase.JournalMode journalMode); 282 method @SuppressCompatibility @androidx.room.ExperimentalRoomApi public androidx.room.RoomDatabase.Builder<T> setMultiInstanceInvalidationServiceIntent(android.content.Intent invalidationServiceIntent); 283 method public androidx.room.RoomDatabase.Builder<T> setQueryCallback(androidx.room.RoomDatabase.QueryCallback queryCallback, java.util.concurrent.Executor executor); 284 method public final androidx.room.RoomDatabase.Builder<T> setQueryCallback(kotlin.coroutines.CoroutineContext context, androidx.room.RoomDatabase.QueryCallback queryCallback); 285 method public final androidx.room.RoomDatabase.Builder<T> setQueryCoroutineContext(kotlin.coroutines.CoroutineContext context); 286 method public androidx.room.RoomDatabase.Builder<T> setQueryExecutor(java.util.concurrent.Executor executor); 287 method public androidx.room.RoomDatabase.Builder<T> setTransactionExecutor(java.util.concurrent.Executor executor); 288 } 289 290 public abstract static class RoomDatabase.Callback { 291 ctor public RoomDatabase.Callback(); 292 method public void onCreate(androidx.sqlite.db.SupportSQLiteDatabase db); 293 method public void onCreate(androidx.sqlite.SQLiteConnection connection); 294 method public void onDestructiveMigration(androidx.sqlite.db.SupportSQLiteDatabase db); 295 method public void onDestructiveMigration(androidx.sqlite.SQLiteConnection connection); 296 method public void onOpen(androidx.sqlite.db.SupportSQLiteDatabase db); 297 method public void onOpen(androidx.sqlite.SQLiteConnection connection); 298 } 299 300 public static final class RoomDatabase.Companion { 301 property @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static int MAX_BIND_PARAMETER_CNT; 302 } 303 304 public enum RoomDatabase.JournalMode { 305 enum_constant public static final androidx.room.RoomDatabase.JournalMode AUTOMATIC; 306 enum_constant public static final androidx.room.RoomDatabase.JournalMode TRUNCATE; 307 enum_constant public static final androidx.room.RoomDatabase.JournalMode WRITE_AHEAD_LOGGING; 308 } 309 310 public static class RoomDatabase.MigrationContainer { 311 ctor public RoomDatabase.MigrationContainer(); 312 method public void addMigrations(androidx.room.migration.Migration... migrations); 313 method public void addMigrations(java.util.List<? extends androidx.room.migration.Migration> migrations); 314 method public final boolean contains(int startVersion, int endVersion); 315 method public java.util.List<androidx.room.migration.Migration>? findMigrationPath(int start, int end); 316 method public java.util.Map<java.lang.Integer,java.util.Map<java.lang.Integer,androidx.room.migration.Migration>> getMigrations(); 317 } 318 319 public abstract static class RoomDatabase.PrepackagedDatabaseCallback { 320 ctor public RoomDatabase.PrepackagedDatabaseCallback(); 321 method public void onOpenPrepackagedDatabase(androidx.sqlite.db.SupportSQLiteDatabase db); 322 } 323 324 public static fun interface RoomDatabase.QueryCallback { 325 method public void onQuery(String sqlQuery, java.util.List<? extends java.lang.Object?> bindArgs); 326 } 327 328 public interface RoomDatabaseConstructor<T extends androidx.room.RoomDatabase> { 329 method public T initialize(); 330 } 331 332 public final class RoomDatabaseKt { 333 method @Deprecated public static kotlinx.coroutines.flow.Flow<java.util.Set<java.lang.String>> invalidationTrackerFlow(androidx.room.RoomDatabase, String[] tables, optional boolean emitInitialState); 334 method public static suspend <R> Object? useReaderConnection(androidx.room.RoomDatabase, kotlin.jvm.functions.Function2<? super androidx.room.Transactor,? super kotlin.coroutines.Continuation<? super R>,? extends java.lang.Object?> block, kotlin.coroutines.Continuation<? super R>); 335 method public static suspend <R> Object? useWriterConnection(androidx.room.RoomDatabase, kotlin.jvm.functions.Function2<? super androidx.room.Transactor,? super kotlin.coroutines.Continuation<? super R>,? extends java.lang.Object?> block, kotlin.coroutines.Continuation<? super R>); 336 method public static suspend <R> Object? withTransaction(androidx.room.RoomDatabase, kotlin.jvm.functions.Function1<? super kotlin.coroutines.Continuation<? super R>,? extends java.lang.Object?> block, kotlin.coroutines.Continuation<? super R>); 337 } 338 339 @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public abstract class RoomOpenDelegate implements androidx.room.RoomOpenDelegateMarker { 340 ctor public RoomOpenDelegate(int version, String identityHash, String legacyIdentityHash); 341 method public abstract void createAllTables(androidx.sqlite.SQLiteConnection connection); 342 method public abstract void dropAllTables(androidx.sqlite.SQLiteConnection connection); 343 method public final String getIdentityHash(); 344 method public final String getLegacyIdentityHash(); 345 method public final int getVersion(); 346 method public abstract void onCreate(androidx.sqlite.SQLiteConnection connection); 347 method public abstract void onOpen(androidx.sqlite.SQLiteConnection connection); 348 method public abstract void onPostMigrate(androidx.sqlite.SQLiteConnection connection); 349 method public abstract void onPreMigrate(androidx.sqlite.SQLiteConnection connection); 350 method public abstract androidx.room.RoomOpenDelegate.ValidationResult onValidateSchema(androidx.sqlite.SQLiteConnection connection); 351 property public final String identityHash; 352 property public final String legacyIdentityHash; 353 property public final int version; 354 } 355 356 @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static final class RoomOpenDelegate.ValidationResult { 357 ctor public RoomOpenDelegate.ValidationResult(boolean isValid, String? expectedFoundMsg); 358 property public String? expectedFoundMsg; 359 property public boolean isValid; 360 field public final String? expectedFoundMsg; 361 field public final boolean isValid; 362 } 363 364 public interface RoomOpenDelegateMarker { 365 } 366 367 @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public class RoomOpenHelper extends androidx.sqlite.db.SupportSQLiteOpenHelper.Callback { 368 ctor @Deprecated public RoomOpenHelper(androidx.room.DatabaseConfiguration configuration, androidx.room.RoomOpenHelper.Delegate delegate, String legacyHash); 369 ctor @Deprecated public RoomOpenHelper(androidx.room.DatabaseConfiguration configuration, androidx.room.RoomOpenHelper.Delegate delegate, String identityHash, String legacyHash); 370 method @Deprecated public void onCreate(androidx.sqlite.db.SupportSQLiteDatabase db); 371 method @Deprecated public void onUpgrade(androidx.sqlite.db.SupportSQLiteDatabase db, int oldVersion, int newVersion); 372 field @Deprecated public static final androidx.room.RoomOpenHelper.Companion Companion; 373 } 374 375 @Deprecated public static final class RoomOpenHelper.Companion { 376 } 377 378 @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public abstract static class RoomOpenHelper.Delegate { 379 ctor @Deprecated public RoomOpenHelper.Delegate(int version); 380 method @Deprecated public abstract void createAllTables(androidx.sqlite.db.SupportSQLiteDatabase db); 381 method @Deprecated public abstract void dropAllTables(androidx.sqlite.db.SupportSQLiteDatabase db); 382 method @Deprecated public abstract void onCreate(androidx.sqlite.db.SupportSQLiteDatabase db); 383 method @Deprecated public abstract void onOpen(androidx.sqlite.db.SupportSQLiteDatabase db); 384 method @Deprecated public void onPostMigrate(androidx.sqlite.db.SupportSQLiteDatabase db); 385 method @Deprecated public void onPreMigrate(androidx.sqlite.db.SupportSQLiteDatabase db); 386 method @Deprecated public androidx.room.RoomOpenHelper.ValidationResult onValidateSchema(androidx.sqlite.db.SupportSQLiteDatabase db); 387 method @Deprecated protected void validateMigration(androidx.sqlite.db.SupportSQLiteDatabase db); 388 property @Deprecated public final int version; 389 field @Deprecated public final int version; 390 } 391 392 @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static class RoomOpenHelper.ValidationResult { 393 ctor @Deprecated public RoomOpenHelper.ValidationResult(boolean isValid, String? expectedFoundMsg); 394 property @Deprecated public final String? expectedFoundMsg; 395 property @Deprecated public final boolean isValid; 396 field @Deprecated public final String? expectedFoundMsg; 397 field @Deprecated public final boolean isValid; 398 } 399 400 public final class RoomRawQuery { 401 ctor public RoomRawQuery(String sql); 402 ctor public RoomRawQuery(String sql, optional kotlin.jvm.functions.Function1<? super androidx.sqlite.SQLiteStatement,kotlin.Unit> onBindStatement); 403 method public kotlin.jvm.functions.Function1<androidx.sqlite.SQLiteStatement,kotlin.Unit> getBindingFunction(); 404 method public String getSql(); 405 property public String sql; 406 } 407 408 @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public final class RoomSQLiteQuery implements androidx.sqlite.db.SupportSQLiteProgram androidx.sqlite.db.SupportSQLiteQuery { 409 method public static androidx.room.RoomSQLiteQuery acquire(String query, int argumentCount); 410 method public void bindBlob(int index, byte[] value); 411 method public void bindDouble(int index, double value); 412 method public void bindLong(int index, long value); 413 method public void bindNull(int index); 414 method public void bindString(int index, String value); 415 method public void bindText(int index, String value); 416 method public void bindTo(androidx.sqlite.db.SupportSQLiteProgram statement); 417 method public void bindTo(androidx.sqlite.SQLiteStatement statement); 418 method public void clearBindings(); 419 method public void close(); 420 method public void copyArgumentsFrom(androidx.room.RoomSQLiteQuery other); 421 method public static androidx.room.RoomSQLiteQuery copyFrom(androidx.sqlite.db.SupportSQLiteQuery supportSQLiteQuery); 422 method public int getArgCount(); 423 method public int getCapacity(); 424 method public String getSql(); 425 method public void init(String query, int initArgCount); 426 method public void release(); 427 method public androidx.room.RoomRawQuery toRoomRawQuery(); 428 property public int argCount; 429 property @VisibleForTesting public byte[]?[] blobBindings; 430 property public int capacity; 431 property @VisibleForTesting public double[] doubleBindings; 432 property @VisibleForTesting public long[] longBindings; 433 property public String sql; 434 property @VisibleForTesting public String?[] stringBindings; 435 field public static final androidx.room.RoomSQLiteQuery.Companion Companion; 436 field @VisibleForTesting public static final int DESIRED_POOL_SIZE = 10; // 0xa 437 field @VisibleForTesting public static final int POOL_LIMIT = 15; // 0xf 438 field @VisibleForTesting public final byte[]?[] blobBindings; 439 field @VisibleForTesting public final double[] doubleBindings; 440 field @VisibleForTesting public final long[] longBindings; 441 field @VisibleForTesting public static final java.util.TreeMap<java.lang.Integer,androidx.room.RoomSQLiteQuery> queryPool; 442 field @VisibleForTesting public final String?[] stringBindings; 443 } 444 445 public static final class RoomSQLiteQuery.Companion { 446 method public androidx.room.RoomSQLiteQuery acquire(String query, int argumentCount); 447 method public androidx.room.RoomSQLiteQuery copyFrom(androidx.sqlite.db.SupportSQLiteQuery supportSQLiteQuery); 448 property @VisibleForTesting public static int DESIRED_POOL_SIZE; 449 property @VisibleForTesting public static int POOL_LIMIT; 450 property @VisibleForTesting public java.util.TreeMap<java.lang.Integer,androidx.room.RoomSQLiteQuery> queryPool; 451 } 452 453 @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public abstract class SharedSQLiteStatement { 454 ctor public SharedSQLiteStatement(androidx.room.RoomDatabase database); 455 method public androidx.sqlite.db.SupportSQLiteStatement acquire(); 456 method protected void assertNotMainThread(); 457 method protected abstract String createQuery(); 458 method public void release(androidx.sqlite.db.SupportSQLiteStatement statement); 459 } 460 461 public interface TransactionScope<T> extends androidx.room.PooledConnection { 462 method public suspend Object? rollback(T result, kotlin.coroutines.Continuation<? extends java.lang.Object?>); 463 method public suspend <R> Object? withNestedTransaction(kotlin.jvm.functions.Function2<? super androidx.room.TransactionScope<R>,? super kotlin.coroutines.Continuation<? super R>,? extends java.lang.Object?> block, kotlin.coroutines.Continuation<? super R>); 464 } 465 466 public interface Transactor extends androidx.room.PooledConnection { 467 method public suspend Object? inTransaction(kotlin.coroutines.Continuation<? super java.lang.Boolean>); 468 method public suspend <R> Object? withTransaction(androidx.room.Transactor.SQLiteTransactionType type, kotlin.jvm.functions.Function2<? super androidx.room.TransactionScope<R>,? super kotlin.coroutines.Continuation<? super R>,? extends java.lang.Object?> block, kotlin.coroutines.Continuation<? super R>); 469 } 470 471 public enum Transactor.SQLiteTransactionType { 472 enum_constant public static final androidx.room.Transactor.SQLiteTransactionType DEFERRED; 473 enum_constant public static final androidx.room.Transactor.SQLiteTransactionType EXCLUSIVE; 474 enum_constant public static final androidx.room.Transactor.SQLiteTransactionType IMMEDIATE; 475 } 476 477 public final class TransactorKt { 478 method public static suspend <R> Object? deferredTransaction(androidx.room.Transactor, kotlin.jvm.functions.Function2<? super androidx.room.TransactionScope<R>,? super kotlin.coroutines.Continuation<? super R>,? extends java.lang.Object?> block, kotlin.coroutines.Continuation<? super R>); 479 method public static suspend <R> Object? exclusiveTransaction(androidx.room.Transactor, kotlin.jvm.functions.Function2<? super androidx.room.TransactionScope<R>,? super kotlin.coroutines.Continuation<? super R>,? extends java.lang.Object?> block, kotlin.coroutines.Continuation<? super R>); 480 method public static suspend Object? execSQL(androidx.room.PooledConnection, String sql, kotlin.coroutines.Continuation<? super kotlin.Unit>); 481 method public static suspend <R> Object? immediateTransaction(androidx.room.Transactor, kotlin.jvm.functions.Function2<? super androidx.room.TransactionScope<R>,? super kotlin.coroutines.Continuation<? super R>,? extends java.lang.Object?> block, kotlin.coroutines.Continuation<? super R>); 482 } 483 484} 485 486package androidx.room.coroutines { 487 488 public final class FlowUtil { 489 method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static <R> kotlinx.coroutines.flow.Flow<R> createFlow(androidx.room.RoomDatabase db, boolean inTransaction, String[] tableNames, kotlin.jvm.functions.Function1<? super androidx.sqlite.SQLiteConnection,? extends R> block); 490 } 491 492} 493 494package androidx.room.migration { 495 496 public interface AutoMigrationSpec { 497 method public default void onPostMigrate(androidx.sqlite.db.SupportSQLiteDatabase db); 498 method public default void onPostMigrate(androidx.sqlite.SQLiteConnection connection); 499 } 500 501 public abstract class Migration { 502 ctor public Migration(int startVersion, int endVersion); 503 method public void migrate(androidx.sqlite.db.SupportSQLiteDatabase db); 504 method public void migrate(androidx.sqlite.SQLiteConnection connection); 505 property public final int endVersion; 506 property public final int startVersion; 507 field public final int endVersion; 508 field public final int startVersion; 509 } 510 511 public final class MigrationKt { 512 method public static androidx.room.migration.Migration Migration(int startVersion, int endVersion, kotlin.jvm.functions.Function1<? super androidx.sqlite.db.SupportSQLiteDatabase,kotlin.Unit> migrate); 513 } 514 515} 516 517package androidx.room.paging { 518 519 @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public abstract class LimitOffsetDataSource<T> extends androidx.paging.PositionalDataSource<T!> { 520 ctor protected LimitOffsetDataSource(androidx.room.RoomDatabase, androidx.room.RoomSQLiteQuery, boolean, boolean, java.lang.String!...); 521 ctor protected LimitOffsetDataSource(androidx.room.RoomDatabase, androidx.room.RoomSQLiteQuery, boolean, java.lang.String!...); 522 ctor protected LimitOffsetDataSource(androidx.room.RoomDatabase, androidx.sqlite.db.SupportSQLiteQuery, boolean, boolean, java.lang.String!...); 523 ctor protected LimitOffsetDataSource(androidx.room.RoomDatabase, androidx.sqlite.db.SupportSQLiteQuery, boolean, java.lang.String!...); 524 method protected java.util.List<T!> convertRows(android.database.Cursor); 525 method protected java.util.List<T!> convertRows(androidx.sqlite.SQLiteStatement); 526 method public void loadInitial(androidx.paging.PositionalDataSource.LoadInitialParams, androidx.paging.PositionalDataSource.LoadInitialCallback<T!>); 527 method public void loadRange(androidx.paging.PositionalDataSource.LoadRangeParams, androidx.paging.PositionalDataSource.LoadRangeCallback<T!>); 528 } 529 530} 531 532package androidx.room.util { 533 534 @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public final class ByteArrayWrapper { 535 ctor public ByteArrayWrapper(byte[] array); 536 property public byte[] array; 537 field public final byte[] array; 538 } 539 540 @RestrictTo({androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX}) public final class CursorUtil { 541 method public static android.database.Cursor copyAndClose(android.database.Cursor c); 542 method @VisibleForTesting public static int findColumnIndexBySuffix(String[] columnNames, String name); 543 method public static int getColumnIndex(android.database.Cursor c, String name); 544 method public static int getColumnIndexOrThrow(android.database.Cursor c, String name); 545 method public static inline <R> R useCursor(android.database.Cursor, kotlin.jvm.functions.Function1<? super android.database.Cursor,? extends R> block); 546 method public static android.database.Cursor wrapMappedColumns(android.database.Cursor cursor, String[] columnNames, int[] mapping); 547 } 548 549 public final class DBUtil { 550 method @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static android.os.CancellationSignal createCancellationSignal(); 551 method @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static void dropFtsSyncTriggers(androidx.sqlite.db.SupportSQLiteDatabase db); 552 method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static void dropFtsSyncTriggers(androidx.sqlite.SQLiteConnection connection); 553 method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static void foreignKeyCheck(androidx.sqlite.db.SupportSQLiteDatabase db, String tableName); 554 method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static void foreignKeyCheck(androidx.sqlite.SQLiteConnection db, String tableName); 555 method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static <R> R performBlocking(androidx.room.RoomDatabase db, boolean isReadOnly, boolean inTransaction, kotlin.jvm.functions.Function1<? super androidx.sqlite.SQLiteConnection,? extends R> block); 556 method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static suspend <R> Object? performInTransactionSuspending(androidx.room.RoomDatabase db, kotlin.jvm.functions.Function1<? super kotlin.coroutines.Continuation<? super R>,? extends java.lang.Object?> block, kotlin.coroutines.Continuation<? super R>); 557 method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static suspend <R> Object? performSuspending(androidx.room.RoomDatabase db, boolean isReadOnly, boolean inTransaction, kotlin.jvm.functions.Function1<? super androidx.sqlite.SQLiteConnection,? extends R> block, kotlin.coroutines.Continuation<? super R>); 558 method @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static android.database.Cursor query(androidx.room.RoomDatabase db, androidx.sqlite.db.SupportSQLiteQuery sqLiteQuery, boolean maybeCopy); 559 method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static android.database.Cursor query(androidx.room.RoomDatabase db, androidx.sqlite.db.SupportSQLiteQuery sqLiteQuery, boolean maybeCopy, android.os.CancellationSignal? signal); 560 method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) @kotlin.jvm.Throws(exceptionClasses=IOException::class) public static int readVersion(java.io.File databaseFile) throws java.io.IOException; 561 method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static androidx.sqlite.SQLiteConnection toSQLiteConnection(androidx.sqlite.db.SupportSQLiteDatabase db); 562 } 563 564 @RestrictTo({androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX}) public final class FileUtil { 565 method @kotlin.jvm.Throws(exceptionClasses=IOException::class) public static void copy(java.nio.channels.ReadableByteChannel input, java.nio.channels.FileChannel output) throws java.io.IOException; 566 } 567 568 @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public final class FtsTableInfo { 569 ctor public FtsTableInfo(String name, java.util.Set<java.lang.String> columns, String createSql); 570 ctor public FtsTableInfo(String name, java.util.Set<java.lang.String> columns, java.util.Set<java.lang.String> options); 571 method public static androidx.room.util.FtsTableInfo read(androidx.sqlite.db.SupportSQLiteDatabase database, String tableName); 572 method public static androidx.room.util.FtsTableInfo read(androidx.sqlite.SQLiteConnection connection, String tableName); 573 property public java.util.Set<? extends java.lang.String> columns; 574 property public String name; 575 property public java.util.Set<? extends java.lang.String> options; 576 field public static final androidx.room.util.FtsTableInfo.Companion Companion; 577 field public final java.util.Set<java.lang.String> columns; 578 field public final String name; 579 field public final java.util.Set<java.lang.String> options; 580 } 581 582 public static final class FtsTableInfo.Companion { 583 method public androidx.room.util.FtsTableInfo read(androidx.sqlite.db.SupportSQLiteDatabase database, String tableName); 584 method public androidx.room.util.FtsTableInfo read(androidx.sqlite.SQLiteConnection connection, String tableName); 585 } 586 587 @RestrictTo({androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX}) public final class KClassUtil { 588 method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static <T, C> T findAndInstantiateDatabaseImpl(Class<C> klass, optional String suffix); 589 } 590 591 public final class RelationUtil { 592 method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static <K, V> void recursiveFetchArrayMap(androidx.collection.ArrayMap<K,V> map, boolean isRelationCollection, kotlin.jvm.functions.Function1<? super androidx.collection.ArrayMap<K,V>,kotlin.Unit> fetchBlock); 593 method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static <K, V> void recursiveFetchHashMap(java.util.HashMap<K,V> map, boolean isRelationCollection, kotlin.jvm.functions.Function1<? super java.util.HashMap<K,V>,kotlin.Unit> fetchBlock); 594 method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static <V> void recursiveFetchLongSparseArray(androidx.collection.LongSparseArray<V> map, boolean isRelationCollection, kotlin.jvm.functions.Function1<? super androidx.collection.LongSparseArray<V>,kotlin.Unit> fetchBlock); 595 method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static <K, V> void recursiveFetchMap(java.util.Map<K,V> map, boolean isRelationCollection, kotlin.jvm.functions.Function1<? super java.util.Map<K,V>,kotlin.Unit> fetchBlock); 596 } 597 598 public final class SQLiteConnectionUtil { 599 method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static long getLastInsertedRowId(androidx.sqlite.SQLiteConnection connection); 600 method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static int getTotalChangedRows(androidx.sqlite.SQLiteConnection connection); 601 } 602 603 public final class SQLiteStatementUtil { 604 method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static int getColumnIndex(androidx.sqlite.SQLiteStatement stmt, String name); 605 method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static int getColumnIndexOrThrow(androidx.sqlite.SQLiteStatement stmt, String name); 606 method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static androidx.sqlite.SQLiteStatement wrapMappedColumns(androidx.sqlite.SQLiteStatement statement, String[] columnNames, int[] mapping); 607 } 608 609 @RestrictTo({androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX}) public final class StringUtil { 610 method public static void appendPlaceholders(StringBuilder builder, int count); 611 method @Deprecated public static String?[] getEMPTY_STRING_ARRAY(); 612 method public static String? joinIntoString(java.util.List<java.lang.Integer>? input); 613 method @Deprecated public static StringBuilder newStringBuilder(); 614 method public static java.util.List<java.lang.Integer>? splitToIntList(String? input); 615 property @Deprecated public static String?[] EMPTY_STRING_ARRAY; 616 field @Deprecated public static final String?[] EMPTY_STRING_ARRAY; 617 } 618 619 @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public final class TableInfo { 620 ctor @Deprecated public TableInfo(String name, java.util.Map<java.lang.String,androidx.room.util.TableInfo.Column> columns, java.util.Set<androidx.room.util.TableInfo.ForeignKey> foreignKeys); 621 ctor public TableInfo(String name, java.util.Map<java.lang.String,androidx.room.util.TableInfo.Column> columns, java.util.Set<androidx.room.util.TableInfo.ForeignKey> foreignKeys, optional java.util.Set<androidx.room.util.TableInfo.Index>? indices); 622 method @Deprecated public static androidx.room.util.TableInfo read(androidx.sqlite.db.SupportSQLiteDatabase database, String tableName); 623 method public static androidx.room.util.TableInfo read(androidx.sqlite.SQLiteConnection connection, String tableName); 624 property public java.util.Map<java.lang.String,? extends androidx.room.util.TableInfo.Column> columns; 625 property public java.util.Set<? extends androidx.room.util.TableInfo.ForeignKey> foreignKeys; 626 property public java.util.Set<? extends androidx.room.util.TableInfo.Index>? indices; 627 property public String name; 628 field public static final int CREATED_FROM_DATABASE = 2; // 0x2 629 field public static final int CREATED_FROM_ENTITY = 1; // 0x1 630 field public static final int CREATED_FROM_UNKNOWN = 0; // 0x0 631 field public static final androidx.room.util.TableInfo.Companion Companion; 632 field public final java.util.Map<java.lang.String,androidx.room.util.TableInfo.Column> columns; 633 field public final java.util.Set<androidx.room.util.TableInfo.ForeignKey> foreignKeys; 634 field public final java.util.Set<androidx.room.util.TableInfo.Index>? indices; 635 field public final String name; 636 } 637 638 @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static final class TableInfo.Column { 639 ctor @Deprecated public TableInfo.Column(String name, String type, boolean notNull, int primaryKeyPosition); 640 ctor public TableInfo.Column(String name, String type, boolean notNull, int primaryKeyPosition, String? defaultValue, int createdFrom); 641 method public static boolean defaultValueEquals(String current, String? other); 642 method public boolean isPrimaryKey(); 643 property @androidx.room.ColumnInfo.SQLiteTypeAffinity public int affinity; 644 property public int createdFrom; 645 property public String? defaultValue; 646 property public boolean isPrimaryKey; 647 property public String name; 648 property public boolean notNull; 649 property public int primaryKeyPosition; 650 property public String type; 651 field public static final androidx.room.util.TableInfo.Column.Companion Companion; 652 field @androidx.room.ColumnInfo.SQLiteTypeAffinity public final int affinity; 653 field public final int createdFrom; 654 field public final String? defaultValue; 655 field public final String name; 656 field public final boolean notNull; 657 field public final int primaryKeyPosition; 658 field public final String type; 659 } 660 661 public static final class TableInfo.Column.Companion { 662 method public boolean defaultValueEquals(String current, String? other); 663 } 664 665 public static final class TableInfo.Companion { 666 method @Deprecated public androidx.room.util.TableInfo read(androidx.sqlite.db.SupportSQLiteDatabase database, String tableName); 667 method public androidx.room.util.TableInfo read(androidx.sqlite.SQLiteConnection connection, String tableName); 668 property public static int CREATED_FROM_DATABASE; 669 property public static int CREATED_FROM_ENTITY; 670 property public static int CREATED_FROM_UNKNOWN; 671 } 672 673 @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static final class TableInfo.ForeignKey { 674 ctor public TableInfo.ForeignKey(String referenceTable, String onDelete, String onUpdate, java.util.List<java.lang.String> columnNames, java.util.List<java.lang.String> referenceColumnNames); 675 property public java.util.List<? extends java.lang.String> columnNames; 676 property public String onDelete; 677 property public String onUpdate; 678 property public java.util.List<? extends java.lang.String> referenceColumnNames; 679 property public String referenceTable; 680 field public final java.util.List<java.lang.String> columnNames; 681 field public final String onDelete; 682 field public final String onUpdate; 683 field public final java.util.List<java.lang.String> referenceColumnNames; 684 field public final String referenceTable; 685 } 686 687 @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static final class TableInfo.Index { 688 ctor @Deprecated public TableInfo.Index(String name, boolean unique, java.util.List<java.lang.String> columns); 689 ctor public TableInfo.Index(String name, boolean unique, java.util.List<java.lang.String> columns, java.util.List<java.lang.String> orders); 690 property public java.util.List<? extends java.lang.String> columns; 691 property public String name; 692 property public java.util.List<? extends java.lang.String> orders; 693 property public boolean unique; 694 field public static final androidx.room.util.TableInfo.Index.Companion Companion; 695 field public static final String DEFAULT_PREFIX = "index_"; 696 field public final java.util.List<java.lang.String> columns; 697 field public final String name; 698 field public java.util.List<java.lang.String> orders; 699 field public final boolean unique; 700 } 701 702 public static final class TableInfo.Index.Companion { 703 property public static String DEFAULT_PREFIX; 704 } 705 706 @RestrictTo({androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX}) public final class UUIDUtil { 707 method public static java.util.UUID convertByteToUUID(byte[] bytes); 708 method public static byte[] convertUUIDToByte(java.util.UUID uuid); 709 } 710 711 @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public final class ViewInfo { 712 ctor public ViewInfo(String name, String? sql); 713 method @Deprecated public static androidx.room.util.ViewInfo read(androidx.sqlite.db.SupportSQLiteDatabase database, String viewName); 714 method public static androidx.room.util.ViewInfo read(androidx.sqlite.SQLiteConnection connection, String viewName); 715 property public String name; 716 property public String? sql; 717 field public static final androidx.room.util.ViewInfo.Companion Companion; 718 field public final String name; 719 field public final String? sql; 720 } 721 722 public static final class ViewInfo.Companion { 723 method @Deprecated public androidx.room.util.ViewInfo read(androidx.sqlite.db.SupportSQLiteDatabase database, String viewName); 724 method public androidx.room.util.ViewInfo read(androidx.sqlite.SQLiteConnection connection, String viewName); 725 } 726 727} 728 729