Java源码示例:com.raizlabs.android.dbflow.list.FlowQueryList

示例1
public void putCollections(LinkedHashMap<String, List<EpisodeBaseModel>> collections) {
    Log.d(TAG, "store collections into db");
    int i = 0;
    FlowQueryList<EpisodeBaseModel> query = new FlowQueryList<>(EpisodeBaseModel.class);
    query.beginTransaction();
    for (Map.Entry<String, List<EpisodeBaseModel>> collection : collections.entrySet()) {
        Log.d(TAG, "Adding collection: " + collection.getKey() + " => " + collection.getValue().size());
        updateProgress("Loading " + collection.getKey() + "...");
        for (EpisodeBaseModel ep : collection.getValue()) {
            EpisodeBaseModel model = new EpisodeBaseModel();
            model.merge(ep);
            model.DATA_TYPE = TYPE_COLLECTIONS;
            model.DATA_COLLECTION_KEY = collection.getKey();
            model.DATA_COLLECTION_INDEX = i++;
            model.save();
        }
    }
    query.endTransactionAndNotify();
}
 
示例2
@NonNull
@Override
public FlowQueryList<TModel> flowQueryList() {
    return new FlowQueryList.Builder<>(getTable())
            .cacheModels(cachingEnabled)
            .modelQueriable(this)
            .build();
}
 
示例3
@Override
public void provideProvinces(final AddressReceiver<Province> addressReceiver) {
    final FlowQueryList<Province> provinceQueryList = SQLite.select()
            .from(Province.class)
            .flowQueryList();
    addressReceiver.send(new ArrayList<>(provinceQueryList));
}
 
示例4
@Override
public void provideCitiesWith(int provinceId, final AddressReceiver<City> addressReceiver) {
    final FlowQueryList<City> cityQueryList = SQLite.select()
            .from(City.class)
            .where(City_Table.province_id.eq(provinceId))
            .flowQueryList();
    addressReceiver.send(new ArrayList<>(cityQueryList));
}
 
示例5
@Override
public void provideCountiesWith(int cityId, final AddressReceiver<County> addressReceiver) {
    final FlowQueryList<County> countyQueryList = SQLite.select()
            .from(County.class)
            .where(County_Table.city_id.eq(cityId))
            .flowQueryList();
    addressReceiver.send(new ArrayList<>(countyQueryList));
}
 
示例6
@Override
public void provideStreetsWith(int countyId, final AddressReceiver<Street> addressReceiver) {
    final FlowQueryList<Street> streetQueryList = SQLite.select()
            .from(Street.class)
            .where(Street_Table.county_id.eq(countyId))
            .flowQueryList();
    addressReceiver.send(new ArrayList<>(streetQueryList));
}
 
示例7
public void putShows(Collection<EpisodeBaseModel> shows) {
    Log.d(TAG, "store shows into db");
    FlowQueryList<EpisodeBaseModel> query = new FlowQueryList<>(EpisodeBaseModel.class);
    query.beginTransaction();
    for (EpisodeBaseModel ep : shows) {
        EpisodeBaseModel model = new EpisodeBaseModel();
        model.merge(ep);
        model.DATA_TYPE = TYPE_EPISODES;
        model.save();
    }
    query.endTransactionAndNotify();
}
 
示例8
public void putEpisodes(Collection<EpisodeBaseModel> episodes) {
    Log.d(TAG, "store episodes into db");
    FlowQueryList<EpisodeBaseModel> query = new FlowQueryList<>(EpisodeBaseModel.class);
    query.beginTransaction();
    for (EpisodeBaseModel ep : episodes) {
        EpisodeBaseModel model = new EpisodeBaseModel();
        model.merge(ep);
        model.DATA_TYPE = TYPE_SHOWS;
        model.save();
    }
    query.endTransactionAndNotify();
}
 
示例9
public void clearCache() {
    Log.d(TAG, "Clear db");
    FlowQueryList<EpisodeBaseModel> query = new FlowQueryList<>(EpisodeBaseModel.class);
    query.clear();
}
 
示例10
/**
 * @return A cursor-backed {@link List} that handles conversion, retrieval, caching, content changes,
 * and more.
 */
@NonNull
FlowQueryList<TModel> flowQueryList();