本文整理汇总了Java中org.mongojack.DBCursor.hasNext方法的典型用法代码示例。如果您正苦于以下问题:Java DBCursor.hasNext方法的具体用法?Java DBCursor.hasNext怎么用?Java DBCursor.hasNext使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.mongojack.DBCursor
的用法示例。
在下文中一共展示了DBCursor.hasNext方法的14个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: fetch
import org.mongojack.DBCursor; //导入方法依赖的package包/类
@GET
@Path("/list")
public List<Log> fetch(@PathParam("collection") String collection) {
final DBCursor<Log> cursor = entries.find();
final List<Log> l = new ArrayList<Log>();
try {
while (cursor.hasNext()) {
l.add(cursor.next());
}
} finally {
cursor.close();
}
return l;
}
示例2: fetchLatest
import org.mongojack.DBCursor; //导入方法依赖的package包/类
@GET
@Path("/latest")
public List<Log> fetchLatest(@PathParam("collection") String collection) {
final DBCursor<Log> cursor = entries.find().sort(new BasicDBObject("timestamp", -1)).limit(100);
final List<Log> l = new ArrayList<Log>();
try {
while (cursor.hasNext()) {
l.add(cursor.next());
}
} finally {
cursor.close();
}
return l;
}
示例3: fetch
import org.mongojack.DBCursor; //导入方法依赖的package包/类
@GET
public List<MongoDocument> fetch(@PathParam("collection") String collection) {
final JacksonDBCollection<MongoDocument, String> coll = JacksonDBCollection.wrap(mongoDB.getCollection(collection), MongoDocument.class,
String.class);
final DBCursor<MongoDocument> cursor = coll.find();
final List<MongoDocument> l = new ArrayList<>();
try {
while(cursor.hasNext()) {
l.add(cursor.next());
}
}finally {
cursor.close();
}
return l;
}
示例4: checkUsername
import org.mongojack.DBCursor; //导入方法依赖的package包/类
@POST
@Path("/register/check/username")
public Response checkUsername(CheckNameDTO nameDTO) {
Preconditions.checkNotNull(nameDTO);
if(CharMatcher.WHITESPACE.matchesAnyOf(nameDTO.getName())) {
return Response.status(Response.Status.FORBIDDEN).entity("{\"space\":\"true\"}").build();
}
//If these doesn't match, then the username is unsafe
if (!nameDTO.getName().equals(HtmlEscapers.htmlEscaper().escape(nameDTO.getName()))) {
log.warn("Unsafe username " + nameDTO.getName());
return Response.status(Response.Status.FORBIDDEN).entity("{\"invalidChars\":\"true\"}").build();
}
@Cleanup DBCursor<Player> dbPlayer = playerCollection.find(
DBQuery.is("username", nameDTO.getName().trim()), new BasicDBObject());
if (dbPlayer.hasNext()) {
return Response.status(Response.Status.FORBIDDEN).entity("{\"isTaken\":\"true\"}").build();
}
return Response.ok().build();
}
示例5: authenticate
import org.mongojack.DBCursor; //导入方法依赖的package包/类
@Override
public Optional<Player> authenticate(BasicCredentials credentials) {
@Cleanup DBCursor<Player> dbPlayer = playerCollection.find(
DBQuery.is("username", credentials.getUsername()), new BasicDBObject());
if (dbPlayer == null || !dbPlayer.hasNext()) {
return Optional.empty();
}
Player player = dbPlayer.next();
CivSingleton.instance().playerCache().put(player.getId(), player.getUsername());
if (player.getPassword().equals(DigestUtils.sha1Hex(credentials.getPassword()))) {
return Optional.of(player);
}
return Optional.empty();
}
示例6: createPlayer
import org.mongojack.DBCursor; //导入方法依赖的package包/类
@Test
public void createPlayer() throws JsonProcessingException {
@Cleanup DBCursor<Player> foobar = getApp().playerCollection.find(DBQuery.is("username", "foobar"));
if (foobar.hasNext()) {
getApp().playerCollection.removeById(foobar.next().getId());
}
Form form = new Form();
form.param("username", "foobar");
form.param("password", "foobar");
form.param("email", "[email protected]");
URI uri = UriBuilder.fromPath(BASE_URL + "/auth/register").build();
Response response = client().target(uri)
.request()
.post(Entity.form(form));
assertThat(response.getStatus()).isEqualTo(HttpStatus.CREATED_201);
assertThat(response.getLocation().getPath()).contains(uri.getPath());
}
示例7: get
import org.mongojack.DBCursor; //导入方法依赖的package包/类
/**
* Returns a {@link com.eeb.dropwizardmongo.cms.api.BasicPage} using the slug as a query parameter.
* @param slug
* @return {@code BasicPage} object or a 403 if the object can not be found.
*/
@GET
@Produces(MediaType.TEXT_HTML)
@Consumes(MediaType.APPLICATION_JSON)
public BasicPageView get(@PathParam("slug") String slug) {
JacksonDBCollection<BasicPage,String> col = JacksonDBCollection.wrap(mongoDb.getCollection("assets"),
BasicPage.class, String.class);
//Note: MongoJack does not support the AutoClose interface
DBCursor<BasicPage> cursor = col.find(new BasicDBObject("metadata.slug",slug));
try {
if(!cursor.hasNext()) {
Response.ResponseBuilder response = Response.status(Response.Status.FORBIDDEN);
response.entity("{\"message\":\"Object not found\"}");
throw new WebApplicationException(response.build());
} else {
return new BasicPageView(cursor.next());
}
} finally {
cursor.close();
}
}
示例8: findByTags
import org.mongojack.DBCursor; //导入方法依赖的package包/类
public List<CollectorConfiguration> findByTags(List tags) {
final DBCursor<CollectorConfiguration> cursor = dbCollection.find().in("tags", tags);
final List<CollectorConfiguration> result = new ArrayList<>();
while (cursor.hasNext()) {
result.add(cursor.next());
}
return result;
}
示例9: loadAllTags
import org.mongojack.DBCursor; //导入方法依赖的package包/类
public List<String> loadAllTags() {
List<String> tags = new ArrayList<>();
DBCursor cursor = dbCollection.find();
while (cursor.hasNext()) {
CollectorConfiguration collectorConfiguration = (CollectorConfiguration) cursor.next();
List<String> newTags = collectorConfiguration.tags().stream()
.filter(t -> !tags.contains(t))
.collect(Collectors.toList());
tags.addAll(newTags);
}
return tags;
}
示例10: printAllPBFGames
import org.mongojack.DBCursor; //导入方法依赖的package包/类
@Test
public void printAllPBFGames() throws IOException {
@Cleanup DBCursor<PBF> cursor = getApp().pbfCollection.find();
while (cursor.hasNext()) {
PBF pbf = cursor.next();
assertNotNull(pbf);
System.out.println(pbf.toString());
}
}
示例11: chooseTechThenRevealThenDelete
import org.mongojack.DBCursor; //导入方法依赖的package包/类
@Test
public void chooseTechThenRevealThenDelete() throws Exception {
final String techToResearch = "Pottery";
URI uri = UriBuilder.fromPath(String.format(BASE_URL + "/player/%s/tech/choose", getApp().pbfId)).build();
Response response = client().target(uri)
.queryParam("name", techToResearch)
.request(MediaType.APPLICATION_JSON)
.header(HttpHeaders.AUTHORIZATION, getUsernameAndPassEncoded())
.post(null);
assertThat(response.getStatus()).isEqualTo(HttpStatus.NO_CONTENT_204);
PBF pbf = getApp().pbfCollection.findOneById(getApp().pbfId);
Optional<Playerhand> cash1981 = pbf.getPlayers().stream()
.filter(p -> p.getUsername().equals("cash1981"))
.findFirst();
assertTrue(cash1981.isPresent());
assertThat(cash1981.get().getTechsChosen()).isNotEmpty();
assertThat(cash1981.get().getTechsChosen()).contains(new Tech("Pottery", Tech.LEVEL_1, 0));
//reveal it
DBCursor<GameLog> gameLogs = getApp().gameLogCollection.find(DBQuery.is("pbfId", getApp().pbfId));
if (!gameLogs.hasNext()) {
fail("Should have gamelog");
}
while (gameLogs.hasNext()) {
GameLog gameLog = gameLogs.next();
if (gameLog.getPrivateLog() != null && gameLog.getPrivateLog().matches(".*researched Pottery.*")) {
uri = UriBuilder.fromPath(String.format(BASE_URL + "/player/%s/tech/reveal/%s", getApp().pbfId, gameLog.getId())).build();
response = client().target(uri).request()
.header(HttpHeaders.AUTHORIZATION, getUsernameAndPassEncoded())
.post(null);
assertThat(response.getStatus()).isEqualTo(HttpStatus.OK_200);
}
}
//Now remove it
uri = UriBuilder.fromPath(String.format(BASE_URL + "/player/%s/tech/remove", getApp().pbfId)).build();
response = client().target(uri)
.queryParam("name", techToResearch)
.request()
.header(HttpHeaders.AUTHORIZATION, getUsernameAndPassEncoded())
.delete(Response.class);
assertThat(response.getStatus()).isEqualTo(HttpStatus.OK_200);
}
示例12: findByName
import org.mongojack.DBCursor; //导入方法依赖的package包/类
public Tag findByName(String name) {
DBCursor<Tag> cursor = getDbCollection().find(DBQuery.is("name", name));
return cursor.hasNext() ? cursor.next() : null;
}
示例13: findByLogin
import org.mongojack.DBCursor; //导入方法依赖的package包/类
public User findByLogin(String username) {
DBCursor<User> cursor = getDbCollection().find(DBQuery.is("login", username)).limit(1);
return cursor.hasNext() ? cursor.next() : null;
}
示例14: objectOrNull
import org.mongojack.DBCursor; //导入方法依赖的package包/类
/**
* Extracts the object from a {@link DBCursor} representing a search with 0 or 1 results.
* If there are no results, <code>null</code> is returned.
*
* @param cursor a {@link DBCursor}.
* @return a <code>T</code> instance or <code>null</code>.
*/
protected T objectOrNull(DBCursor<T> cursor) {
return cursor.hasNext() ? cursor.next() : null;
}