lundi 31 août 2015

Implement Java Reflection

I have implemented a query in mongo. I need to put the groupobj and sortobj in the pipeline as well.Since there will be lot of queries with a little variations I am thinking of using JAVA Reflection.

I have gone through the tutorial for JAVA Reflection and understood the concepts but I am not sure how to fit it into my requirement.

Any help !!

switch (dataId) {

        case ApplicationConstants.TOP_QUERIES_:

            // table = db.getCollection("tq");
            table = db.getCollection(MongoConstants.TOP_QUERY);

                MatchQuery.topQuery(matchObj, timePeriod);

            pipeline.add(matchObj);

            // group on term & totalcount
            final BasicDBObject groupObj = new BasicDBObject();
            groupObj.put("$group", new BasicDBObject(
                    ApplicationConstants._ID_FIELD, "$term").append(
                    ApplicationConstants.TOTAL_COUNTS, new BasicDBObject(
                            "$sum", "$count")));
            pipeline.add(groupObj);

            DBObject sort = null;

            // sort operation by count and alphabetically by term(storing in
            // _id)
            BasicDBObject sortByCount = null;

            if (filterObj.isSortOrder()) {
                sortByCount = new BasicDBObject(
                        ApplicationConstants.TOTAL_COUNTS, 1);
            } else {
                sortByCount = new BasicDBObject(
                        ApplicationConstants.TOTAL_COUNTS, -1);

            }
            sort = new BasicDBObject("$sort", sortByCount.append(
                    ApplicationConstants._ID_FIELD, 1));
            pipeline.add(sort);

            break;





Aucun commentaire:

Enregistrer un commentaire