Examples of BufferAggregator


Examples of io.druid.query.aggregation.BufferAggregator

                    }
                  };
                }

                final int metricIndex = metricIndexInt;
                final BufferAggregator agg = index.getAggregator(metricIndex);

                return new FloatColumnSelector()
                {
                  @Override
                  public float get()
                  {
                    return agg.getFloat(
                        index.getMetricBuffer(),
                        index.getMetricPosition(currEntry.getValue(), metricIndex)
                    );
                  }
                };
              }

              @Override
              public LongColumnSelector makeLongColumnSelector(String columnName)
              {
                final String metricName = columnName.toLowerCase();

                if(metricName.equals(Column.TIME_COLUMN_NAME)){
                  return new LongColumnSelector()
                  {
                    @Override
                    public long get()
                    {
                      return currEntry.getKey().getTimestamp();
                    }
                  };
                }
                final Integer metricIndexInt = index.getMetricIndex(metricName);
                if (metricIndexInt == null) {
                  return new LongColumnSelector()
                  {
                    @Override
                    public long get()
                    {
                      return 0L;
                    }
                  };
                }

                final int metricIndex = metricIndexInt;
                final BufferAggregator agg = index.getAggregator(metricIndex);

                return new LongColumnSelector()
                {
                  @Override
                  public long get()
                  {
                    return agg.getLong(
                        index.getMetricBuffer(),
                        index.getMetricPosition(currEntry.getValue(), metricIndex)
                    );
                  }
                };
              }

              @Override
              public ObjectColumnSelector makeObjectColumnSelector(String column)
              {
                final String columnName = column.toLowerCase();
                final Integer metricIndexInt = index.getMetricIndex(columnName);

                if (metricIndexInt != null) {
                  final int metricIndex = metricIndexInt;

                  final ComplexMetricSerde serde = ComplexMetrics.getSerdeForType(index.getMetricType(columnName));
                  final BufferAggregator agg = index.getAggregator(metricIndex);
                  return new ObjectColumnSelector()
                  {
                    @Override
                    public Class classOfObject()
                    {
                      return serde.getObjectStrategy().getClazz();
                    }

                    @Override
                    public Object get()
                    {
                      return agg.get(
                          index.getMetricBuffer(),
                          index.getMetricPosition(currEntry.getValue(), metricIndex)
                      );
                    }
                  };
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. 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.