Package com.illumon.iris.db.v2.by
Class FirstOrLastByAggregationFactory
java.lang.Object
com.illumon.iris.db.v2.by.FirstOrLastByAggregationFactory
- All Implemented Interfaces:
AggregationContextFactory
public class FirstOrLastByAggregationFactory extends Object implements AggregationContextFactory
-
Field Summary
Fields Modifier and Type Field Description static boolean
ENABLE_UNTRACKED_LAST_BY
-
Constructor Summary
Constructors Constructor Description FirstOrLastByAggregationFactory(boolean isFirst)
FirstOrLastByAggregationFactory(boolean isFirst, String exposeRedirection)
-
Method Summary
Modifier and Type Method Description boolean
allowKeyOnlySubstitution()
Should we allow substitution with aKeyOnlyAggregationFactory
(e.g.com.illumon.iris.db.v2.by.AggregationContext
makeAggregationContext(Table table, String... groupByColumns)
Make anAggregationContext
for this aggregation.String
toString()
-
Field Details
-
ENABLE_UNTRACKED_LAST_BY
public static boolean ENABLE_UNTRACKED_LAST_BY
-
-
Constructor Details
-
FirstOrLastByAggregationFactory
public FirstOrLastByAggregationFactory(boolean isFirst) -
FirstOrLastByAggregationFactory
-
-
Method Details
-
allowKeyOnlySubstitution
public boolean allowKeyOnlySubstitution()Description copied from interface:AggregationContextFactory
Should we allow substitution with aKeyOnlyAggregationFactory
(e.g. selectDistinct) when there are only key columns? Instances whose operators could have side effects or are alreadyKeyOnlyAggregationFactory
should return false.- Specified by:
allowKeyOnlySubstitution
in interfaceAggregationContextFactory
- Returns:
- Whether to allow a
KeyOnlyAggregationFactory
to be substituted for this when there are only key columns
-
makeAggregationContext
public com.illumon.iris.db.v2.by.AggregationContext makeAggregationContext(@NotNull Table table, @NotNull String... groupByColumns)Description copied from interface:AggregationContextFactory
Make anAggregationContext
for this aggregation.- Specified by:
makeAggregationContext
in interfaceAggregationContextFactory
- Parameters:
table
- The sourceTable
to aggregategroupByColumns
- The key column names- Returns:
- A new or safely reusable
AggregationContext
-
toString
-