Проблемы с ORMLite и ленивыми коллекциями

Я использую ормлайт в своем проекте для Android. У меня два класса

@DatabaseTable(tableName = "usershows")
public class UserShow {
    @DatabaseField(id = true)
    private Integer showId;

    @ForeignCollectionField(eager = false)
    private ForeignCollection episodes;
    ...
}

@DatabaseTable(tableName = "episodes")
public class Episode {
    @DatabaseField(id = true)
    private Integer episodeId;

    @DatabaseField(foreign = true)
    private UserShow show;
    ...
}

. Я сохраняю свои объекты UserShows, такие как в примере

UserShow show = new UserShow();
userShowDao.create(show);

for (Episode e: eps) {
    e.setShow(show);
    episodeDao.create(e); 
} 

Объект UserShow имеет внешние ленивые эпизоды коллекции, но когда я пытаюсь получить все userShows:

shows = userShowsDao().queryForAll();

Я получаю все объекты шоу с коллекциями эпизодов. Почему так происходит? Коллекция ленива, и я должен получить null или что-то еще, но не коллекцию объекта Episode. Как сделать этот сборник действительно ленивым? Было бы здорово, если бы ORMLite имел возможность получать объекты без ленивых коллекций и инициализировать, когда это действительно нужно. Например, как метод Hibernate.initialize .

Спасибо!

5
задан Gray 21 October 2011 в 13:10
поделиться