public Object dbTest(@QueryParam("queries") Optional<String> queries)
{
final Random random = new Random(System.currentTimeMillis());
if (!queries.isPresent())
{
DBObject query = new BasicDBObject();
query.put("_id", (random.nextInt(10000) + 1));
DBCursor<World> dbCursor = collection.find(query);
return (dbCursor.hasNext()) ? dbCursor.next() : null;
}
Integer totalQueries = Ints.tryParse(queries.orNull());
if (totalQueries != null)
{
if (totalQueries > 500)
{
totalQueries = 500;
}
else if (totalQueries < 1)
{
totalQueries = 1;
}
}
else
{
totalQueries = 1;
}
final World[] worlds = new World[totalQueries];
for (int i = 0; i < totalQueries; i++)
{
DBObject query = new BasicDBObject();
query.put("_id", (random.nextInt(10000) + 1));
DBCursor<World> dbCursor = collection.find(query);
worlds[i] = (dbCursor.hasNext()) ? dbCursor.next() : null;
}
return worlds;
}