Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * Licensed under the Apache License, Version 2.0 (the "License");
   * you may not use this file except in compliance with the License.
   * You may obtain a copy of the License at
   *
   *     http://www.apache.org/licenses/LICENSE-2.0
   *
   * Unless required by applicable law or agreed to in writing, software
   * distributed under the License is distributed on an "AS IS" BASIS,
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
 package com.facebook.presto.sql.planner.plan;
 
 
 
 import java.util.List;
 import java.util.Map;
 
 import static com.google.common.base.Preconditions.checkArgument;
 import static com.google.common.base.Preconditions.checkNotNull;
 
 public class AggregationNode
         extends PlanNode
 {
     private final PlanNode source;
     private final List<SymbolgroupByKeys;
     private final Map<SymbolFunctionCallaggregations;
     // Map from function symbol, to the mask symbol
     private final Map<SymbolSymbolmasks;
     private final Map<SymbolSignaturefunctions;
     private final Step step;
     private final Optional<SymbolsampleWeight;
     private final double confidence;
     private final Optional<SymbolhashSymbol;
 
     public enum Step
     {
         PARTIAL,
         FINAL,
         SINGLE
     }
 
     @JsonCreator
     public AggregationNode(@JsonProperty("id"PlanNodeId id,
             @JsonProperty("source"PlanNode source,
             @JsonProperty("groupBy"List<SymbolgroupByKeys,
             @JsonProperty("aggregations"Map<SymbolFunctionCallaggregations,
             @JsonProperty("functions"Map<SymbolSignaturefunctions,
             @JsonProperty("masks"Map<SymbolSymbolmasks,
             @JsonProperty("step"Step step,
             @JsonProperty("sampleWeight"Optional<SymbolsampleWeight,
             @JsonProperty("confidence"double confidence,
             @JsonProperty("hashSymbol"Optional<SymbolhashSymbol)
     {
         super(id);
 
         this. = source;
         this. = ImmutableList.copyOf(checkNotNull(groupByKeys"groupByKeys is null"));
         this. = ImmutableMap.copyOf(checkNotNull(aggregations"aggregations is null"));
         this. = ImmutableMap.copyOf(checkNotNull(functions"functions is null"));
         this. = ImmutableMap.copyOf(checkNotNull(masks"masks is null"));
         for (Symbol mask : masks.keySet()) {
             checkArgument(aggregations.containsKey(mask), "mask does not match any aggregations");
         }
         this. = step;
         this. = checkNotNull(sampleWeight"sampleWeight is null");
         checkArgument(confidence >= 0 && confidence <= 1, "confidence must be in [0, 1]");
         this. = confidence;
         this. = hashSymbol;
     }
 
     @Override
     public List<PlanNodegetSources()
     {
         return ImmutableList.of();
     }
 
     @Override
     public List<SymbolgetOutputSymbols()
     {
         ImmutableList.Builder<Symbolsymbols = ImmutableList.builder();
         symbols.addAll();
         // output hashSymbol if present
         if (.isPresent()) {
             symbols.add(.get());
         }
         symbols.addAll(.keySet());
        return symbols.build();
    }
    @JsonProperty("confidence")
    public double getConfidence()
    {
        return ;
    }
    @JsonProperty("aggregations")
    {
        return ;
    }
    @JsonProperty("functions")
    public Map<SymbolSignaturegetFunctions()
    {
        return ;
    }
    @JsonProperty("masks")
    public Map<SymbolSymbolgetMasks()
    {
        return ;
    }
    @JsonProperty("groupBy")
    public List<SymbolgetGroupBy()
    {
        return ;
    }
    @JsonProperty("source")
    public PlanNode getSource()
    {
        return ;
    }
    @JsonProperty("step")
    public Step getStep()
    {
        return ;
    }
    @JsonProperty("sampleWeight")
    public Optional<SymbolgetSampleWeight()
    {
        return ;
    }
    @JsonProperty("hashSymbol")
    public Optional<SymbolgetHashSymbol()
    {
        return ;
    }
    @Override
    public <C, R> R accept(PlanVisitor<C, R> visitor, C context)
    {
        return visitor.visitAggregation(thiscontext);
    }
New to GrepCode? Check out our FAQ X