Does Room support entity inheritance? : <p>I am trying to migrate our project to use Room, which, by the way, I think is an awesome step forward.</p>

<p>I have the following structure:</p>

<pre><code>public class Entity extends BaseObservable {

    @PrimaryKey(autoGenerate = true)
    @ColumnInfo(name = "_id", typeAffinity = ColumnInfo.INTEGER) 
    private long mId;

    @ColumnInfo(name = "is_dirty")
    @TypeConverters(BooleanTypeConverter.class)
    private boolean mIsDirty;

    // default constructor and accessors omitted for brevity
}

@Entity(tableName = "some_entities")
public class SomeEntity extends Entity {

    @ColumnInfo(name = "type", typeAffinity = ColumnInfo.TEXT)        
    private String mType;

    @ColumnInfo(name = "timestamp", typeAffinity = ColumnInfo.INTEGER)
    private long mTimestamp;

    // constructor, accessors
}
</code></pre>

<p>When I try to compile my project, it fails with no specific error.</p>

<p>If I try to compile it with a flat entity hierarchy, all is well.</p>

<p>So, my main question is:
Does Room support entity inheritance? Will it be able to get the column definitions from the parent <code>Entity</code> class? </p>

<p>I would also like to know if extending <code>BaseObservable</code> (which I need to get the Data Binding working) can cause problems with Room? <code>BaseObservable</code> has one private transient field, so maybe this is causing some issues with the code generation.</p>

<p>Are there any recommended patterns to deal with this, or will I just have to flatten my entity hierarchy?</p>
