ObjectBox不能使用继承构建项目

时间:2017-10-15 12:54:15

标签: android greendao objectbox

我创建了两个对象。一个扩展另一个。 父对象具有在ObjectBox文档中编写的ID,但我无法使用以下错误构建项目:

Error:[ObjectBox] Code generation failed: No ID property found for "Entity FastCacheData" (use @Id on a property of type long)

CacheData:

@Entity
public class CacheData {
    @Id
    private long id;
    @Index
    private String key;
    @Index
    private Date expirationDate;
    private Date lastUpdated;

    public CacheData(String key, Date expirationDate) {
        this.lastUpdated = new Date();
        this.key = key;
        this.expirationDate = expirationDate;
    }
}

FastCacheData:

@Entity
public class FastCacheData extends CacheData {
    private String fullName;
    private String thumbnailUrl;
    private boolean isSpam;

    @Convert(converter = DataSource.DataSourceConverter.class, dbType = Integer.class)
    private DataSource photoDataSource;

    @Convert(converter = DataSource.DataSourceConverter.class, dbType = Integer.class)
    private DataSource nameDataSource;

    public FastCacheData(String key, Date expirationDate, String fullName, DataSource nameDataSource, String thumbnailUrl, DataSource photoDataSource, boolean isSpam) {
        super(key, expirationDate);
        this.fullName = fullName;
        this.nameDataSource = nameDataSource;
        this.thumbnailUrl = thumbnailUrl;
        this.photoDataSource = photoDataSource;
        this.isSpam = isSpam;
    }
}

1 个答案:

答案 0 :(得分:1)

目前不支持实体的多态性,但有一个feature request