public class TimeBoundaryQueryQueryToolChest extends QueryToolChest<Result<TimeBoundaryResultValue>,TimeBoundaryQuery>
Constructor and Description |
---|
TimeBoundaryQueryQueryToolChest() |
Modifier and Type | Method and Description |
---|---|
<T extends LogicalSegment> |
filterSegments(TimeBoundaryQuery query,
List<T> segments)
This method is called to allow the query to prune segments that it does not believe need to actually
be queried.
|
CacheStrategy<Result<TimeBoundaryResultValue>,Object,TimeBoundaryQuery> |
getCacheStrategy(TimeBoundaryQuery query)
Returns a CacheStrategy to be used to load data into the cache and remove it from the cache.
|
com.google.common.collect.Ordering<Result<TimeBoundaryResultValue>> |
getOrdering() |
com.fasterxml.jackson.core.type.TypeReference<Result<TimeBoundaryResultValue>> |
getResultTypeReference()
Returns a TypeReference object that is just passed through to Jackson in order to deserialize
the results of this type of query.
|
com.metamx.emitter.service.ServiceMetricEvent.Builder |
makeMetricBuilder(TimeBoundaryQuery query)
Creates a builder that is used to generate a metric for this specific query type.
|
com.google.common.base.Function<Result<TimeBoundaryResultValue>,Result<TimeBoundaryResultValue>> |
makePreComputeManipulatorFn(TimeBoundaryQuery query,
MetricManipulationFn fn)
Creates a Function that can take in a ResultType and return a new ResultType having applied
the MetricManipulatorFn to each of the metrics.
|
QueryRunner<Result<TimeBoundaryResultValue>> |
mergeResults(QueryRunner<Result<TimeBoundaryResultValue>> runner)
This method wraps a QueryRunner.
|
com.metamx.common.guava.Sequence<Result<TimeBoundaryResultValue>> |
mergeSequences(com.metamx.common.guava.Sequence<com.metamx.common.guava.Sequence<Result<TimeBoundaryResultValue>>> seqOfSequences)
This method doesn't belong here, but it's here for now just to make it work.
|
com.metamx.common.guava.Sequence<Result<TimeBoundaryResultValue>> |
mergeSequencesUnordered(com.metamx.common.guava.Sequence<com.metamx.common.guava.Sequence<Result<TimeBoundaryResultValue>>> seqOfSequences)
This method doesn't belong here, but it's here for now just to make it work.
|
makePostComputeManipulatorFn, postMergeQueryDecoration, preMergeQueryDecoration
public <T extends LogicalSegment> List<T> filterSegments(TimeBoundaryQuery query, List<T> segments)
QueryToolChest
filterSegments
in class QueryToolChest<Result<TimeBoundaryResultValue>,TimeBoundaryQuery>
T
- A Generic parameter because Java is coolquery
- The query being processedsegments
- The list of candidate segments to be queriedpublic QueryRunner<Result<TimeBoundaryResultValue>> mergeResults(QueryRunner<Result<TimeBoundaryResultValue>> runner)
QueryToolChest
mergeResults
in class QueryToolChest<Result<TimeBoundaryResultValue>,TimeBoundaryQuery>
runner
- A QueryRunner that provides a series of ResultType objects in time order (ascending)public com.metamx.common.guava.Sequence<Result<TimeBoundaryResultValue>> mergeSequences(com.metamx.common.guava.Sequence<com.metamx.common.guava.Sequence<Result<TimeBoundaryResultValue>>> seqOfSequences)
QueryToolChest
mergeSequences
in class QueryToolChest<Result<TimeBoundaryResultValue>,TimeBoundaryQuery>
seqOfSequences
- sequence of sequences to be mergedpublic com.metamx.common.guava.Sequence<Result<TimeBoundaryResultValue>> mergeSequencesUnordered(com.metamx.common.guava.Sequence<com.metamx.common.guava.Sequence<Result<TimeBoundaryResultValue>>> seqOfSequences)
QueryToolChest
mergeSequencesUnordered
in class QueryToolChest<Result<TimeBoundaryResultValue>,TimeBoundaryQuery>
seqOfSequences
- sequence of sequences to be mergedpublic com.metamx.emitter.service.ServiceMetricEvent.Builder makeMetricBuilder(TimeBoundaryQuery query)
QueryToolChest
makeMetricBuilder
in class QueryToolChest<Result<TimeBoundaryResultValue>,TimeBoundaryQuery>
query
- The query that is being processedpublic com.google.common.base.Function<Result<TimeBoundaryResultValue>,Result<TimeBoundaryResultValue>> makePreComputeManipulatorFn(TimeBoundaryQuery query, MetricManipulationFn fn)
QueryToolChest
makePreComputeManipulatorFn
in class QueryToolChest<Result<TimeBoundaryResultValue>,TimeBoundaryQuery>
query
- The Query that is currently being processedfn
- The function that should be applied to all metrics in the resultspublic com.fasterxml.jackson.core.type.TypeReference<Result<TimeBoundaryResultValue>> getResultTypeReference()
QueryToolChest
getResultTypeReference
in class QueryToolChest<Result<TimeBoundaryResultValue>,TimeBoundaryQuery>
public CacheStrategy<Result<TimeBoundaryResultValue>,Object,TimeBoundaryQuery> getCacheStrategy(TimeBoundaryQuery query)
QueryToolChest
getCacheStrategy
in class QueryToolChest<Result<TimeBoundaryResultValue>,TimeBoundaryQuery>
query
- The query whose results might be cachedpublic com.google.common.collect.Ordering<Result<TimeBoundaryResultValue>> getOrdering()
Copyright © 2011–2015. All rights reserved.