当前位置: 首页>>代码示例>>Java>>正文


Java QueryEnumerator.hasNext方法代码示例

本文整理汇总了Java中com.couchbase.lite.QueryEnumerator.hasNext方法的典型用法代码示例。如果您正苦于以下问题:Java QueryEnumerator.hasNext方法的具体用法?Java QueryEnumerator.hasNext怎么用?Java QueryEnumerator.hasNext使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在com.couchbase.lite.QueryEnumerator的用法示例。


在下文中一共展示了QueryEnumerator.hasNext方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: loadInBackground

import com.couchbase.lite.QueryEnumerator; //导入方法依赖的package包/类
@Override
public List<QueryRow> loadInBackground() {
	try {
		List<QueryRow> ret = new ArrayList<QueryRow>();
		QueryEnumerator enumerator = query.run();
		if (enumerator != null) { 
			while (enumerator.hasNext()) {
				QueryRow row = enumerator.next();
				ret.add(row);
			}
		}
		return ret;
	} catch (CouchbaseLiteException e) {
		throw new RuntimeException(e);
	}
}
 
开发者ID:eduyayo,项目名称:gamesboard,代码行数:17,代码来源:DataLoader.java

示例2: getContactDocumentByEmail

import com.couchbase.lite.QueryEnumerator; //导入方法依赖的package包/类
public Document getContactDocumentByEmail(String email) {
    Query query = contactView.createQuery();
    query.setStartKey(email);
    query.setEndKey(email);
    QueryEnumerator enumerator;
    try {
        enumerator = query.run();
    } catch (CouchbaseLiteException e) {
        throw new RuntimeException(e);
    }
    Document ret = null;
    if (enumerator.hasNext()) {
        QueryRow row = enumerator.next();
        ret = row.getDocument();
    }
    return ret;
}
 
开发者ID:eduyayo,项目名称:gamesboard,代码行数:18,代码来源:DataServiceImpl.java

示例3: getMessagesByGame

import com.couchbase.lite.QueryEnumerator; //导入方法依赖的package包/类
public List<Document> getMessagesByGame(String modelId) {
    Query query = messageByGameView.createQuery();
    query.setStartKey(modelId);
    query.setEndKey(modelId);
    QueryEnumerator enumerator;
    try {
        enumerator = query.run();
    } catch (CouchbaseLiteException e) {
        throw new RuntimeException(e);
    }
    List<Document> ret = new ArrayList<>();
    while (enumerator.hasNext()) {
        QueryRow row = enumerator.next();
        ret.add(row.getDocument());
    }
    Collections.sort(ret, new Comparator<Document>() {
        @Override
        public int compare(Document left, Document right) {
            return ((String) left.getProperty("id")).compareTo((String) right.getProperty("id"));
        }
    });
    return ret;
}
 
开发者ID:eduyayo,项目名称:gamesboard,代码行数:24,代码来源:DataServiceImpl.java

示例4: getGameDocumentByModelId

import com.couchbase.lite.QueryEnumerator; //导入方法依赖的package包/类
public Document getGameDocumentByModelId(String id) {
    Query query = gameView.createQuery();
    query.setStartKey(id);
    query.setEndKey(id);
    query.setEndKey(id);
    QueryEnumerator enumerator;
    try {
        enumerator = query.run();
    } catch (CouchbaseLiteException e) {
        throw new RuntimeException(e);
    }
    Document ret = null;
    if (enumerator.hasNext()) {
        QueryRow row = enumerator.next();
        ret = row.getDocument();
    }
    return ret;
}
 
开发者ID:eduyayo,项目名称:gamesboard,代码行数:19,代码来源:DataServiceImpl.java

示例5: searchPostsByAuthor

import com.couchbase.lite.QueryEnumerator; //导入方法依赖的package包/类
@Override
protected List<Post> searchPostsByAuthor(final Author author) {
    List<Post> postList = new ArrayList<>();
    try {
        com.couchbase.lite.View viewsByAuthor = couchDbPost.getView("viewsByAuthor");
        viewsByAuthor.setMap(new Mapper() {
            @Override
            public void map(Map<String, Object> document, Emitter emitter) {
                emitter.emit(author.getKey(), document);

            }
        }, "1.0");


        Query query = viewsByAuthor.createQuery();
        List<Object> keyArray = new ArrayList<>();
        keyArray.add(author.getKey());
        query.setKeys(keyArray);

        QueryEnumerator rowEnum = query.run();
        for (; rowEnum.hasNext(); ) {
            QueryRow row = rowEnum.next();
            postList.add(fillPost(row.getDocument(), row.getDocumentId()));
        }
    } catch (Exception e){
        e.printStackTrace();
    }
    return postList;
}
 
开发者ID:AmeliaPessoa,项目名称:DBPA,代码行数:30,代码来源:CouchbaseLite.java

示例6: getAllDocumentIds

import com.couchbase.lite.QueryEnumerator; //导入方法依赖的package包/类
List<String> getAllDocumentIds(String databaseId) {
    Timber.d("getAllDocumentIds: %s", databaseId);
    ManagerOptions managerOptions = new ManagerOptions();
    managerOptions.setReadOnly(true);

    DatabaseOptions databaseOptions = new DatabaseOptions();
    databaseOptions.setReadOnly(true);

    com.couchbase.lite.Database database = null;
    try {
        // TODO: Create LiveQuery on this?
        // TODO: Open manager/database and cache result - could be expensive operation
        Manager manager = new Manager(new AndroidContext(mContext), managerOptions);
        database = manager.openDatabase(databaseId, databaseOptions);

        List<String> docIds = new ArrayList<>();
        QueryEnumerator result = database.createAllDocumentsQuery().run();
        while (result.hasNext()) {
            QueryRow row = result.next();
            docIds.add(row.getDocumentId());
        }

        return docIds;
    } catch (Exception e) {
        return Collections.emptyList();
    } finally {
        if (database != null) {
            database.close();
        }
    }
}
 
开发者ID:RobotPajamas,项目名称:Stetho-Couchbase,代码行数:32,代码来源:CouchbasePeerManager.java

示例7: delete

import com.couchbase.lite.QueryEnumerator; //导入方法依赖的package包/类
private void delete() {
    try {
        QueryEnumerator en = database.createAllDocumentsQuery().run();
        while (en.hasNext()) {
            QueryRow row = en.next();
            row.getDocument().delete();
        }
    } catch (CouchbaseLiteException e) {
        throw new RuntimeException("Cannot delete object from CouchBase Lite.");
    }
}
 
开发者ID:realm,项目名称:realm-java-benchmarks,代码行数:12,代码来源:TestCouch.java

示例8: deleteAll

import com.couchbase.lite.QueryEnumerator; //导入方法依赖的package包/类
private void deleteAll() throws CouchbaseLiteException {
    // query all documents, mark them as deleted
    Query query = database.createAllDocumentsQuery();
    QueryEnumerator result = query.run();
    database.beginTransaction();
    while (result.hasNext()) {
        QueryRow row = result.next();
        row.getDocument().purge();
    }
    database.endTransaction(true);
}
 
开发者ID:greenrobot,项目名称:android-database-performance,代码行数:12,代码来源:PerfTestCouchbase.java

示例9: getContactAdapter

import com.couchbase.lite.QueryEnumerator; //导入方法依赖的package包/类
public ArrayAdapter<Map<String, Object>> getContactAdapter() {
 	if (adapter == null) {
  	QueryEnumerator runner = null;
  	try {
	runner = dataService.getEffectiveContactQuery().run();
} catch (CouchbaseLiteException e) {
	throw new RuntimeException(e);
}
  	adapter = new ArrayAdapter<Map<String, Object>>(this,
		android.R.layout.simple_spinner_item,
		android.R.id.text1) {
	@Override
	public View getView(int position, View convertView,
			ViewGroup parent) {
		View view = convertView;
		if (view == null) {
			view = super.getView(position, convertView, parent);
		}
		Map<String, Object> item = getItem(position);
		((TextView) view.findViewById(android.R.id.text1)).setText(item.get("email").toString());
		return view;
	};
	@Override
	public View getDropDownView(int position,
			View convertView, ViewGroup parent) {
		View view = convertView;
		if (view == null) {
			view = super.getDropDownView(position, convertView, parent);
		}
		Map<String, Object> item = getItem(position);
		((TextView) view.findViewById(android.R.id.text1)).setText(item.get("email").toString());
		return view; //TODO Gotta add the dropdowns to a scrollable view different than a ListView because there's almost no way of finding the pos and item in the father to
	}
  	};
  	adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
  	while (runner.hasNext()) {
  		adapter.add(runner.next().getDocument().getProperties());
  	}
 	}
 	return adapter;
 }
 
开发者ID:eduyayo,项目名称:gamesboard,代码行数:42,代码来源:NewGameActivity.java

示例10: indexedStringEntityQueriesRun

import com.couchbase.lite.QueryEnumerator; //导入方法依赖的package包/类
private void indexedStringEntityQueriesRun(View indexedStringView, int count)
        throws CouchbaseLiteException {
    // create entities
    String[] fixedRandomStrings = StringGenerator.createFixedRandomStrings(count);
    database.beginTransaction();
    for (int i = 0; i < count; i++) {
        Document entity = database.getDocument(String.valueOf(i));
        Map<String, Object> properties = new HashMap<>();
        properties.put("indexedString", fixedRandomStrings[i]);
        entity.putProperties(properties);
    }
    database.endTransaction(true);
    log("Built and inserted entities.");

    // query for entities by indexed string at random
    int[] randomIndices = StringGenerator.getFixedRandomIndices(getQueryCount(), count - 1);

    // clear the document cache to force loading properties from the database
    database.clearDocumentCache();

    startClock();
    for (int i = 0; i < getQueryCount(); i++) {
        int nextIndex = randomIndices[i];
        List<Object> keyToQuery = new ArrayList<>(1);
        keyToQuery.add(fixedRandomStrings[nextIndex]);

        Query query = indexedStringView.createQuery();
        query.setKeys(keyToQuery);
        QueryEnumerator result = query.run();
        while (result.hasNext()) {
            QueryRow row = result.next();
            //noinspection unused
            Document document = row.getDocument();
        }
    }
    stopClock(Benchmark.Type.QUERY_INDEXED);

    // delete all entities
    deleteAll();
    log("Deleted all entities.");
}
 
开发者ID:greenrobot,项目名称:android-database-performance,代码行数:42,代码来源:PerfTestCouchbase.java


注:本文中的com.couchbase.lite.QueryEnumerator.hasNext方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。