List of usage examples for com.mongodb BasicDBObject get
public Object get(final String key)
From source file:AdminServer.ServiceS.java
private void check_login(LoginS order) { String name = order.getName(); String pwd = order.getPwd();//from w ww .j a va 2s . c o m BasicDBObject user = new BasicDBObject().append("name", name); DBObject obj = admins.findOne(user); try { if (obj == null) { output.writeObject(new LoginS(false, "NO_SUCH_USER")); output.flush(); } else if ((boolean) obj.get("checked")) { output.writeObject(new LoginS(false, "USER_CHECKED")); output.flush(); } else if ((boolean) obj.get("locked")) { output.writeObject(new LoginS(false, "USER_LOCKED")); output.flush(); } else if (!pwd.equals(obj.get("pwd").toString())) { output.writeObject(new LoginS(false, "WRONG_PASSWORD")); output.flush(); } else { BasicDBObject setting = new BasicDBObject().append("checked", true).append("Last_Time", this.formatter.format(new Date())); this.currentUser = user; admins.update(user, new BasicDBObject().append("$set", setting)); output.writeObject(new LoginS(true, obj.get("Last_Time").toString())); output.flush(); System.out.println(user.get("name") + " logs @" + this.serialNum); } } catch (IOException ex) { Logger.getLogger(ServiceS.class.getName()).log(Level.SEVERE, null, ex); } }
From source file:at.oneminutedistraction.mongodbrealm.UserCollection.java
public String[] groups(BasicDBObject user) { if (null == user) return (null); BasicDBList groups = (BasicDBList) user.get(ATTR_GROUPS); if (null == groups) return (new String[] {}); List<String> g = groups.stream().map(e -> { return (e.toString()); }).collect(Collectors.toList()); return (g.toArray(new String[g.size()])); }
From source file:biopolis.headless.BiopolisSegmentationManagement.java
public void initialPhase() throws SQLException { this.occurs = 0; BasicDBObject master = new BasicDBObject(); master.put("master", "master"); master.put("biopolisttl", new java.util.Date()); dbcol.insert(master);/* w w w . j a v a 2 s . c o m*/ id = (ObjectId) master.get("_id"); byte[] bytes = id.toByteArray(); biopiolisid = Base64.encodeBase64String(bytes); }
From source file:br.bireme.scl.BrokenLinks.java
License:Open Source License
private static List<Integer> getIsisCcFields(final String mstName, final DBCollection coll) throws IOException { assert mstName != null; assert coll != null; final List<Integer> lst = new ArrayList<Integer>(); final BasicDBObject query = new BasicDBObject(MST_FIELD, mstName); final DBCursor cursor = coll.find(query); if (cursor.hasNext()) { final BasicDBObject obj = (BasicDBObject) cursor.next(); final BasicDBList flds = (BasicDBList) obj.get(CC_TAGS_FIELD); if (flds.isEmpty()) { throw new IOException("Missing CCs field"); }//www . j a v a 2 s. co m for (Object tag : flds) { lst.add((Integer) tag); } } else { throw new IOException("Missing collection: " + coll.getName()); } cursor.close(); return lst; }
From source file:br.bireme.scl.Gizmo.java
License:Open Source License
Collection<Element> getNotExportedElements(final DBCollection coll, final DBCursor cursor) throws IOException { assert coll != null; assert cursor != null; final Collection<Element> col = new ArrayList<Element>(); while (cursor.hasNext()) { final BasicDBObject obj = (BasicDBObject) cursor.next(); final String id = obj.getString(ID_FIELD); final BasicDBList lst = (BasicDBList) obj.get(ELEM_LST_FIELD); if (lst == null) { throw new NullPointerException("Elem list espected"); }//from w w w . j av a2 s .c o m final BasicDBObject lelem = (BasicDBObject) lst.get(0); if (lelem == null) { throw new NullPointerException("Elem element espected"); } if (!lelem.getBoolean(EXPORTED_FIELD)) { final Element elem = new Element(id, lelem.getString(BROKEN_URL_FIELD), lelem.getString(PRETTY_BROKEN_URL_FIELD), lelem.getString(FIXED_URL_FIELD), obj.getString(MST_FIELD), lelem.getDate(LAST_UPDATE_FIELD).toString(), lelem.getString(USER_FIELD), null, false); col.add(elem); lelem.put(EXPORTED_FIELD, true); final WriteResult res = coll.save(obj, WriteConcern.ACKNOWLEDGED); if (!res.getCachedLastError().ok()) { throw new IOException("write doc[" + obj.getString(ID_FIELD) + "] failed"); } } } return col; }
From source file:br.bireme.scl.JoinTitle.java
License:Open Source License
private void joinTitle(final DBCollection title, final String inMstName, final String inMstEncoding, final int joinTag, final int newTag, final String outMstName) throws UnknownHostException, BrumaException { assert title != null; assert inMstName != null; assert inMstEncoding != null; assert joinTag > 0; assert newTag > 0; assert outMstName != null; final Master inMst = MasterFactory.getInstance(inMstName).setEncoding(inMstEncoding).open(); final Master outMst = (Master) MasterFactory.getInstance(outMstName).asAnotherMaster(inMst).forceCreate(); int cur = 0;/* w ww. j ava 2 s .c om*/ for (Record rec : inMst) { if (++cur % 10000 == 0) { System.out.println("++" + cur); } if (rec.isActive()) { //System.out.println("out encoding=" + outMstEncoding); for (Field fld : rec.getFieldList(joinTag)) { final String str = removeAccents(fld.getContent()).toUpperCase(); final BasicDBObject doc = (BasicDBObject) title.findOne(new BasicDBObject(INDEX_TAG, str)); if (doc == null) { //System.out.println("rec mfn=" + rec.getMfn() + " tag=" // + INDEX_TAG + " content=" + fld.getContent()); } else { final BasicDBList lst = (BasicDBList) doc.get(RETURN_TAG); for (Object obj : lst) { rec.addField(newTag, (String) obj); } } } } outMst.writeRecord(rec); } inMst.close(); outMst.close(); }
From source file:br.bireme.scl.MongoOperations.java
License:Open Source License
public static SearchResult2 getHistoryDocuments(final DBCollection coll, final Element elem, final int from, final int count) throws IOException, ParseException { if (coll == null) { throw new NullPointerException("coll"); }/*from w ww .j a v a 2s . c o m*/ if (elem == null) { throw new NullPointerException("elem"); } if (from < 1) { throw new IllegalArgumentException("from[" + from + "] < 1"); } if (count < 1) { throw new IllegalArgumentException("count[" + count + "] < 1"); } final List<Element> lst = new ArrayList<Element>(); final BasicDBObject query = new BasicDBObject(); final String root = ELEM_LST_FIELD + ".0."; final String updated = root + LAST_UPDATE_FIELD; if (elem.getDbase() != null) { query.append(MST_FIELD, elem.getDbase().trim()); } if (elem.getId() != null) { final Pattern pat = Pattern.compile("^" + elem.getId().trim() + "_\\d+"); query.append(ID_FIELD, pat); } if (elem.getFurl() != null) { query.append(root + FIXED_URL_FIELD, elem.getFurl().trim()); } if (!elem.getCcs().isEmpty()) { final BasicDBList cclst = new BasicDBList(); for (String centerId : elem.getCcs()) { cclst.add(centerId.trim()); } final String cc = root + CENTER_FIELD; final BasicDBObject in = new BasicDBObject("$in", cclst); query.append(cc, in); } if (elem.getDate() != null) { final SimpleDateFormat simple = new SimpleDateFormat("dd-MM-yyyy"); final Date date = simple.parse(elem.getDate().trim()); final BasicDBObject qdate = new BasicDBObject("$gte", date); query.append(updated, qdate); } if (elem.getUser() != null) { final String user = root + USER_FIELD; query.append(user, elem.getUser().trim()); } final BasicDBObject sort = new BasicDBObject(updated, -1); final DBCursor cursor = coll.find(query).sort(sort).skip(from - 1).limit(count); final int size = cursor.count(); final SimpleDateFormat format = new SimpleDateFormat("dd-MM-yyyy"); while (cursor.hasNext()) { final BasicDBObject hdoc = (BasicDBObject) cursor.next(); final BasicDBList elst = (BasicDBList) hdoc.get(ELEM_LST_FIELD); final BasicDBObject hcurdoc = (BasicDBObject) elst.get(0); if (hcurdoc == null) { throw new IOException("document last element found."); } final BasicDBList ccLst = (BasicDBList) hcurdoc.get(CENTER_FIELD); final List<String> ccs = Arrays.asList(ccLst.toArray(new String[0])); final Element elem2 = new Element(hdoc.getString(ID_FIELD), hcurdoc.getString(BROKEN_URL_FIELD), hcurdoc.getString(PRETTY_BROKEN_URL_FIELD), hcurdoc.getString(FIXED_URL_FIELD), hdoc.getString(MST_FIELD), format.format((Date) (hcurdoc.get(LAST_UPDATE_FIELD))), hcurdoc.getString(USER_FIELD), ccs, hcurdoc.getBoolean(EXPORTED_FIELD)); lst.add(elem2); } cursor.close(); return new SearchResult2(size, lst.size(), lst); }
From source file:br.bireme.scl.MongoOperations.java
License:Open Source License
public static boolean updateDocument(final DBCollection coll, final DBCollection hcoll, final String docId, final String fixedUrl, final String user, final boolean automatic) throws IOException { if (coll == null) { throw new NullPointerException("coll"); }/* w w w . ja v a2 s. c om*/ if (hcoll == null) { throw new NullPointerException("hcoll"); } if (docId == null) { throw new NullPointerException("docId"); } if (fixedUrl == null) { throw new NullPointerException("fixedUrl"); } if (user == null) { throw new NullPointerException("user"); } if (fixedUrl.length() >= 900) { throw new IOException("fixedUrl is too long >= 900. [" + fixedUrl + "]"); } final BasicDBObject query = new BasicDBObject(ID_FIELD, docId); final BasicDBObject doc = (BasicDBObject) coll.findOne(query); if (doc == null) { throw new IOException("document not found id[" + docId + "]"); } final BasicDBList lsthdoc; BasicDBObject hdoc = (BasicDBObject) hcoll.findOne(query); if (hdoc == null) { hdoc = new BasicDBObject(); hdoc.append(ID_FIELD, docId); hdoc.append(MST_FIELD, (String) doc.get(MST_FIELD)); hdoc.append(DATE_FIELD, (Date) doc.get(DATE_FIELD)); lsthdoc = new BasicDBList(); hdoc.append(ELEM_LST_FIELD, lsthdoc); } else { lsthdoc = (BasicDBList) hdoc.get(ELEM_LST_FIELD); } final String brokenUrl = doc.getString(BROKEN_URL_FIELD); final String brokenUrl_D = EncDecUrl.decodeUrl(brokenUrl); final String fixedUrl_E = EncDecUrl.encodeUrl(fixedUrl, CODEC, false); //final String fixedUrl_D = EncDecUrl.decodeUrl(fixedUrl); final BasicDBObject hcurdoc = new BasicDBObject(); hcurdoc.append(BROKEN_URL_FIELD, brokenUrl).append(PRETTY_BROKEN_URL_FIELD, brokenUrl_D) .append(FIXED_URL_FIELD, fixedUrl_E).append(MSG_FIELD, (String) doc.get(MSG_FIELD)) .append(CENTER_FIELD, (BasicDBList) doc.get(CENTER_FIELD)).append(AUTO_FIX_FIELD, automatic) .append(EXPORTED_FIELD, false).append(LAST_UPDATE_FIELD, new Date()).append(USER_FIELD, user); lsthdoc.add(0, hcurdoc); final boolean ret1 = coll.remove(doc, WriteConcern.ACKNOWLEDGED).getLastError().ok(); final boolean ret2 = hcoll.save(hdoc).getLastError().ok(); return ret1 && ret2; }
From source file:br.bireme.scl.MongoOperations.java
License:Open Source License
public static boolean undoUpdateDocument(final DBCollection coll, final DBCollection hcoll, final String docId, final boolean updateBrokenColl) throws IOException { if (coll == null) { throw new NullPointerException("coll"); }//w w w. ja v a 2s . c o m if (hcoll == null) { throw new NullPointerException("hcoll"); } if (docId == null) { throw new NullPointerException("docId"); } final BasicDBObject query = new BasicDBObject(ID_FIELD, docId); final BasicDBObject hdoc = (BasicDBObject) hcoll.findOne(query); if (hdoc == null) { throw new IOException("document not found id[" + docId + "]"); } final BasicDBList lst = (BasicDBList) hdoc.get(ELEM_LST_FIELD); final BasicDBObject hcurdoc = (BasicDBObject) lst.remove(0); if (hcurdoc == null) { throw new IOException("document last element found. Id[" + docId + "]"); } final BasicDBObject doc = new BasicDBObject(); doc.put(DATE_FIELD, hdoc.get(DATE_FIELD)); doc.put(LAST_UPDATE_FIELD, hcurdoc.get(LAST_UPDATE_FIELD)); doc.put(MST_FIELD, hdoc.get(MST_FIELD)); doc.put(ID_FIELD, docId); doc.put(BROKEN_URL_FIELD, hcurdoc.get(BROKEN_URL_FIELD)); doc.put(PRETTY_BROKEN_URL_FIELD, hcurdoc.get(PRETTY_BROKEN_URL_FIELD)); doc.put(MSG_FIELD, hcurdoc.get(MSG_FIELD)); doc.put(CENTER_FIELD, hcurdoc.get(CENTER_FIELD)); final boolean ret1 = updateBrokenColl ? coll.save(doc).getLastError().ok() : true; final boolean ret2; if (lst.isEmpty()) { ret2 = hcoll.remove(query, WriteConcern.ACKNOWLEDGED).getLastError().ok(); } else { ret2 = hcoll.save(hdoc, WriteConcern.ACKNOWLEDGED).getLastError().ok(); } return ret1 && ret2; }
From source file:br.bireme.scl.MongoOperations.java
License:Open Source License
public static boolean undoUpdateDocument2(final DBCollection coll, final DBCollection hcoll, final String fromDate) throws IOException, ParseException { if (coll == null) { throw new NullPointerException("coll"); }// ww w . ja v a2 s .co m if (hcoll == null) { throw new NullPointerException("hcoll"); } final SimpleDateFormat simple = new SimpleDateFormat("yyyyMMdd"); final Date date = (fromDate == null) ? new Date(0) : simple.parse(fromDate); final String updated = ELEM_LST_FIELD + ".0." + LAST_UPDATE_FIELD; final BasicDBObject qdate = new BasicDBObject("$gte", date); final BasicDBObject query = new BasicDBObject(updated, qdate); final BasicDBObject sort = new BasicDBObject(updated, -1); final DBCursor cursor = coll.find(query).sort(sort); boolean ret = true; while (cursor.hasNext()) { final BasicDBObject hdoc = (BasicDBObject) cursor.next(); final BasicDBList lst = (BasicDBList) hdoc.get(ELEM_LST_FIELD); final BasicDBObject hcurdoc = (BasicDBObject) lst.remove(0); if (hcurdoc == null) { throw new IOException("document last element found."); } final BasicDBObject doc = new BasicDBObject(); doc.put(DATE_FIELD, hdoc.get(DATE_FIELD)); doc.put(LAST_UPDATE_FIELD, hcurdoc.get(LAST_UPDATE_FIELD)); doc.put(MST_FIELD, hdoc.get(MST_FIELD)); doc.put(ID_FIELD, hdoc.get(ID_FIELD)); doc.put(BROKEN_URL_FIELD, hcurdoc.get(BROKEN_URL_FIELD)); doc.put(PRETTY_BROKEN_URL_FIELD, hcurdoc.get(PRETTY_BROKEN_URL_FIELD)); doc.put(MSG_FIELD, hcurdoc.get(MSG_FIELD)); doc.put(CENTER_FIELD, hcurdoc.get(CENTER_FIELD)); final boolean ret1 = coll.save(doc).getLastError().ok(); final boolean ret2; if (lst.isEmpty()) { ret2 = hcoll.remove(query, WriteConcern.ACKNOWLEDGED).getLastError().ok(); } else { ret2 = hcoll.save(hdoc, WriteConcern.ACKNOWLEDGED).getLastError().ok(); } final boolean auxret = (ret1 && ret2); if (!auxret) { System.err.println("doc[" + hdoc.get(ID_FIELD) + "] write error"); } ret &= auxret; } return ret; }