AnalyticsDemoStatistics.java 1.97 KB
/*
 * Decompiled with CFR 0_118.
 * 
 * Could not load the following classes:
 *  com.day.cq.commons.inherit.HierarchyNodeInheritanceValueMap
 *  com.day.cq.wcm.api.Page
 *  org.apache.sling.api.resource.Resource
 *  org.apache.sling.api.resource.ValueMap
 *  org.apache.sling.api.wrappers.ValueMapDecorator
 */
package com.day.cq.analytics.sitecatalyst.impl.util;

import com.day.cq.commons.inherit.HierarchyNodeInheritanceValueMap;
import com.day.cq.wcm.api.Page;
import java.util.HashMap;
import java.util.Map;
import java.util.Random;
import org.apache.sling.api.resource.Resource;
import org.apache.sling.api.resource.ValueMap;
import org.apache.sling.api.wrappers.ValueMapDecorator;

public class AnalyticsDemoStatistics {
    public static final String PROP_DEMO_ANALYTICS_DATA_PROPERTY = "cq:demoAnalyticsData";
    private static final String PROP_DEMO_DATA_TIME_SPENT = "analytics_averagetimespentonpage";
    private static final String PROP_DEMO_DATA_PAGE_VIEWS = "analytics_pageviews";
    private static final String PROP_DEMO_DATA_VISITORS = "analytics_visitors";
    private static final int MAX_RANDOM_THRESHOLD = 300;

    public static boolean isDemoDataEnabled(Page page) {
        boolean demoEnabled = false;
        if (page != null) {
            HierarchyNodeInheritanceValueMap contentPageProperties = new HierarchyNodeInheritanceValueMap(page.getContentResource());
            demoEnabled = (Boolean)contentPageProperties.getInherited("cq:demoAnalyticsData", (Object)false);
        }
        return demoEnabled;
    }

    public static ValueMap generateRandomStatistics() {
        Random rand = new Random();
        HashMap<String, Number> randomStats = new HashMap<String, Number>();
        randomStats.put("analytics_averagetimespentonpage", 300.0 * rand.nextDouble());
        randomStats.put("analytics_pageviews", new Long(rand.nextInt(300)));
        randomStats.put("analytics_visitors", new Long(rand.nextInt(300)));
        return new ValueMapDecorator(randomStats);
    }
}