Я успешно создал таблицу с ORMLite, где, похоже, правильно добавлен столбец uuid в качестве первичного ключа, индекса и т. д.
public class Stat {
@DatabaseField(id = true)
protected UUID uuid = UUID.randomUUID();
...
Теперь я хотел бы иметь возможность использовать всю мощь предоставленного DAO и делать (Stat - это мой класс, который нужно сохранить, getUUID() возвращает UUID):
Stat statClassInstance = new Stat();
RuntimeExceptionDao<Stat, Integer> statDao = getHelper().getStatDataDao();
statDao.deleteById(statClassInstance.getUUID());
Компилятор выдает мне ошибку:
The method deleteById(Integer) in the type RuntimeExceptionDao<Stat,Integer> is not applicable for the arguments (UUID)
Чего мне не хватает, так это как использовать идентификаторы UUID в таких методах, как deleteById, которые принимают целые числа. Я читал, что UUID в качестве идентификатора был включен в ORMLite, но не упоминал, что он заходил только так далеко, что позволял им быть первичными ключами, не поддерживая все эти вспомогательные методы (queryForId, deleteIds) и т. д.