Package com.senseidb.indexing.activity.time

Examples of com.senseidb.indexing.activity.time.TimeAggregatedActivityValues$IntValueHolder


      if ("aggregated-range".equals(facet.type)) {
        if (!(activityValues instanceof TimeAggregatedActivityValues)) {
          throw new IllegalStateException("The facet " + facet.name + "should correspond to the timeAggregateActivityValues");         
        }
        TimeAggregatedActivityValues aggregatedActivityValues = (TimeAggregatedActivityValues) activityValues;
        for (String time : facet.params.get("time")) {
          String name = facet.name + ":" + time;
          ret.add(ActivityRangeFacetHandler.valueOf(name, facet.column, this, (ActivityIntValues)aggregatedActivityValues.getValuesMap().get(time)));
        }
        ret.add(ActivityRangeFacetHandler.valueOf(facet.name, facet.column, this, (ActivityIntValues)aggregatedActivityValues.getDefaultIntValues()));
      } else if ("range".equals(facet.type)){

        ret.add(ActivityRangeFacetHandler.valueOf(facet.name, facet.column, this, getActivityValues().getActivityValues(facet.column)));

      } else {
View Full Code Here


    }
 
  public void test3AggregatesIntegrationTest() throws Exception {
    final CompositeActivityValues inMemoryColumnData1 = CompositeActivityManager.cachedInstances.get(1).activityValues;
    final CompositeActivityValues inMemoryColumnData2 = CompositeActivityManager.cachedInstances.get(2).activityValues;
    final TimeAggregatedActivityValues timeAggregatedActivityValues1 = clear(inMemoryColumnData1);
    final TimeAggregatedActivityValues timeAggregatedActivityValues2 = clear(inMemoryColumnData2);
    for (ActivityIntValues activityIntValues : timeAggregatedActivityValues1.getValuesMap().values()) {
      assertEquals(0, activityIntValues.getIntValue(0));
    }
    for (ActivityIntValues activityIntValues : timeAggregatedActivityValues2.getValuesMap().values()) {
      for (int i = 0; i < activityIntValues.getFieldValues().length; i ++) {
        assertEquals("" + i, 0, activityIntValues.getFieldValues()[i]);
      }
    } 
    int initialTime = Clock.getCurrentTimeInMinutes();
    for (int i = 0; i < 10; i++) {
      final int uid = i;
      Clock.setPredefinedTimeInMinutes(Clock.getCurrentTimeInMinutes() + 1);
      for (int j = 0; j < 10 - i; j ++) {
        FileDataProviderWithMocks.add(new JSONObject().put("id", j).put(SenseiSchema.EVENT_TYPE_FIELD, SenseiSchema.EVENT_TYPE_UPDATE).put("likes", "+1"));
        expectedVersion++;
      }
      syncWithVersion(expectedVersion);
    }   
    String req = "{\"selections\": [{\"range\": {\"aggregated-likes:2w\": {\"from\": 8, \"include_lower\": true}}}], \"sort\":[{\"aggregated-likes:2w\":\"desc\"}]}";
    JSONObject res = TestSensei.search(new JSONObject(req));    
  
    JSONArray hits = res.getJSONArray("hits");
    assertEquals(Integer.parseInt(hits.getJSONObject(0).getJSONArray("aggregated-likes:2w").getString(0)), 10);
    assertEquals(Integer.parseInt(hits.getJSONObject(1).getJSONArray("aggregated-likes:2w").getString(0)), 9);
    assertEquals(Integer.parseInt(hits.getJSONObject(2).getJSONArray("aggregated-likes:2w").getString(0)), 8);
    Clock.setPredefinedTimeInMinutes(initialTime + 11);
    timeAggregatedActivityValues1.getAggregatesUpdateJob().run();
    timeAggregatedActivityValues2.getAggregatesUpdateJob().run();
    req = "{ \"sort\":[{\"aggregated-likes:5m\":\"desc\"}]}";
     res = TestSensei.search(new JSONObject(req));
     hits = res.getJSONArray("hits");
    assertEquals(Integer.parseInt(hits.getJSONObject(0).getJSONArray("aggregated-likes:5m").getString(0)), 4);
    assertEquals(Integer.parseInt(hits.getJSONObject(1).getJSONArray("aggregated-likes:5m").getString(0)), 3);
    assertEquals(Integer.parseInt(hits.getJSONObject(2).getJSONArray("aggregated-likes:5m").getString(0)), 2);
    assertEquals(Integer.parseInt(hits.getJSONObject(0).getJSONArray("aggregated-likes:15m").getString(0)), 10);
   
    Clock.setPredefinedTimeInMinutes(initialTime + 20);
    timeAggregatedActivityValues1.getAggregatesUpdateJob().run();
    timeAggregatedActivityValues2.getAggregatesUpdateJob().run();
    req = "{ \"sort\":[{\"aggregated-likes:15m\":\"desc\"}]}";

    res = TestSensei.search(new JSONObject(req));
    hits = res.getJSONArray("hits");
  
View Full Code Here

  
  }
  public void test6AddDeleteAddAgainAndQuery() throws Exception {
    final CompositeActivityValues inMemoryColumnData1 = CompositeActivityManager.cachedInstances.get(1).activityValues;
    final CompositeActivityValues inMemoryColumnData2 = CompositeActivityManager.cachedInstances.get(2).activityValues;
    final TimeAggregatedActivityValues timeAggregatedActivityValues1 = clear(inMemoryColumnData1);
    final TimeAggregatedActivityValues timeAggregatedActivityValues2 = clear(inMemoryColumnData2);
    for (int i = 0; i < 10; i ++) {
      FileDataProviderWithMocks.add(new JSONObject().put("id", i).put(SenseiSchema.EVENT_TYPE_FIELD, SenseiSchema.EVENT_TYPE_UPDATE).put("likes", "+" + i));
      expectedVersion++;
    }
   
View Full Code Here

  }

  private synchronized TimeAggregatedActivityValues clear(final CompositeActivityValues inMemoryColumnData1) throws Exception {
    final TimeAggregatedActivityValues timeAggregatedActivityValues = (TimeAggregatedActivityValues)inMemoryColumnData1.getActivityValuesMap().get("likes");
    timeAggregatedActivityValues.getAggregatesUpdateJob().stop();
    timeAggregatedActivityValues.getAggregatesUpdateJob().awaitTermination();
    Thread.sleep(1000);
    for (int i = 0; i <= timeAggregatedActivityValues.maxIndex; i ++) {
      timeAggregatedActivityValues.getDefaultIntValues().getFieldValues()[i] = 0;
      timeAggregatedActivityValues.getTimeActivities().reset(i);
      for (ActivityIntValues activityIntValues : timeAggregatedActivityValues.getValuesMap().values()) {
        activityIntValues.getFieldValues()[i] = 0;
      }
    }
    return timeAggregatedActivityValues;
  }
View Full Code Here

TOP

Related Classes of com.senseidb.indexing.activity.time.TimeAggregatedActivityValues$IntValueHolder

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.