Subversion Repositories SmartDukaan

Rev

Rev 3338 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

package in.shop2020.web;

import java.io.IOException;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;

import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.json.JSONObject;

import com.google.appengine.api.datastore.DatastoreService;
import com.google.appengine.api.datastore.DatastoreServiceFactory;
import com.google.appengine.api.datastore.Entity;
import com.google.appengine.api.datastore.PreparedQuery;
import com.google.appengine.api.datastore.Query;

public class ShowSocialDataLog extends HttpServlet {
        
        private static final long serialVersionUID = 300994324656257525L;
        
        public void doPost(HttpServletRequest req, HttpServletResponse resp) {
        resp.setContentType("application/json");
        
        DatastoreService datastore = DatastoreServiceFactory.getDatastoreService();

        Query q = new Query("SocialDataLog");
        
        PreparedQuery pq = datastore.prepare(q);

        long countPhonesIOwn = 0;
        long countCommunityPromotion = 0;
        
        try {
            for (Entity result : pq.asIterable()) {
                if (((String) result.getProperty("eventType")).equals("PHONES_I_OWN_VIEWED"))   {
                        countPhonesIOwn += 1;
                } else  {
                        countCommunityPromotion += 1;
                }
            }

            Map<String, Long> fbAppUsageStats = new HashMap<String, Long>();

            fbAppUsageStats.put("PHONES_I_OWN_VIEWED", countPhonesIOwn);
            fbAppUsageStats.put("COMMUNITY_PROMOTION_VIEWED", countCommunityPromotion);
            
            resp.getWriter().println(new JSONObject(fbAppUsageStats));
                
        } catch (IOException e) {
            System.out.println("Unable to write at output stream");
        }
    }
    
    public void doGet(HttpServletRequest req, HttpServletResponse resp) {
        doPost(req, resp);
    }
}