title: Room database architecture entity extends error
body: <p>While using android Room i'm having the following entity:</p>
  
  <pre><code>@Entity
  public class Call implements Parcelable {
  
  @PrimaryKey(autoGenerate = true)
  private long id;
  private String filePath;
  private long durationInMillis;
  private String phoneNumber;
  private int isStarred;
  private int isIncoming;
  private long timestampCreated;
  }
  </code></pre>
  
  <p>All works great. But now I want my pojo (Call.class) to extends an Abstract class as following:</p>
  
  <pre><code>@Entity
  public class Call extends BaseViewTypeData implements Parcelable {
  ....
  ....
  }
  </code></pre>
  
  <p>And i'm getting the following error:</p>
  
  <pre><code>Error:Cannot figure out how to save this field into database. You can 
  consider adding a type converter for it.
  Error:Cannot find getter for field.
  Error:Cannot find setter for field.
  Error:Cannot figure out how to read this field from a cursor.
  Error:Cannot find getter for field.
  Error:Cannot find setter for field.
  </code></pre>
  
  <p>The parent (BaseViewTypeData.class) is a simple class to handle multiple view types in a recycler views.</p>
  
  <pre><code>public abstract class BaseViewTypeData extends BaseObservable {
  
  public static final int VIEW_TYPE_CALL = 0;
  public static final int VIEW_TYPE_SETTINGS_HEADER = 1;
  public static final int VIEW_TYPE_SETTINGS_TITLE_SUBTITLE = 2;
  public static final int VIEW_TYPE_SETTINGS_TITLE_SUBTITLE_SWITCH = 3;
  public static final int VIEW_TYPE_SETTINGS_DIVIDER = 4;
  public static final int VIEW_TYPE_SETTINGS_TITLE_SWITCH = 5;
  public static final int VIEW_TYPE_CALL_LOG_DATA = 6;
  public static final int VIEW_TYPE_CHECKBOX_TITLE_SUBTITLE = 7;
  
  @Ignore
  public abstract int getViewType();
  
  }
  </code></pre>