List of usage examples for com.mongodb BasicDBObject toString
@SuppressWarnings("deprecation") public String toString()
Returns a JSON serialization of this object
The output will look like: {"a":1, "b":["x","y","z"]} }
From source file:HW4.java
@SuppressWarnings("empty-statement") private void executeQueryButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_executeQueryButtonActionPerformed DefaultTableModel dtm = new DefaultTableModel(0, 0); //nothing is selected if (finalCat.isEmpty()) { if (!Address.isEmpty() && !proximity.isEmpty()) { if (Address.contains("3799 S Las Vegas Blvd Eastside Las Vegas, NV 89119")) { longitude = -115.16768879999999; latitude = 36.103017899999998; }/*from ww w.j a v a 2 s . c o m*/ if (Address.equalsIgnoreCase("6002 S Durango Dr Ste 100 Spring Valley Las Vegas, NV 89113")) { longitude = -115.27906539999999; latitude = 36.079256100000002; } if (Address.equalsIgnoreCase("1801 E Baseline Rd, #101 Ste 101 Tempe, AZ 85283")) { longitude = -111.90860979259; latitude = 33.377052104372098; } if (Address.equalsIgnoreCase("1033 S Park St Bay Creek Madison, WI 53715")) { longitude = -89.397478300000003; latitude = 43.055539400000001; } if (Address.equalsIgnoreCase("University Center II Lot Phoenix, AZ 85008")) { longitude = -112.02540759999999; latitude = 33.451857400000002; } DB dbBusiness = mongoClient.getDB("business"); DBCollection collBusiness = dbBusiness.getCollection("business"); BasicDBList geoCoord = new BasicDBList(); geoCoord.add(longitude); geoCoord.add(latitude); BasicDBList geoParams = new BasicDBList(); geoParams.add(geoCoord); geoParams.add(Integer.parseInt(proximity) / 1018.59); BasicDBObject query = new BasicDBObject("loc", new BasicDBObject("$geoWithin", new BasicDBObject("$center", geoParams))); resultTable.setModel(dtm); String header[] = new String[] { "B_ID", "Business", "City", "State", "Stars" }; dtm.setColumnIdentifiers(header); DBCursor cursorForBusiness = collBusiness.find(query); while (cursorForBusiness.hasNext()) { //pointInterest.add(cursorForBusiness.next()); Object[] row = new Object[5]; row[0] = cursorForBusiness.next().get("business_id"); row[1] = cursorForBusiness.next().get("name"); row[2] = cursorForBusiness.next().get("city"); row[3] = cursorForBusiness.next().get("state"); row[4] = cursorForBusiness.next().get("stars"); dtm.addRow(row); } } if (!memberSince.isEmpty() || !operReviewCount.isEmpty() || !operNoOfFriends.isEmpty() || !operAvgStar.isEmpty() || !valueReviewCount.isEmpty() || !valueNoOfFriends.isEmpty() || !valueAvgStar.isEmpty() || !andOrAttribute.isEmpty() || !operNoOfVotes.isEmpty() || !valueNoOfVotes.isEmpty()) { DB dbUser = mongoClient.getDB("user"); DBCollection collUser = dbUser.getCollection("user"); BasicDBObject andQuery = new BasicDBObject(); List<BasicDBObject> obj = new ArrayList<BasicDBObject>(); try { if (!memberSince.isEmpty()) { obj.add(new BasicDBObject("yelping_since", memberSince)); } if (!valueReviewCount.isEmpty()) { int vrc = Integer.parseInt(valueReviewCount); BasicDBObject rCount = null; if (operReviewCount.equals(">")) { rCount = new BasicDBObject("review_count", new BasicDBObject("$gt", vrc)); //rCount = new BasicDBObject("$where", "review_count >" + vrc); } if (operReviewCount.equals("<")) { rCount = new BasicDBObject("review_count", new BasicDBObject("$lt", vrc)); //rCount = new BasicDBObject("$where", "review_count <" + vrc); } if (operReviewCount.equals("=")) { rCount = new BasicDBObject("review_count", vrc); // rCount = new BasicDBObject("$where", "review_count =" + vrc); } obj.add(new BasicDBObject(rCount)); } if (!valueNoOfFriends.isEmpty()) { int vnf = Integer.parseInt(valueNoOfFriends); BasicDBObject vFriends = null; if (operNoOfFriends.equals(">")) { vFriends = new BasicDBObject("$where", "this.friends.length >" + vnf); } if (operNoOfFriends.equals("<")) { vFriends = new BasicDBObject("$where", "this.friends.length <" + vnf); } if (operNoOfFriends.equals("=")) { vFriends = new BasicDBObject("$where", "this.friends.length =" + vnf); } obj.add(new BasicDBObject(vFriends)); } if (!valueAvgStar.isEmpty()) { Double doubleValueAvgStar = Double.parseDouble(valueAvgStar); BasicDBObject avgStarValue = null; if (operAvgStar.equals(">")) { avgStarValue = new BasicDBObject("average_stars", new BasicDBObject("$gt", doubleValueAvgStar)); // avgStarValue = new BasicDBObject("$where", "average_stars >" + doubleValueAvgStar); } if (operAvgStar.equals("<")) { avgStarValue = new BasicDBObject("average_stars", new BasicDBObject("$lt", doubleValueAvgStar)); // avgStarValue = new BasicDBObject("$where", "average_stars <" + doubleValueAvgStar); } if (operAvgStar.equals("=")) { avgStarValue = new BasicDBObject("average_stars", doubleValueAvgStar); // avgStarValue = new BasicDBObject("$where", "average_stars =" + doubleValueAvgStar); } obj.add(new BasicDBObject(avgStarValue)); } if (!valueNoOfVotes.isEmpty()) { // BasicDBObject noOfVotesValue = null; // if (operNoOfVotes.equals(">")) { // noOfVotesValue = new BasicDBObject("average_stars", new BasicDBObject("$gt", valueNoOfVotes)); // } // if (operNoOfVotes.equals("<")) { // noOfVotesValue = new BasicDBObject("average_stars", new BasicDBObject("$lt", valueNoOfVotes)); // } // if (operNoOfVotes.equals("=")) { // noOfVotesValue = new BasicDBObject("average_stars", new BasicDBObject("$eq", valueNoOfVotes)); // } // // obj.add(new BasicDBObject(noOfVotesValue)); } System.out.println(andOrAttribute); if (andOrAttribute.equalsIgnoreCase("AND")) { System.out.println("Here"); andQuery.put("$and", obj); } else { andQuery.put("$or", obj); } queryLabel.setText("<html><p>" + andQuery.toString() + "</p></html>"); List<DBObject> outputMyList = new ArrayList<DBObject>(); DBCursor cursor = collUser.find(andQuery); while (cursor.hasNext()) { //System.out.println(cursor.next()); outputMyList.add(cursor.next()); } resultTable.setModel(dtm); String header[] = new String[] { "U_ID", "User Name", "Yelping Since", "Avg Stars", "Review Count" }; // add header in table model dtm.setColumnIdentifiers(header); for (DBObject temp : outputMyList) { //System.out.println("Business Name : " + temp.get("name") + " Category : " + temp.get("categories")); Object[] row = new Object[5]; row[0] = temp.get("user_id"); row[1] = temp.get("name"); row[2] = temp.get("yelping_since"); row[3] = temp.get("average_stars"); row[4] = temp.get("review_count"); dtm.addRow(row); } } catch (Exception e) { } } else { queryLabel.setText("Please select atleast one category from business"); } } //only cat selected //////////////////////////Business////////////////////////////////////////////////////////// if (finalCat.size() > 0) { DB dbBusiness = mongoClient.getDB("business"); DBCollection collBusiness = dbBusiness.getCollection("business"); if (!fromCheckin.isEmpty() && !fromCheckinHour.isEmpty() && !toCheckin.isEmpty() && !toCheckinHour.isEmpty() && !operationCheckin.isEmpty() && !valueCheckin.isEmpty()) { DB dbCheckin = mongoClient.getDB("checkin"); DBCollection collCheckin = dbCheckin.getCollection("checkin"); if (!fromReview.isEmpty() && !toReview.isEmpty() && !operationStar.isEmpty() && !valueStar.isEmpty() && !operationVote.isEmpty() && !valueVote.isEmpty()) { //////////////////////Category, Checkin and Review/////////////////////////////////////////////////// DateFormat format = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'", Locale.ENGLISH); String fromDate1 = fromReview; String fromdate = fromDate1 + "T00:00:00Z"; String toDate1 = toReview; String todate = toDate1 + "T00:00:00Z"; int starValue = Integer.parseInt(valueStar); int voteValue = Integer.parseInt(valueVote); StringBuffer finalQuery = new StringBuffer(); DB dbReview = mongoClient.getDB("review"); DBCollection collReview = dbReview.getCollection("review"); int j = 0; int l = 0; HashMap<String, Integer> tempCheckin = new HashMap<String, Integer>(); ArrayList<String> finalCheckinBid = new ArrayList<String>(); ArrayList<CheckinDetail> checkinList = new ArrayList<CheckinDetail>(); //System.out.println("I am in checkin box"); String[] arrayDays = { "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" }; for (int i = 0; i < arrayDays.length; i++) { if (fromCheckin == arrayDays[i]) { j = i; } else if (toCheckin == arrayDays[i]) { l = i; } } ArrayList<Integer> days = new ArrayList<Integer>(); days.add(j); int temfromday = j; days.add(l); int difference = CheckForDay(fromCheckin, toCheckin); if (difference > 0) { for (int k = 0; k < difference; k++) { j = j + 1; if (j == 7) { j = 0; } days.add(j); } } List<DBObject> categoryIdList = new ArrayList<DBObject>(); for (String t : finalCat) { BasicDBObject whereQueryBusiness = new BasicDBObject(); BasicDBObject fieldsBusiness = new BasicDBObject(); fieldsBusiness.put("business_id", 1); whereQueryBusiness.put("categories", t); DBCursor cursorForBusiness = collBusiness.find(whereQueryBusiness, fieldsBusiness); finalQuery.append(whereQueryBusiness); while (cursorForBusiness.hasNext()) { int i = 1; categoryIdList.add(cursorForBusiness.next()); i++; } } //for FINALCAT List<DBObject> checkinCategoryIdList = new ArrayList<DBObject>(); for (DBObject s : categoryIdList) { //System.out.println(s.get("business_id")); BasicDBObject whereQueryCheckin = new BasicDBObject(); whereQueryCheckin.put("business_id", s.get("business_id")); DBCursor cursorForCheckin = collCheckin.find(whereQueryCheckin); while (cursorForCheckin.hasNext()) { int i = 1; checkinCategoryIdList.add(cursorForCheckin.next()); i++; } } //for DBObject s:categoryIdList for (DBObject u : checkinCategoryIdList) { String full = u.get("checkin_info").toString(); String a = full.replaceAll("[{}]", ""); String[] b = a.split(","); for (int x = 0; x < b.length; x++) { CheckinDetail objCheckin = new CheckinDetail(); String[] c = b[x].split(":"); String d = c[0].replaceAll("[\"]", ""); String[] e = d.split("-"); objCheckin.b_Id = u.get("business_id").toString(); objCheckin.fromTime = Integer.parseInt(e[0].replaceAll("\\s+", "")); objCheckin.checkinDay = Integer.parseInt(e[1].replaceAll("\\s+", "")); objCheckin.CountValue = Integer.parseInt(c[1].replaceAll("\\s+", "")); ; checkinList.add(objCheckin); } } for (CheckinDetail e : checkinList) { for (int f : days) { if ((f == temfromday && temfromday == e.checkinDay && Integer.parseInt(fromCheckinHour) <= e.fromTime) || (f == l && l == e.checkinDay && Integer.parseInt(toCheckinHour) >= e.fromTime) || (f == e.checkinDay && f != temfromday && f != l)) { // System.out.println(e.b_Id); // System.out.println(e.CountValue); if (tempCheckin.containsKey(e.b_Id)) { tempCheckin.put(e.b_Id, tempCheckin.get(e.b_Id) + e.CountValue); } else { tempCheckin.put(e.b_Id, e.CountValue); } } } } Iterator itr = tempCheckin.entrySet().iterator(); while (itr.hasNext()) { Map.Entry entry = (Map.Entry) itr.next(); if ((operationCheckin.contains("="))) { if (entry.getValue() == valueCheckin) { finalCheckinBid.add(entry.getKey().toString()); } } if ((operationCheckin.contains("<"))) { if (Integer.parseInt(entry.getValue().toString()) < Integer.parseInt(valueCheckin)) { finalCheckinBid.add(entry.getKey().toString()); //System.out.println("in <"); } } if ((operationCheckin.contains(">"))) { if (Integer.parseInt(entry.getValue().toString()) > Integer.parseInt(valueCheckin)) { finalCheckinBid.add(entry.getKey().toString()); //System.out.println("in >"); } } } //abhi tak ki bid is in finalCheckinBid // for(String a :finalCheckinBid){ // System.out.println(a); // } finalQuery.append( "Stage{name='$match', value=Or Filter{filters=[Operator Filter{fieldName='checkin_info.2-3', operator='$exists', value=BsonBoolean{value=true}}, Operator Filter{fieldName='checkin_info.2-4', operator='$exists', value=BsonBoolean{value=true}}]}}\n" + "Document{{$group=Document{{_id=$business_id, total1=Document{{$sum=$checkin_info.2-4}}, total2=Document{{$sum=$checkin_info.2-3}}}}}}\n" + "Stage{name='$match', value=Operator Filter{fieldName='totalCheckins', operator='$gt', value=4}}"); try { List<Object> reviewCategoryIdList = new ArrayList<Object>(); DBObject match = new BasicDBObject("$match", new BasicDBObject("date", new BasicDBObject("$gt", format.parse(fromdate)) .append("$lt", format.parse(todate)))); DBObject groupFields = new BasicDBObject("_id", "$business_id"); groupFields.put("total1", new BasicDBObject("$sum", "$votes.funny")); groupFields.put("total2", new BasicDBObject("$sum", "$votes.useful")); groupFields.put("total3", new BasicDBObject("$sum", "$votes.cool")); groupFields.put("totalStars", new BasicDBObject("$sum", "$stars")); DBObject group = new BasicDBObject("$group", groupFields); DBObject fields = new BasicDBObject("_id", 1); BasicDBList addFields = new BasicDBList(); addFields.add("$total1"); addFields.add("$total2"); addFields.add("$total3"); fields.put("totalVotes", new BasicDBObject("$sum", addFields)); fields.put("totalStars", 1); DBObject project = new BasicDBObject("$project", fields); BasicDBObject votes = null; BasicDBObject stars = null; if (operationStar.equals(">")) { stars = new BasicDBObject("totalStars", new BasicDBObject("$gt", starValue)); } if (operationStar.equals("<")) { stars = new BasicDBObject("totalStars", new BasicDBObject("$lt", starValue)); } if (operationStar.equals("=")) { stars = new BasicDBObject("totalStars", new BasicDBObject("$eq", starValue)); } if (operationVote.equals(">")) { votes = new BasicDBObject("totalVotes", new BasicDBObject("$gt", voteValue)); } if (operationVote.equals("<")) { votes = new BasicDBObject("totalVotes", new BasicDBObject("$lt", voteValue)); } if (operationVote.equals("=")) { votes = new BasicDBObject("totalVotes", new BasicDBObject("$eq", voteValue)); } List<BasicDBObject> list1 = new ArrayList<BasicDBObject>(); list1.add(new BasicDBObject(votes)); list1.add(new BasicDBObject(stars)); DBObject votesnStars = new BasicDBObject("$and", list1); DBObject match2 = new BasicDBObject("$match", votesnStars); AggregationOutput cursorForReview = collReview.aggregate(match, group, project, match2); String query33 = match + "\n" + group + "\n" + project + "\n" + match2; finalQuery.append(query33); Iterable<DBObject> list = cursorForReview.results(); Iterator<DBObject> resultSet1 = list.iterator(); while (resultSet1.hasNext()) { // System.out.println(resultSet1.next().get("_id")); reviewCategoryIdList.add(resultSet1.next().get("_id")); } // System.out.println(reviewCategoryIdList.size()); // System.out.println(finalCheckinBid.size()); reviewCategoryIdList.retainAll(finalCheckinBid); // System.out.println(reviewCategoryIdList.size()); // for (Object s : reviewCategoryIdList) { // System.out.println(s.toString()); // } if (!Address.isEmpty() && !proximity.isEmpty()) { if (Address.contains("3799 S Las Vegas Blvd Eastside Las Vegas, NV 89119")) { longitude = -115.16768879999999; latitude = 36.103017899999998; } if (Address.equalsIgnoreCase( "6002 S Durango Dr Ste 100 Spring Valley Las Vegas, NV 89113")) { longitude = -115.27906539999999; latitude = 36.079256100000002; } if (Address.equalsIgnoreCase("1801 E Baseline Rd, #101 Ste 101 Tempe, AZ 85283")) { longitude = -111.90860979259; latitude = 33.377052104372098; } if (Address.equalsIgnoreCase("1033 S Park St Bay Creek Madison, WI 53715")) { longitude = -89.397478300000003; latitude = 43.055539400000001; } if (Address.equalsIgnoreCase("University Center II Lot Phoenix, AZ 85008")) { longitude = -112.02540759999999; latitude = 33.451857400000002; } List<String> pointInterest = new ArrayList<String>(); BasicDBList geoCoord = new BasicDBList(); geoCoord.add(longitude); geoCoord.add(latitude); BasicDBList geoParams = new BasicDBList(); geoParams.add(geoCoord); geoParams.add(Integer.parseInt(proximity) / 1018.59); BasicDBObject query = new BasicDBObject("loc", new BasicDBObject("$geoWithin", new BasicDBObject("$center", geoParams))); DBCursor cursorForBusiness = collBusiness.find(query); finalQuery.append(query); while (cursorForBusiness.hasNext()) { pointInterest.add(cursorForBusiness.next().get("business_id").toString()); } // System.out.println(pointInterest.size()); // System.out.println(reviewCategoryIdList.size()); reviewCategoryIdList.retainAll(pointInterest); // System.out.println(reviewCategoryIdList.size()); } List<DBObject> outputMyList = new ArrayList<DBObject>(); BasicDBObject whereQuery = new BasicDBObject(); for (Object fianlBid2 : reviewCategoryIdList) { // System.out.println(fianlBid2); whereQuery.put("business_id", fianlBid2.toString()); DBCursor cursor = collBusiness.find(whereQuery); while (cursor.hasNext()) { //System.out.println(cursor.next()); outputMyList.add(cursor.next()); } } queryLabel.setText("<html><p>" + finalQuery + "</p></html>"); resultTable.setModel(dtm); String header[] = new String[] { "B_ID", "Business", "City", "State", "Stars" }; // add header in table model dtm.setColumnIdentifiers(header); for (DBObject temp : outputMyList) { //System.out.println("Business Name : " + temp.get("name") + " Category : " + temp.get("categories")); Object[] row = new Object[5]; row[0] = temp.get("business_id"); row[1] = temp.get("name"); row[2] = temp.get("city"); row[3] = temp.get("state"); row[4] = temp.get("stars"); dtm.addRow(row); } } catch (Exception e) { } } //review if ///////////////////////////////Category and Checkin/////////////////////////////// else {//Check in with cat not review int j = 0; int l = 0; HashMap<String, Integer> tempCheckin = new HashMap<String, Integer>(); ArrayList<String> finalCheckinBid = new ArrayList<String>(); StringBuffer finalQueryCatCheck = new StringBuffer(); ArrayList<CheckinDetail> checkinList = new ArrayList<CheckinDetail>(); //System.out.println("I am in checkin box"); String[] arrayDays = { "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" }; for (int i = 0; i < arrayDays.length; i++) { if (fromCheckin == arrayDays[i]) { j = i; } else if (toCheckin == arrayDays[i]) { l = i; } } ArrayList<Integer> days = new ArrayList<Integer>(); days.add(j); int temfromday = j; days.add(l); // System.out.println("Input Data "+j+" "+fromCheckinHour+" "+toCheckin+" "+toCheckinHour+" "+ // operationCheckin+" "+valueCheckin); // System.out.println(j); int difference = CheckForDay(fromCheckin, toCheckin); if (difference > 0) { for (int k = 0; k < difference; k++) { j = j + 1; if (j == 7) { j = 0; } days.add(j); } } // for(int q:days){ // System.out.println(q); // } List<DBObject> categoryIdList = new ArrayList<DBObject>(); for (String t : finalCat) { BasicDBObject whereQueryBusiness = new BasicDBObject(); BasicDBObject fieldsBusiness = new BasicDBObject(); fieldsBusiness.put("business_id", 1); whereQueryBusiness.put("categories", t); DBCursor cursorForBusiness = collBusiness.find(whereQueryBusiness, fieldsBusiness); finalQueryCatCheck.append(whereQueryBusiness); while (cursorForBusiness.hasNext()) { int i = 1; categoryIdList.add(cursorForBusiness.next()); i++; } } //for FINALCAT List<DBObject> checkinCategoryIdList = new ArrayList<DBObject>(); for (DBObject s : categoryIdList) { //System.out.println(s.get("business_id")); BasicDBObject whereQueryCheckin = new BasicDBObject(); whereQueryCheckin.put("business_id", s.get("business_id")); DBCursor cursorForCheckin = collCheckin.find(whereQueryCheckin); while (cursorForCheckin.hasNext()) { int i = 1; checkinCategoryIdList.add(cursorForCheckin.next()); i++; } } //for DBObject s:categoryIdList for (DBObject u : checkinCategoryIdList) { // System.out.println(s.get("business_id")); // System.out.println(u.get("checkin_info").toString()); String full = u.get("checkin_info").toString(); String a = full.replaceAll("[{}]", ""); String[] b = a.split(","); for (int x = 0; x < b.length; x++) { CheckinDetail objCheckin = new CheckinDetail(); String[] c = b[x].split(":"); String d = c[0].replaceAll("[\"]", ""); String[] e = d.split("-"); objCheckin.b_Id = u.get("business_id").toString(); // System.out.println(u.get("business_id").toString()); // System.out.println(e[0]);//from time objCheckin.fromTime = Integer.parseInt(e[0].replaceAll("\\s+", "")); // System.out.println(e[1]);//day objCheckin.checkinDay = Integer.parseInt(e[1].replaceAll("\\s+", "")); // System.out.println(c[1]);//value objCheckin.CountValue = Integer.parseInt(c[1].replaceAll("\\s+", "")); ; checkinList.add(objCheckin); //System.out.println(checkinList.size()); } } for (CheckinDetail e : checkinList) { for (int f : days) { if ((f == temfromday && temfromday == e.checkinDay && Integer.parseInt(fromCheckinHour) <= e.fromTime) || (f == l && l == e.checkinDay && Integer.parseInt(toCheckinHour) >= e.fromTime) || (f == e.checkinDay && f != temfromday && f != l)) { // System.out.println(e.b_Id); // System.out.println(e.CountValue); if (tempCheckin.containsKey(e.b_Id)) { tempCheckin.put(e.b_Id, tempCheckin.get(e.b_Id) + e.CountValue); } else { tempCheckin.put(e.b_Id, e.CountValue); } } } } Iterator itr = tempCheckin.entrySet().iterator(); while (itr.hasNext()) { Map.Entry entry = (Map.Entry) itr.next(); if ((operationCheckin.contains("="))) { if (entry.getValue() == valueCheckin) { finalCheckinBid.add(entry.getKey().toString()); } } if ((operationCheckin.contains("<"))) { if (Integer.parseInt(entry.getValue().toString()) < Integer.parseInt(valueCheckin)) { finalCheckinBid.add(entry.getKey().toString()); //System.out.println("in <"); } } if ((operationCheckin.contains(">"))) { if (Integer.parseInt(entry.getValue().toString()) > Integer.parseInt(valueCheckin)) { finalCheckinBid.add(entry.getKey().toString()); //System.out.println("in >"); } } // } finalQueryCatCheck.append( "Stage{name='$match', value=Or Filter{filters=[Operator Filter{fieldName='checkin_info.2-3', operator='$exists', value=BsonBoolean{value=true}}, Operator Filter{fieldName='checkin_info.2-4', operator='$exists', value=BsonBoolean{value=true}}]}}\n" + "Document{{$group=Document{{_id=$business_id, total1=Document{{$sum=$checkin_info.2-4}}, total2=Document{{$sum=$checkin_info.2-3}}}}}}\n" + "Stage{name='$match', value=Operator Filter{fieldName='totalCheckins', operator='$gt', value=4}}"); if (!Address.isEmpty() && !proximity.isEmpty()) { if (Address.contains("3799 S Las Vegas Blvd Eastside Las Vegas, NV 89119")) { longitude = -115.16768879999999; latitude = 36.103017899999998; } if (Address .equalsIgnoreCase("6002 S Durango Dr Ste 100 Spring Valley Las Vegas, NV 89113")) { longitude = -115.27906539999999; latitude = 36.079256100000002; } if (Address.equalsIgnoreCase("1801 E Baseline Rd, #101 Ste 101 Tempe, AZ 85283")) { longitude = -111.90860979259; latitude = 33.377052104372098; } if (Address.equalsIgnoreCase("1033 S Park St Bay Creek Madison, WI 53715")) { longitude = -89.397478300000003; latitude = 43.055539400000001; } if (Address.equalsIgnoreCase("University Center II Lot Phoenix, AZ 85008")) { longitude = -112.02540759999999; latitude = 33.451857400000002; } List<String> pointInterest = new ArrayList<String>(); BasicDBList geoCoord = new BasicDBList(); geoCoord.add(longitude); geoCoord.add(latitude); BasicDBList geoParams = new BasicDBList(); geoParams.add(geoCoord); geoParams.add(Integer.parseInt(proximity) / 1018.59); BasicDBObject query = new BasicDBObject("loc", new BasicDBObject("$geoWithin", new BasicDBObject("$center", geoParams))); DBCursor cursorForBusiness = collBusiness.find(query); finalQueryCatCheck.append(query); while (cursorForBusiness.hasNext()) { pointInterest.add(cursorForBusiness.next().get("business_id").toString()); } // System.out.println(pointInterest.size()); // System.out.println(reviewCategoryIdList.size()); finalCheckinBid.retainAll(pointInterest); // System.out.println(reviewCategoryIdList.size()); } resultTable.setModel(dtm); queryLabel.setText("<html><p>" + finalQueryCatCheck.toString() + "</p></html>"); String header[] = new String[] { "B_ID", "Business", "City", "State", "Stars" }; // add header in table model dtm.setColumnIdentifiers(header); List<DBObject> outputMyList = new ArrayList<DBObject>(); BasicDBObject whereQuery = new BasicDBObject(); for (String fianlBid2 : finalCheckinBid) { whereQuery.put("business_id", fianlBid2); DBCursor cursor = collBusiness.find(whereQuery); while (cursor.hasNext()) { int i = 1; //System.out.println(cursor.next()); outputMyList.add(cursor.next()); i++; } } for (DBObject temp : outputMyList) { //System.out.println("Business Name : " + temp.get("name") + " Category : " + temp.get("categories")); Object[] row = new Object[5]; row[0] = temp.get("business_id"); row[1] = temp.get("name"); row[2] = temp.get("city"); row[3] = temp.get("state"); row[4] = temp.get("stars"); dtm.addRow(row); } // } } //else with no review } //if for entire checkin check else {//only cat /////////////////////////////////////////Cat N Review///////////////////////////////////////////////////////////////////// if (!fromReview.isEmpty() && !toReview.isEmpty() && !operationStar.isEmpty() && !valueStar.isEmpty() && !operationVote.isEmpty() && !valueVote.isEmpty()) { StringBuffer finalQueryCatReview = new StringBuffer(); DateFormat format = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'", Locale.ENGLISH); String fromDate1 = fromReview; String fromdate = fromDate1 + "T00:00:00Z"; String toDate1 = toReview; String todate = toDate1 + "T00:00:00Z"; int starValue = Integer.parseInt(valueStar); //int voteValue = 4; int voteValue = Integer.parseInt(valueVote); DB dbReview = mongoClient.getDB("review"); DBCollection collReview = dbReview.getCollection("review"); //abhi tak ki bid is in finalCheckinBid // for(String a :finalCheckinBid){ // System.out.println(a); // } try { List<Object> finalCatBid = new ArrayList<Object>(); List<Object> reviewCategoryIdList = new ArrayList<Object>(); for (String a : finalCat) { BasicDBObject whereQueryBusinessReview = new BasicDBObject(); //System.out.println(a); whereQueryBusinessReview.put("categories", a); DBCursor cursor = collBusiness.find(whereQueryBusinessReview); finalQueryCatReview.append(whereQueryBusinessReview); while (cursor.hasNext()) { int i = 1; //System.out.println(cursor.next()); finalCatBid.add(cursor.next().get("business_id")); i++; } } DBObject match = new BasicDBObject("$match", new BasicDBObject("date", new BasicDBObject("$gt", format.parse(fromdate)) .append("$lt", format.parse(todate)))); DBObject groupFields = new BasicDBObject("_id", "$business_id"); groupFields.put("total1", new BasicDBObject("$sum", "$votes.funny")); groupFields.put("total2", new BasicDBObject("$sum", "$votes.useful")); groupFields.put("total3", new BasicDBObject("$sum", "$votes.cool")); groupFields.put("totalStars", new BasicDBObject("$sum", "$stars")); DBObject group = new BasicDBObject("$group", groupFields); DBObject fields = new BasicDBObject("_id", 1); BasicDBList addFields = new BasicDBList(); addFields.add("$total1"); addFields.add("$total2"); addFields.add("$total3"); fields.put("totalVotes", new BasicDBObject("$sum", addFields)); fields.put("totalStars", 1); DBObject project = new BasicDBObject("$project", fields); BasicDBObject votes = null; BasicDBObject stars = null; if (operationStar.equals(">")) { stars = new BasicDBObject("totalStars", new BasicDBObject("$gt", starValue)); } if (operationStar.equals("<")) { stars = new BasicDBObject("totalStars", new BasicDBObject("$lt", starValue)); } if (operationStar.equals("=")) { stars = new BasicDBObject("totalStars", new BasicDBObject("$eq", starValue)); } if (operationVote.equals(">")) { votes = new BasicDBObject("totalVotes", new BasicDBObject("$gt", voteValue)); } if (operationVote.equals("<")) { votes = new BasicDBObject("totalVotes", new BasicDBObject("$lt", voteValue)); } if (operationVote.equals("=")) { votes = new BasicDBObject("totalVotes", new BasicDBObject("$eq", voteValue)); } List<BasicDBObject> list1 = new ArrayList<BasicDBObject>(); list1.add(new BasicDBObject(votes)); list1.add(new BasicDBObject(stars)); DBObject votesnStars = new BasicDBObject("$and", list1); DBObject match2 = new BasicDBObject("$match", votesnStars); AggregationOutput cursorForReview = collReview.aggregate(match, group, project, match2); String query33 = match + "\n" + group + "\n" + project + "\n" + match2; finalQueryCatReview.append(query33); Iterable<DBObject> list = cursorForReview.results(); Iterator<DBObject> resultSet1 = list.iterator(); while (resultSet1.hasNext()) { // System.out.println(resultSet1.next().get("_id")); reviewCategoryIdList.add(resultSet1.next().get("_id")); } //System.out.println(reviewCategoryIdList.size()); //System.out.println(finalCatBid.size()); reviewCategoryIdList.retainAll(finalCatBid); //System.out.println(reviewCategoryIdList.size()); // for (Object s : reviewCategoryIdList) { // System.out.println(s.toString()); // } if (!Address.isEmpty() && !proximity.isEmpty()) { if (Address.contains("3799 S Las Vegas Blvd Eastside Las Vegas, NV 89119")) { longitude = -115.16768879999999; latitude = 36.103017899999998; } if (Address.equalsIgnoreCase( "6002 S Durango Dr Ste 100 Spring Valley Las Vegas, NV 89113")) { longitude = -115.27906539999999; latitude = 36.079256100000002; } if (Address.equalsIgnoreCase("1801 E Baseline Rd, #101 Ste 101 Tempe, AZ 85283")) { longitude = -111.90860979259; latitude = 33.377052104372098; } if (Address.equalsIgnoreCase("1033 S Park St Bay Creek Madison, WI 53715")) { longitude = -89.397478300000003; latitude = 43.055539400000001; } if (Address.equalsIgnoreCase("University Center II Lot Phoenix, AZ 85008")) { longitude = -112.02540759999999; latitude = 33.451857400000002; } List<String> pointInterest = new ArrayList<String>(); BasicDBList geoCoord = new BasicDBList(); geoCoord.add(longitude); geoCoord.add(latitude); BasicDBList geoParams = new BasicDBList(); geoParams.add(geoCoord); geoParams.add(Integer.parseInt(proximity) / 1018.59); BasicDBObject query = new BasicDBObject("loc", new BasicDBObject("$geoWithin", new BasicDBObject("$center", geoParams))); DBCursor cursorForBusiness = collBusiness.find(query); finalQueryCatReview.append(query); while (cursorForBusiness.hasNext()) { pointInterest.add(cursorForBusiness.next().get("business_id").toString()); } // System.out.println(pointInterest.size()); // System.out.println(reviewCategoryIdList.size()); reviewCategoryIdList.retainAll(pointInterest); // System.out.println(reviewCategoryIdList.size()); } queryLabel.setText("<html><p>" + finalQueryCatReview.toString() + "</p></html>"); resultTable.setModel(dtm); String header[] = new String[] { "B_ID", "Business", "City", "State", "Stars" }; // add header in table model dtm.setColumnIdentifiers(header); List<DBObject> outputMyList = new ArrayList<DBObject>(); for (Object fianlBid2 : reviewCategoryIdList) { BasicDBObject whereQuery = new BasicDBObject(); // System.out.println(fianlBid2); whereQuery.put("business_id", fianlBid2.toString()); DBCursor cursor = collBusiness.find(whereQuery); while (cursor.hasNext()) { //System.out.println(cursor.next()); outputMyList.add(cursor.next()); } } for (DBObject temp : outputMyList) { //System.out.println("Business Name : " + temp.get("name") + " Category : " + temp.get("categories")); Object[] row = new Object[5]; row[0] = temp.get("business_id"); row[1] = temp.get("name"); row[2] = temp.get("city"); row[3] = temp.get("state"); row[4] = temp.get("stars"); dtm.addRow(row); } } catch (Exception e) { } } //////////////////////////////////////Only Category //////////////////////////////////////////// else { resultTable.setModel(dtm); String header[] = new String[] { "B_ID", "Business", "City", "State", "Stars", "Category" }; // add header in table model dtm.setColumnIdentifiers(header); StringBuffer catOnly = new StringBuffer(); if (!Address.isEmpty() && !proximity.isEmpty() && finalCat.size() > 0) { if (Address.contains("3799 S Las Vegas Blvd Eastside Las Vegas, NV 89119")) { longitude = -115.16768879999999; latitude = 36.103017899999998; } if (Address .equalsIgnoreCase("6002 S Durango Dr Ste 100 Spring Valley Las Vegas, NV 89113")) { longitude = -115.27906539999999; latitude = 36.079256100000002; } if (Address.equalsIgnoreCase("1801 E Baseline Rd, #101 Ste 101 Tempe, AZ 85283")) { longitude = -111.90860979259; latitude = 33.377052104372098; } if (Address.equalsIgnoreCase("1033 S Park St Bay Creek Madison, WI 53715")) { longitude = -89.397478300000003; latitude = 43.055539400000001; } if (Address.equalsIgnoreCase("University Center II Lot Phoenix, AZ 85008")) { longitude = -112.02540759999999; latitude = 33.451857400000002; } //BasicDBList category = new BasicDBList(); for (String a : finalCat) { BasicDBObject andQuery = new BasicDBObject(); List<BasicDBObject> obj = new ArrayList<BasicDBObject>(); List<DBObject> pointInterest = new ArrayList<DBObject>(); BasicDBList geoCoord = new BasicDBList(); geoCoord.add(longitude); geoCoord.add(latitude); BasicDBList geoParams = new BasicDBList(); geoParams.add(geoCoord); geoParams.add(Integer.parseInt(proximity) / 1018.59); BasicDBObject query = new BasicDBObject("loc", new BasicDBObject("$geoWithin", new BasicDBObject("$center", geoParams))); obj.add(query); obj.add(new BasicDBObject("categories", a)); andQuery.put("$and", obj); System.out.println(andQuery); DBCursor cursorForBusiness = collBusiness.find(andQuery); catOnly.append(andQuery); while (cursorForBusiness.hasNext()) { pointInterest.add(cursorForBusiness.next()); } for (DBObject temp : pointInterest) { Object[] row = new Object[6]; row[0] = temp.get("business_id"); row[1] = temp.get("name"); row[2] = temp.get("city"); row[3] = temp.get("state"); row[4] = temp.get("stars"); row[5] = a; dtm.addRow(row); } } } else { List<DBObject> testMyList = new ArrayList<DBObject>(); for (String a : finalCat) { BasicDBObject whereQuery = new BasicDBObject(); //System.out.println(a); whereQuery.put("categories", a); DBCursor cursor = collBusiness.find(whereQuery); catOnly.append(whereQuery); while (cursor.hasNext()) { testMyList.add(cursor.next()); } for (DBObject temp : testMyList) { //System.out.println("Business Name : " + temp.get("name") + " Category : " + temp.get("categories")); Object[] row = new Object[6]; row[0] = temp.get("business_id"); row[1] = temp.get("name"); row[2] = temp.get("city"); row[3] = temp.get("state"); row[4] = temp.get("stars"); row[5] = a; dtm.addRow(row); } } } queryLabel.setText("<html><p>" + catOnly.toString() + "</p></html>"); } } //else } //cat and subCat is selected }
From source file:Modificar.java
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed //String e = EdadT.getText(); //int i = Integer.parseInt(EdadT.getText()); if (Nombre.getText().equals("") || ApPaterno.getText().equals("") || ApMaterno.getText().equals("") || EdadT.getText().equals("") || matricula.getText().equals("") || Carrera.getText().equals("")) { JOptionPane.showMessageDialog(null, "Faltan campos por llenar"); } else {/*from w w w. ja v a2s.co m*/ // document.put("Nombre", ""+ NombreT.getText() +""); // document.put("ApPaterno", ""+ ApPaterno.getText() +""); // document.put("ApMaterno", ""+ ApMaterno.getText() +""); // document.put("FechaNac", (String) dia.getSelectedItem() + "-" + mes.getSelectedItem() + "-" + anio.getSelectedItem()); // document.put("Edad", Integer.parseInt(EdadT.getText())); // document.put("Sexo", ""+ sexo.getSelectedItem() +""); // document.put("Matricula", ""+ matricula.getText() +""); // document.put("Semestre", Integer.parseInt(""+ semestre.getSelectedItem())); // document.put("Carrera", ""+ Carrera.getText() +""); // collection.insert(document); Object[] obj = new Object[] { NombreT.getText(), ApPaterno.getText(), ApMaterno.getText(), dia.getSelectedItem() + "-" + mes.getSelectedItem() + "-" + anio.getSelectedItem(), Integer.parseInt(EdadT.getText()), sexo.getSelectedItem(), matricula.getText(), Integer.parseInt("" + semestre.getSelectedItem()), Carrera.getText() }; BasicDBObject updateQuery = new BasicDBObject(); updateQuery.append("$set", createBDBOfromArrays(columnnames, obj)); BasicDBObject searchQuery = new BasicDBObject(); searchQuery.put("$and", createListBDBOfromArrays(this.columnnames, this.data)); System.out.println(updateQuery.toString()); System.out.println(searchQuery.toString()); System.err.println(collection.update(searchQuery, updateQuery).getError()); javax.swing.JOptionPane.showMessageDialog(this, "Se ha actualizado exitosamente el alumno"); PanModificar newFrame = new PanModificar(); newFrame.setVisible(true); this.dispose(); } // TODO add your handling code here: }
From source file:ch.agent.crnickl.mongodb.ReadMethodsForChroniclesAndSeries.java
License:Apache License
private Chronicle unpack(Database db, BasicDBObject obj) throws T2DBException { try {/*from ww w . j a va 2 s .c om*/ ObjectId id = obj.getObjectId(MongoDatabase.FLD_ID); Surrogate s = makeSurrogate(db, DBObjectType.CHRONICLE, id); ChronicleImpl.RawData data = new ChronicleImpl.RawData(); data.setSurrogate(s); data.setName(obj.getString(MongoDatabase.FLD_CHRON_NAME)); data.setDescription(obj.getString(MongoDatabase.FLD_CHRON_DESC)); ObjectId parentId = obj.getObjectId(MongoDatabase.FLD_CHRON_PARENT); data.setCollection(parentId == null ? db.getTopChronicle() : new ChronicleImpl(makeSurrogate(db, DBObjectType.CHRONICLE, parentId))); ObjectId schemaId = obj.getObjectId(MongoDatabase.FLD_CHRON_SCHEMA); data.setSchema(schemaId == null ? null : makeSurrogate(db, DBObjectType.SCHEMA, schemaId)); Chronicle chronicle = new ChronicleImpl(data); return chronicle; } catch (ClassCastException e) { throw T2DBMMsg.exception(e, J.J81010, obj.toString()); } }
From source file:ch.agent.crnickl.mongodb.ReadMethodsForProperty.java
License:Apache License
private <T> Property<T> unpack(Database db, BasicDBObject obj) throws T2DBException { try {// w w w. jav a 2 s.c o m ObjectId id = obj.getObjectId(MongoDatabase.FLD_ID); String name = obj.getString(MongoDatabase.FLD_PROP_NAME); ObjectId vtId = obj.getObjectId(MongoDatabase.FLD_PROP_VT); Boolean indexed = obj.getBoolean(MongoDatabase.FLD_PROP_INDEXED); Surrogate vts = makeSurrogate(db, DBObjectType.VALUE_TYPE, new MongoDBObjectId(vtId)); ValueType<T> vt = db.getValueType(vts); Surrogate s = makeSurrogate(db, DBObjectType.PROPERTY, new MongoDBObjectId(id)); checkIntegrity(vt, vts, s); return new PropertyImpl<T>(name, vt, indexed, s); } catch (ClassCastException e) { throw T2DBMMsg.exception(e, J.J81010, obj.toString()); } }
From source file:ch.agent.crnickl.mongodb.ReadMethodsForSchema.java
License:Apache License
private UpdatableSchema unpack(Database db, BasicDBObject obj, Set<ObjectId> cycleDetector) throws T2DBException { if (cycleDetector == null) cycleDetector = new HashSet<ObjectId>(); try {//from w w w.ja v a2s. co m ObjectId id = obj.getObjectId(MongoDatabase.FLD_ID); Surrogate s = makeSurrogate(db, DBObjectType.SCHEMA, new MongoDBObjectId(id)); boolean cycleDetected = !cycleDetector.add(id); String name = obj.getString(MongoDatabase.FLD_SCHEMA_NAME); UpdatableSchema base = null; ObjectId baseId = obj.getObjectId(MongoDatabase.FLD_SCHEMA_BASE); if (baseId != null && !cycleDetected) { Surrogate baseSurr = makeSurrogate(db, DBObjectType.SCHEMA, new MongoDBObjectId(baseId)); base = getSchema(baseSurr, cycleDetector); } Collection<AttributeDefinition<?>> attribs = attributeDefinitions(s, 0, db, (BasicDBList) obj.get(MongoDatabase.FLD_SCHEMA_ATTRIBS)); Collection<SeriesDefinition> series = seriesDefinitions(s, db, (BasicDBList) obj.get(MongoDatabase.FLD_SCHEMA_SERIES)); return new UpdatableSchemaImpl(name, base, attribs, series, s); } catch (ClassCastException e) { throw T2DBMMsg.exception(e, J.J81010, obj.toString()); } }
From source file:ch.agent.crnickl.mongodb.ReadMethodsForValueType.java
License:Apache License
@SuppressWarnings("unchecked") private <T> ValueType<T> unpack(Database db, BasicDBObject obj) throws T2DBException { try {//from w w w . j a v a 2 s .c o m ObjectId id = obj.getObjectId(MongoDatabase.FLD_ID); String name = obj.getString(MongoDatabase.FLD_VT_NAME); String type = obj.getString(MongoDatabase.FLD_VT_TYPE); Object values = obj.get(MongoDatabase.FLD_VT_VALUES); boolean restricted = values != null; Map<String, String> valueMap = null; if (restricted) valueMap = (Map<String, String>) ((BasicDBObject) values).toMap(); Surrogate s = makeSurrogate(db, DBObjectType.VALUE_TYPE, new MongoDBObjectId(id)); return new ValueTypeImpl<T>(name, restricted, type, valueMap, s); } catch (ClassCastException e) { throw T2DBMMsg.exception(e, J.J81010, obj.toString()); } }
From source file:com.andiandy.m101j.week4.course.BlogPostDAO.java
License:Apache License
public List<DBObject> findByTagDateDescending(final String tag) { List<DBObject> posts;/*from w w w . jav a2s. com*/ BasicDBObject query = new BasicDBObject("tags", tag); System.out.println("/tag query: " + query.toString()); DBCursor cursor = postsCollection.find(query).sort(new BasicDBObject().append("date", -1)).limit(10); try { posts = cursor.toArray(); } finally { cursor.close(); } return posts; }
From source file:com.apifest.oauth20.MongoDBManager.java
License:Apache License
@SuppressWarnings("unchecked") @Override/*from w w w . j a v a 2s . co m*/ public AccessToken findAccessToken(String accessToken) { BasicDBObject dbObject = new BasicDBObject(); dbObject.put(ACCESS_TOKEN_ID_NAME, accessToken); dbObject.put(VALID_NAME, true); DBCollection coll = db.getCollection(ACCESS_TOKEN_COLLECTION_NAME); List<DBObject> list = coll.find(dbObject).toArray(); if (list.size() > 1) { // throw exception log.warn("Several access tokens found"); return null; } if (list.size() > 0) { Map<String, Object> mapLoaded = list.get(0).toMap(); // convert details map to String if (mapLoaded.get("details") instanceof BasicDBObject) { BasicDBObject details = (BasicDBObject) mapLoaded.get("details"); mapLoaded.put("details", details.toString()); } return AccessToken.loadFromMap(mapLoaded); } else { log.debug("No access token found"); return null; } }
From source file:com.apifest.oauth20.MongoDBManager.java
License:Apache License
@SuppressWarnings("unchecked") @Override//w w w. j av a 2 s. c o m public AccessToken findAccessTokenByRefreshToken(String refreshToken, String clientId) { BasicDBObject dbObject = new BasicDBObject(); // TODO: add indexes dbObject.put(REFRESH_TOKEN_ID_NAME, refreshToken); dbObject.put(CLIENTS_ID_NAME, clientId); DBCollection coll = db.getCollection(ACCESS_TOKEN_COLLECTION_NAME); List<DBObject> list = coll.find(dbObject).toArray(); if (list != null && list.size() == 1) { Map<String, Object> mapLoaded = list.get(0).toMap(); // convert details list to String if (mapLoaded.get("details") instanceof BasicDBObject) { BasicDBObject details = (BasicDBObject) mapLoaded.get("details"); mapLoaded.put("details", details.toString()); } AccessToken loadedAccessToken = AccessToken.loadFromMap(mapLoaded); log.debug(loadedAccessToken.getToken()); return loadedAccessToken; } else { return null; } }
From source file:com.apifest.oauth20.MongoDBManager.java
License:Apache License
@Override @SuppressWarnings("unchecked") public List<AccessToken> getAccessTokenByUserIdAndClientApp(String userId, String clientId) { List<AccessToken> accessTokens = new ArrayList<AccessToken>(); BasicDBObject dbObject = new BasicDBObject(); // TODO: add indexes dbObject.put(USER_ID, userId);/*w w w . j a v a 2 s. com*/ dbObject.put(CLIENTS_ID_NAME, clientId); dbObject.put(VALID_NAME, true); DBCollection coll = db.getCollection(ACCESS_TOKEN_COLLECTION_NAME); List<DBObject> list = coll.find(dbObject).toArray(); for (DBObject object : list) { Map<String, Object> mapLoaded = object.toMap(); // convert details list to String if (mapLoaded.get("details") instanceof BasicDBObject) { BasicDBObject details = (BasicDBObject) mapLoaded.get("details"); mapLoaded.put("details", details.toString()); } AccessToken loadedAccessToken = AccessToken.loadFromMap(mapLoaded); accessTokens.add(loadedAccessToken); } return accessTokens; }