List of usage examples for com.mongodb DBCursor close
@Override public void close()
From source file:me.yyam.mongodbutils.MongoDbOperater.java
private List<Map> cursor2list(DBCursor cursor) { List<Map> list = new ArrayList(); try {/* w ww . j av a 2s .com*/ while (cursor.hasNext()) { DBObject obj = cursor.next(); list.add(obj.toMap()); } } finally { cursor.close(); } return list; }
From source file:mini_mirc_server.miniIRCHandler.java
/** * Add a user to a channel (can check if the channel is a new channel) * @param Username//from w ww . j a va 2 s . co m * @param Channel * @return code */ private int AddChannel(String Username, String Channel) { int ret = 0; try { MongoClient mongoClient = new MongoClient(); DB db = mongoClient.getDB("mirc"); DBCollection coll = db.getCollection("channelCollection"); BasicDBObject query = new BasicDBObject("username", Username).append("channel", Channel); DBCursor cursor = coll.find(query); try { if (cursor.hasNext()) { ret = 1; System.err.println(Username + " has joined Channel : " + Channel + "!"); } else { query = new BasicDBObject("channel", Channel); DBCursor cursor2 = coll.find(query); try { if (!cursor2.hasNext()) { ret = 2; } } finally { cursor2.close(); } BasicDBObject doc = new BasicDBObject("username", Username).append("channel", Channel); coll.insert(doc); System.out.println(Username + " joined Channel : " + Channel); } } finally { cursor.close(); } } catch (UnknownHostException ex) { Logger.getLogger(miniIRCHandler.class.getName()).log(Level.SEVERE, null, ex); } return ret; }
From source file:mini_mirc_server.miniIRCHandler.java
/** * Delete a user from a channel (used in leave method) * @param Channel// ww w .j a va 2s .c om * @param Username * @return code */ private int DeleteChannelUser(String Channel, String Username) { int ret = 0; try { MongoClient mongoClient = new MongoClient(); DB db = mongoClient.getDB("mirc"); DBCollection coll = db.getCollection("channelCollection"); BasicDBObject query = new BasicDBObject("username", Username).append("channel", Channel); DBCursor cursor = coll.find(query); try { while (cursor.hasNext()) { coll.remove(cursor.next()); } } finally { cursor.close(); } } catch (UnknownHostException ex) { Logger.getLogger(miniIRCHandler.class.getName()).log(Level.SEVERE, null, ex); } System.out.println(Username + " has leaved Channel : " + Channel); return ret; }
From source file:mini_mirc_server.miniIRCHandler.java
/** * Delete a user in all channel (used in cleaning) * @param Username//ww w .j a v a 2 s .c o m * @return code */ public int DeleteUserInChannel(String Username) { int ret = 0; try { MongoClient mongoClient = new MongoClient(); DB db = mongoClient.getDB("mirc"); DBCollection coll = db.getCollection("channelCollection"); BasicDBObject query = new BasicDBObject("username", Username); DBCursor cursor = coll.find(query); try { while (cursor.hasNext()) { coll.remove(cursor.next()); } } finally { cursor.close(); } } catch (UnknownHostException ex) { Logger.getLogger(miniIRCHandler.class.getName()).log(Level.SEVERE, null, ex); } System.out.println(Username + " has been deleted in Channel Collection!"); return ret; }
From source file:mini_mirc_server.miniIRCHandler.java
/** * Register a user to the server (used in RegUser) * @param username/*w ww. ja va 2s .co m*/ * @return code */ private int AddUser(String username) { int ret = 0; try { MongoClient mongoClient = new MongoClient(); DB db = mongoClient.getDB("mirc"); DBCollection coll = db.getCollection("activeUser"); BasicDBObject query = new BasicDBObject("username", username); DBCursor cursor = coll.find(query); try { if (cursor.hasNext()) { Date now = new Date(); long timestamp_now = now.getTime(); long treshold = timestamp_now - (1000 * 10); //10 BasicDBObject temp = (BasicDBObject) cursor.next(); Date time_temp = (Date) temp.get("timestamp"); long timestamp_temp = time_temp.getTime(); if (timestamp_temp < treshold) { ret = 2; System.out.println(username + " has joined back!"); } else { ret = 1; System.err.println(username + " has been used !"); } } else { java.util.Date date = new java.util.Date(); BasicDBObject doc = new BasicDBObject("username", username).append("timestamp", date); coll.insert(doc); System.out.println(username + " online !"); } } finally { cursor.close(); } } catch (UnknownHostException ex) { Logger.getLogger(miniIRCHandler.class.getName()).log(Level.SEVERE, null, ex); } return ret; }
From source file:mini_mirc_server.miniIRCHandler.java
private int UpdateLastActive(String username) { int ret = 0;/*from w ww .j a va 2s .c o m*/ try { MongoClient mongoClient = new MongoClient(); DB db = mongoClient.getDB("mirc"); DBCollection coll = db.getCollection("activeUser"); BasicDBObject query = new BasicDBObject("username", username); DBCursor cursor = coll.find(query); try { if (cursor.hasNext()) { DBObject temp = cursor.next(); java.util.Date date = new java.util.Date(); temp.put("timestamp", date); coll.save(temp); } else { java.util.Date date = new java.util.Date(); BasicDBObject doc = new BasicDBObject("username", username).append("timestamp", date); coll.insert(doc); System.out.println(username + " online !"); } } finally { cursor.close(); } } catch (UnknownHostException ex) { Logger.getLogger(miniIRCHandler.class.getName()).log(Level.SEVERE, null, ex); } return 0; }
From source file:mini_mirc_server.miniIRCHandler.java
/** * Moved active user to a passive user (soon to be deleted) * @param username/*from www . ja va2 s. c o m*/ * @return code */ public int SoftDelete(String username) { int ret = 0; try { MongoClient mongoClient = new MongoClient(); DB db = mongoClient.getDB("mirc"); DBCollection coll = db.getCollection("activeUser"); DBCollection coll2 = db.getCollection("passiveUser"); BasicDBObject query = new BasicDBObject("username", username); DBCursor cursor = coll.find(query); try { if (cursor.hasNext()) { DBObject temp = cursor.next(); coll2.insert(temp); coll.remove(temp); } else { ret = 1; } } finally { cursor.close(); } } catch (UnknownHostException ex) { Logger.getLogger(miniIRCHandler.class.getName()).log(Level.SEVERE, null, ex); } return ret; }
From source file:mini_mirc_server.miniIRCHandler.java
public String GetMessage(String username) { String ret = ""; try {/*from w w w.ja v a2 s.c o m*/ MongoClient mongoClient = new MongoClient(); DB db = mongoClient.getDB("mirc"); DBCollection coll = db.getCollection("inbox"); BasicDBObject query = new BasicDBObject("target", username); JSONObject obj = new JSONObject(); JSONArray arr = new JSONArray(); DBCursor cursor = coll.find(query); try { while (cursor.hasNext()) { BasicDBObject temp = (BasicDBObject) cursor.next(); JSONObject sav = new JSONObject(); sav.put("target", temp.getString("target")); sav.put("username", temp.getString("username")); sav.put("channel", temp.getString("channel")); sav.put("message", temp.getString("message")); sav.put("timestamp", temp.getLong("timestamp")); arr.add(sav); coll.remove(temp); } obj.put("msg", arr); ret = obj.toJSONString(); } finally { cursor.close(); } } catch (UnknownHostException ex) { Logger.getLogger(miniIRCHandler.class.getName()).log(Level.SEVERE, null, ex); } UpdateLastActive(username); return ret; }
From source file:mini_mirc_server.miniIRCHandler.java
private int PutMessage(String username, String channelname, String msg) { int ret = 0;/*from w ww . j a va 2 s . c om*/ try { MongoClient mongoClient = new MongoClient(); DB db = mongoClient.getDB("mirc"); DBCollection coll = db.getCollection("inbox"); DBCollection coll2 = db.getCollection("channelCollection"); BasicDBObject query2 = new BasicDBObject("channel", channelname); BasicDBObject query = new BasicDBObject("channel", channelname).append("username", username); DBCursor cursor = coll2.find(query); try { if (cursor.hasNext()) { DBCursor cursor2 = coll2.find(query2); System.out.println("Got message from " + username); try { java.util.Date date = new java.util.Date(); while (cursor2.hasNext()) { ret = 1; BasicDBObject temp = (BasicDBObject) cursor2.next(); String target = temp.get("username").toString(); BasicDBObject put = new BasicDBObject("target", target).append("username", username) .append("channel", channelname).append("message", msg) .append("timestamp", date.getTime()); coll.insert(put); ret = 0; } } finally { cursor2.close(); } } else { ret = 2; System.out.println(username + " not registered to Channel : " + channelname); } } finally { cursor.close(); } } catch (UnknownHostException ex) { ret = 1; Logger.getLogger(miniIRCHandler.class.getName()).log(Level.SEVERE, null, ex); } return ret; }
From source file:mini_mirc_server.miniIRCHandler.java
private int PutMessageWild(String username, String msg) { int ret = 0;//from ww w. ja va2 s . c om try { MongoClient mongoClient = new MongoClient(); DB db = mongoClient.getDB("mirc"); DBCollection coll2 = db.getCollection("channelCollection"); BasicDBObject query = new BasicDBObject("username", username); System.out.println("Wild message appear from " + username + " !"); DBCursor cursor = coll2.find(query); try { while (cursor.hasNext()) { ret = 1; BasicDBObject temp = (BasicDBObject) cursor.next(); String channelname = temp.getString("channel"); ret = PutMessage(username, channelname, msg); } } finally { cursor.close(); } } catch (UnknownHostException ex) { Logger.getLogger(miniIRCHandler.class.getName()).log(Level.SEVERE, null, ex); } return 0; }