# RoomDatabase

added in[version 1.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  
belongs to Maven artifact android.arch.persistence.room:runtime:1.1.0-beta2  
Summary:[Nested Classes](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase#nestedclasses)\|[Fields](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase#lfields)\|[Ctors](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase#pubctors)\|[Methods](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase#pubmethods)\|[Protected Methods](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase#promethods)\|[Inherited Methods](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase#inhmethods)  

# RoomDatabase

| The`android.arch`Architecture Components packages are no longer maintained. They have been superseded by the corresponding[androidx.\*](https://developer.android.com/jetpack/androidx/migrate)packages. See[androidx.room.RoomDatabase](https://developer.android.com/reference/androidx/room/RoomDatabase)instead.

`
public


abstract
class
RoomDatabase
`  
`

extends Object


``


`

|---|--------------------------------------------|
| java.lang.Object                              ||
| ↳ | android.arch.persistence.room.RoomDatabase |

<br />

*** ** * ** ***

Base class for all Room databases. All classes that are annotated with[Database](https://developer.android.com/reference/android/arch/persistence/room/Database)must extend this class.

RoomDatabase provides direct access to the underlying database implementation but you should prefer using[Dao](https://developer.android.com/reference/android/arch/persistence/room/Dao)classes.  
**See also:**

- [Database](https://developer.android.com/reference/android/arch/persistence/room/Database)

## Summary

|                                                                                                                            ### Nested classes                                                                                                                            ||
|----------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| ` class` | [RoomDatabase.Builder](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase.Builder)`<T extends `[RoomDatabase](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase)`>` Builder for RoomDatabase. |
| ` class` | [RoomDatabase.Callback](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase.Callback) Callback for[RoomDatabase](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase).                           |
| ` enum`  | [RoomDatabase.JournalMode](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase.JournalMode) Journal modes for SQLite database.                                                                                                  |
| ` class` | [RoomDatabase.MigrationContainer](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase.MigrationContainer) A container to hold migrations.                                                                                       |

|                                                                                                                          ### Fields                                                                                                                           ||
|-------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------|
| ` protected List<`[RoomDatabase.Callback](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase.Callback)`>` | [mCallbacks](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase#mCallbacks) <br /> |
| ` protected `[SupportSQLiteDatabase](https://developer.android.com/reference/android/arch/persistence/db/SupportSQLiteDatabase)           | [mDatabase](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase#mDatabase) <br />   |

|                                                               ### Public constructors                                                                ||
|---------------------------------------------------------------------------------------------------------------------------------------------------|---|
| ` `[RoomDatabase](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase#RoomDatabase())`() ` Creates a RoomDatabase. |

|                                                                                                                                                                                                                                                                                        ### Public methods                                                                                                                                                                                                                                                                                         ||
|---------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| ` void`                                                                                                                   | ` `[beginTransaction](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase#beginTransaction())`() ` Wrapper for[beginTransaction()](https://developer.android.com/reference/android/arch/persistence/db/SupportSQLiteDatabase#beginTransaction()).                                                                                                                                                                                       |
| ` abstract void`                                                                                                          | ` `[clearAllTables](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase#clearAllTables())`() ` Deletes all rows from all the tables that are registered to this database as[entities()](https://developer.android.com/reference/android/arch/persistence/room/Database#entities()).                                                                                                                                                     |
| ` void`                                                                                                                   | ` `[close](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase#close())`() ` Closes the database if it is already open.                                                                                                                                                                                                                                                                                                                 |
| ` `[SupportSQLiteStatement](https://developer.android.com/reference/android/arch/persistence/db/SupportSQLiteStatement)   | ` `[compileStatement](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase#compileStatement(java.lang.String))`(String sql) ` Wrapper for[compileStatement(String)](https://developer.android.com/reference/android/arch/persistence/db/SupportSQLiteDatabase#compileStatement(java.lang.String)).                                                                                                                                       |
| ` void`                                                                                                                   | ` `[endTransaction](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase#endTransaction())`() ` Wrapper for[endTransaction()](https://developer.android.com/reference/android/arch/persistence/db/SupportSQLiteDatabase#endTransaction()).                                                                                                                                                                                               |
| ` `[InvalidationTracker](https://developer.android.com/reference/android/arch/persistence/room/InvalidationTracker)       | ` `[getInvalidationTracker](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase#getInvalidationTracker())`() ` Returns the invalidation tracker for this database.                                                                                                                                                                                                                                                                      |
| ` `[SupportSQLiteOpenHelper](https://developer.android.com/reference/android/arch/persistence/db/SupportSQLiteOpenHelper) | ` `[getOpenHelper](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase#getOpenHelper())`() ` Returns the SQLite open helper used by this database.                                                                                                                                                                                                                                                                                      |
| ` boolean`                                                                                                                | ` `[inTransaction](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase#inTransaction())`() ` Returns true if current thread is in a transaction.                                                                                                                                                                                                                                                                                        |
| ` void`                                                                                                                   | ` `[init](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase#init(android.arch.persistence.room.DatabaseConfiguration))`(`[DatabaseConfiguration](https://developer.android.com/reference/android/arch/persistence/room/DatabaseConfiguration)` configuration) ` Called by[Room](https://developer.android.com/reference/android/arch/persistence/room/Room)when it is initialized.                                                    |
| ` boolean`                                                                                                                | ` `[isOpen](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase#isOpen())`() ` Returns true if database connection is open and initialized.                                                                                                                                                                                                                                                                                             |
| ` `[Cursor](https://developer.android.com/reference/android/database/Cursor.html)                                         | ` `[query](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase#query(android.arch.persistence.db.SupportSQLiteQuery))`(`[SupportSQLiteQuery](https://developer.android.com/reference/android/arch/persistence/db/SupportSQLiteQuery)` query) ` Wrapper for[query(SupportSQLiteQuery)](https://developer.android.com/reference/android/arch/persistence/db/SupportSQLiteDatabase#query(android.arch.persistence.db.SupportSQLiteQuery)). |
| ` `[Cursor](https://developer.android.com/reference/android/database/Cursor.html)                                         | ` `[query](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase#query(java.lang.String, java.lang.Object[]))`(String query, Object[] args) ` Convenience method to query the database with arguments.                                                                                                                                                                                                                                    |
| ` <V> V`                                                                                                                  | ` `[runInTransaction](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase#runInTransaction(java.util.concurrent.Callable<V>))`(Callable<V> body) ` Executes the specified[Callable](https://developer.android.com/reference/java/util/concurrent/Callable)in a database transaction.                                                                                                                                                    |
| ` void`                                                                                                                   | ` `[runInTransaction](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase#runInTransaction(java.lang.Runnable))`(Runnable body) ` Executes the specified[Runnable](https://developer.android.com/reference/java/lang/Runnable)in a database transaction.                                                                                                                                                                                |
| ` void`                                                                                                                   | ` `[setTransactionSuccessful](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase#setTransactionSuccessful())`() ` Wrapper for[setTransactionSuccessful()](https://developer.android.com/reference/android/arch/persistence/db/SupportSQLiteDatabase#setTransactionSuccessful()).                                                                                                                                                       |

|                                                                                                                                                                                                                                                      ### Protected methods                                                                                                                                                                                                                                                      ||
|------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| ` abstract `[InvalidationTracker](https://developer.android.com/reference/android/arch/persistence/room/InvalidationTracker)       | ` `[createInvalidationTracker](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase#createInvalidationTracker())`() ` Called when the RoomDatabase is created.                                                                                                                                                                                                |
| ` abstract `[SupportSQLiteOpenHelper](https://developer.android.com/reference/android/arch/persistence/db/SupportSQLiteOpenHelper) | ` `[createOpenHelper](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase#createOpenHelper(android.arch.persistence.room.DatabaseConfiguration))`(`[DatabaseConfiguration](https://developer.android.com/reference/android/arch/persistence/room/DatabaseConfiguration)` config) ` Creates the open helper to access the database.                           |
| ` void`                                                                                                                            | ` `[internalInitInvalidationTracker](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase#internalInitInvalidationTracker(android.arch.persistence.db.SupportSQLiteDatabase))`(`[SupportSQLiteDatabase](https://developer.android.com/reference/android/arch/persistence/db/SupportSQLiteDatabase)` db) ` Called by the generated code when database is open. |

| ### Inherited methods |
|-----------------------|---|
| From class` java.lang.Object ` |-------------------|-------------------------------| | ` Object`         | ` clone() `                   | | ` boolean`        | ` equals(Object arg0) `       | | ` void`           | ` finalize() `                | | ` final Class<?>` | ` getClass() `                | | ` int`            | ` hashCode() `                | | ` final void`     | ` notify() `                  | | ` final void`     | ` notifyAll() `               | | ` String`         | ` toString() `                | | ` final void`     | ` wait(long arg0, int arg1) ` | | ` final void`     | ` wait(long arg0) `           | | ` final void`     | ` wait() `                    | ||

## Fields

### mCallbacks

added in[version 1.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
List<RoomDatabase.Callback> mCallbacks
```

<br />

<br />

### mDatabase

added in[version 1.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
SupportSQLiteDatabase mDatabase
```

<br />

<br />

## Public constructors

### RoomDatabase

added in[version 1.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
RoomDatabase ()
```

Creates a RoomDatabase.

You cannot create an instance of a database, instead, you should acquire it via[databaseBuilder(Context, Class, String)](https://developer.android.com/reference/android/arch/persistence/room/Room#databaseBuilder(android.content.Context, java.lang.Class<T>, java.lang.String))or[inMemoryDatabaseBuilder(Context, Class)](https://developer.android.com/reference/android/arch/persistence/room/Room#inMemoryDatabaseBuilder(android.content.Context, java.lang.Class<T>)).

<br />

## Public methods

### beginTransaction

added in[version 1.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
void beginTransaction ()
```

Wrapper for[beginTransaction()](https://developer.android.com/reference/android/arch/persistence/db/SupportSQLiteDatabase#beginTransaction()).

<br />

### clearAllTables

added in[version 1.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
void clearAllTables ()
```

Deletes all rows from all the tables that are registered to this database as[entities()](https://developer.android.com/reference/android/arch/persistence/room/Database#entities()).

This does NOT reset the auto-increment value generated by[autoGenerate()](https://developer.android.com/reference/android/arch/persistence/room/PrimaryKey#autoGenerate()).

After deleting the rows, Room will set a WAL checkpoint and run VACUUM. This means that the data is completely erased. The space will be reclaimed by the system if the amount surpasses the threshold of database file size.

<br />

**See also:**

- [Database File Format](https://www.sqlite.org/fileformat.html)  

### close

added in[version 1.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
void close ()
```

Closes the database if it is already open.

<br />

### compileStatement

added in[version 1.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
SupportSQLiteStatement compileStatement (String sql)
```

Wrapper for[compileStatement(String)](https://developer.android.com/reference/android/arch/persistence/db/SupportSQLiteDatabase#compileStatement(java.lang.String)).

<br />

|                  Parameters                   ||
|-------|----------------------------------------|
| `sql` | `String`: The query to compile. <br /> |

|                                                                     Returns                                                                      ||
|----------------------------------------------------------------------------------------------------------------------|----------------------------|
| [SupportSQLiteStatement](https://developer.android.com/reference/android/arch/persistence/db/SupportSQLiteStatement) | The compiled query. <br /> |

### endTransaction

added in[version 1.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
void endTransaction ()
```

Wrapper for[endTransaction()](https://developer.android.com/reference/android/arch/persistence/db/SupportSQLiteDatabase#endTransaction()).

<br />

### getInvalidationTracker

added in[version 1.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
InvalidationTracker getInvalidationTracker ()
```

Returns the invalidation tracker for this database.

You can use the invalidation tracker to get notified when certain tables in the database are modified.

<br />

|                                                                               Returns                                                                               ||
|------------------------------------------------------------------------------------------------------------------|---------------------------------------------------|
| [InvalidationTracker](https://developer.android.com/reference/android/arch/persistence/room/InvalidationTracker) | The invalidation tracker for the database. <br /> |

### getOpenHelper

added in[version 1.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
SupportSQLiteOpenHelper getOpenHelper ()
```

Returns the SQLite open helper used by this database.

<br />

|                                                                                   Returns                                                                                    ||
|------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------|
| [SupportSQLiteOpenHelper](https://developer.android.com/reference/android/arch/persistence/db/SupportSQLiteOpenHelper) | The SQLite open helper used by this database. <br /> |

### inTransaction

added in[version 1.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
boolean inTransaction ()
```

Returns true if current thread is in a transaction.

<br />

|                                           Returns                                            ||
|-----------|-----------------------------------------------------------------------------------|
| `boolean` | True if there is an active transaction in current thread, false otherwise. <br /> |

**See also:**

- [inTransaction()](https://developer.android.com/reference/android/arch/persistence/db/SupportSQLiteDatabase#inTransaction())  

### init

added in[version 1.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
void init (DatabaseConfiguration configuration)
```

Called by[Room](https://developer.android.com/reference/android/arch/persistence/room/Room)when it is initialized.

<br />

|                                  Parameters                                  ||
|-----------------|-------------------------------------------------------------|
| `configuration` | `DatabaseConfiguration`: The database configuration. <br /> |

### isOpen

added in[version 1.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
boolean isOpen ()
```

Returns true if database connection is open and initialized.

<br />

|                                   Returns                                   ||
|-----------|------------------------------------------------------------------|
| `boolean` | true if the database connection is open, false otherwise. <br /> |

### query

added in[version 1.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
Cursor query (SupportSQLiteQuery query)
```

Wrapper for[query(SupportSQLiteQuery)](https://developer.android.com/reference/android/arch/persistence/db/SupportSQLiteDatabase#query(android.arch.persistence.db.SupportSQLiteQuery)).

<br />

|                                                   Parameters                                                   ||
|---------|-------------------------------------------------------------------------------------------------------|
| `query` | `SupportSQLiteQuery`: The Query which includes the SQL and a bind callback for bind arguments. <br /> |

|                                                   Returns                                                   ||
|--------------------------------------------------------------------------------|-----------------------------|
| [Cursor](https://developer.android.com/reference/android/database/Cursor.html) | Result of the query. <br /> |

### query

added in[version 1.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
Cursor query (String query, 
                Object[] args)
```

Convenience method to query the database with arguments.

<br />

|                                   Parameters                                   ||
|---------|-----------------------------------------------------------------------|
| `query` | `String`: The sql query <br />                                        |
| `args`  | `Object`: The bind arguments for the placeholders in the query <br /> |

|                                                                          Returns                                                                          ||
|--------------------------------------------------------------------------------|---------------------------------------------------------------------------|
| [Cursor](https://developer.android.com/reference/android/database/Cursor.html) | A Cursor obtained by running the given query in the Room database. <br /> |

### runInTransaction

added in[version 1.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
V runInTransaction (Callable<V> body)
```

Executes the specified[Callable](https://developer.android.com/reference/java/util/concurrent/Callable)in a database transaction. The transaction will be marked as successful unless an exception is thrown in the[Callable](https://developer.android.com/reference/java/util/concurrent/Callable).

<br />

|                        Parameters                        ||
|--------|--------------------------------------------------|
| `body` | `Callable`: The piece of code to execute. <br /> |

|                                                          Returns                                                          ||
|-----|----------------------------------------------------------------------------------------------------------------------|
| `V` | The value returned from the[Callable](https://developer.android.com/reference/java/util/concurrent/Callable). <br /> |

### runInTransaction

added in[version 1.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
void runInTransaction (Runnable body)
```

Executes the specified[Runnable](https://developer.android.com/reference/java/lang/Runnable)in a database transaction. The transaction will be marked as successful unless an exception is thrown in the[Runnable](https://developer.android.com/reference/java/lang/Runnable).

<br />

|                        Parameters                        ||
|--------|--------------------------------------------------|
| `body` | `Runnable`: The piece of code to execute. <br /> |

### setTransactionSuccessful

added in[version 1.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
void setTransactionSuccessful ()
```

Wrapper for[setTransactionSuccessful()](https://developer.android.com/reference/android/arch/persistence/db/SupportSQLiteDatabase#setTransactionSuccessful()).

<br />

## Protected methods

### createInvalidationTracker

added in[version 1.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
InvalidationTracker createInvalidationTracker ()
```

Called when the RoomDatabase is created.

This is already implemented by the generated code.

<br />

|                                                                           Returns                                                                           ||
|------------------------------------------------------------------------------------------------------------------|-------------------------------------------|
| [InvalidationTracker](https://developer.android.com/reference/android/arch/persistence/room/InvalidationTracker) | Creates a new InvalidationTracker. <br /> |

### createOpenHelper

added in[version 1.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
SupportSQLiteOpenHelper createOpenHelper (DatabaseConfiguration config)
```

Creates the open helper to access the database. Generated class already implements this method. Note that this method is called when the RoomDatabase is initialized.

<br />

|                                    Parameters                                     ||
|----------|-------------------------------------------------------------------------|
| `config` | `DatabaseConfiguration`: The configuration of the Room database. <br /> |

|                                                                                                  Returns                                                                                                  ||
|------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------|
| [SupportSQLiteOpenHelper](https://developer.android.com/reference/android/arch/persistence/db/SupportSQLiteOpenHelper) | A new SupportSQLiteOpenHelper to be used while connecting to the database. <br /> |

### internalInitInvalidationTracker

added in[version 1.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
void internalInitInvalidationTracker (SupportSQLiteDatabase db)
```

Called by the generated code when database is open.

You should never call this method manually.

<br />

|                          Parameters                          ||
|------|--------------------------------------------------------|
| `db` | `SupportSQLiteDatabase`: The database instance. <br /> |

-

  ## Annotations

  - [ColumnInfo](https://developer.android.com/reference/android/arch/persistence/room/ColumnInfo)
  - [ColumnInfo.Collate](https://developer.android.com/reference/android/arch/persistence/room/ColumnInfo.Collate)
  - [ColumnInfo.SQLiteTypeAffinity](https://developer.android.com/reference/android/arch/persistence/room/ColumnInfo.SQLiteTypeAffinity)
  - [Dao](https://developer.android.com/reference/android/arch/persistence/room/Dao)
  - [Database](https://developer.android.com/reference/android/arch/persistence/room/Database)
  - [Delete](https://developer.android.com/reference/android/arch/persistence/room/Delete)
  - [Embedded](https://developer.android.com/reference/android/arch/persistence/room/Embedded)
  - [Entity](https://developer.android.com/reference/android/arch/persistence/room/Entity)
  - [ForeignKey](https://developer.android.com/reference/android/arch/persistence/room/ForeignKey)
  - [ForeignKey.Action](https://developer.android.com/reference/android/arch/persistence/room/ForeignKey.Action)
  - [Ignore](https://developer.android.com/reference/android/arch/persistence/room/Ignore)
  - [Index](https://developer.android.com/reference/android/arch/persistence/room)
  - [Insert](https://developer.android.com/reference/android/arch/persistence/room/Insert)
  - [OnConflictStrategy](https://developer.android.com/reference/android/arch/persistence/room/OnConflictStrategy)
  - [PrimaryKey](https://developer.android.com/reference/android/arch/persistence/room/PrimaryKey)
  - [Query](https://developer.android.com/reference/android/arch/persistence/room/Query)
  - [RawQuery](https://developer.android.com/reference/android/arch/persistence/room/RawQuery)
  - [Relation](https://developer.android.com/reference/android/arch/persistence/room/Relation)
  - [SkipQueryVerification](https://developer.android.com/reference/android/arch/persistence/room/SkipQueryVerification)
  - [Transaction](https://developer.android.com/reference/android/arch/persistence/room/Transaction)
  - [TypeConverter](https://developer.android.com/reference/android/arch/persistence/room/TypeConverter)
  - [TypeConverters](https://developer.android.com/reference/android/arch/persistence/room/TypeConverters)
  - [Update](https://developer.android.com/reference/android/arch/persistence/room/Update)
-

  ## Classes

  - [DatabaseConfiguration](https://developer.android.com/reference/android/arch/persistence/room/DatabaseConfiguration)
  - [InvalidationTracker](https://developer.android.com/reference/android/arch/persistence/room/InvalidationTracker)
  - [InvalidationTracker.Observer](https://developer.android.com/reference/android/arch/persistence/room/InvalidationTracker.Observer)
  - [Room](https://developer.android.com/reference/android/arch/persistence/room/Room)
  - [RoomDatabase](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase)
  - [RoomDatabase.Builder](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase.Builder)
  - [RoomDatabase.Callback](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase.Callback)
  - [RoomDatabase.MigrationContainer](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase.MigrationContainer)
  - [RoomWarnings](https://developer.android.com/reference/android/arch/persistence/room/RoomWarnings)
  - [RxRoom](https://developer.android.com/reference/android/arch/persistence/room/RxRoom)
-

  ## Enums

  - [RoomDatabase.JournalMode](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase.JournalMode)
-

  ## Exceptions

  - [EmptyResultSetException](https://developer.android.com/reference/android/arch/persistence/room/EmptyResultSetException)