mirror of https://github.com/apache/druid.git
Update PostAggregator to be backwards compat (#12138)
This change mimics what was done in PR #11917 to fix the incompatibilities produced by #11713. #11917 fixed it with AggregatorFactory by creating default methods to allow for extensions built against old jars to still work. This does the same for PostAggregator
This commit is contained in:
parent
7cf9192765
commit
eb0bae49ec
|
@ -23,6 +23,8 @@ import org.apache.druid.guice.annotations.ExtensionPoint;
|
||||||
import org.apache.druid.java.util.common.Cacheable;
|
import org.apache.druid.java.util.common.Cacheable;
|
||||||
import org.apache.druid.segment.ColumnInspector;
|
import org.apache.druid.segment.ColumnInspector;
|
||||||
import org.apache.druid.segment.column.ColumnType;
|
import org.apache.druid.segment.column.ColumnType;
|
||||||
|
import org.apache.druid.segment.column.ColumnTypeFactory;
|
||||||
|
import org.apache.druid.segment.column.ValueType;
|
||||||
|
|
||||||
import javax.annotation.Nullable;
|
import javax.annotation.Nullable;
|
||||||
import java.util.Comparator;
|
import java.util.Comparator;
|
||||||
|
@ -48,10 +50,27 @@ public interface PostAggregator extends Cacheable
|
||||||
/**
|
/**
|
||||||
* Return the output type of a row processed with this post aggregator. Refer to the {@link ColumnType} javadocs
|
* Return the output type of a row processed with this post aggregator. Refer to the {@link ColumnType} javadocs
|
||||||
* for details on the implications of choosing a type.
|
* for details on the implications of choosing a type.
|
||||||
|
*
|
||||||
* @param signature
|
* @param signature
|
||||||
*/
|
*/
|
||||||
@Nullable
|
@Nullable
|
||||||
ColumnType getType(ColumnInspector signature);
|
default ColumnType getType(ColumnInspector signature)
|
||||||
|
{
|
||||||
|
return ColumnTypeFactory.ofValueType(getType());
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This method is deprecated and will be removed soon. Use {@link #getType(ColumnInspector)} instead. Do not call this
|
||||||
|
* method, it will likely produce incorrect results, it exists for backwards compatibility.
|
||||||
|
*/
|
||||||
|
@Deprecated
|
||||||
|
default ValueType getType()
|
||||||
|
{
|
||||||
|
throw new UnsupportedOperationException(
|
||||||
|
"Do not call or implement this method, it is deprecated, use 'getType(ColumnInspector)' instead"
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Allows returning an enriched post aggregator, built from contextual information available from the given map of
|
* Allows returning an enriched post aggregator, built from contextual information available from the given map of
|
||||||
|
|
Loading…
Reference in New Issue