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;
 import static com.google.common.collect.Iterables.concat;
 
 public class WindowNode
         extends PlanNode
 {
     private final PlanNode source;
     private final List<SymbolpartitionBy;
     private final List<SymbolorderBy;
     private final Map<SymbolSortOrderorderings;
     private final Frame frame;
     private final Map<SymbolFunctionCallwindowFunctions;
     private final Map<SymbolSignaturefunctionHandles;
 
     private final Optional<SymbolhashSymbol;
 
     @JsonCreator
     public WindowNode(
             @JsonProperty("id"PlanNodeId id,
             @JsonProperty("source"PlanNode source,
             @JsonProperty("partitionBy"List<SymbolpartitionBy,
             @JsonProperty("orderBy"List<SymbolorderBy,
             @JsonProperty("orderings"Map<SymbolSortOrderorderings,
             @JsonProperty("frame"Frame frame,
             @JsonProperty("windowFunctions"Map<SymbolFunctionCallwindowFunctions,
             @JsonProperty("signatures"Map<SymbolSignaturesignatures,
             @JsonProperty("hashSymbol"Optional<SymbolhashSymbol)
     {
         super(id);
 
         checkNotNull(source"source is null");
         checkNotNull(partitionBy"partitionBy is null");
         checkNotNull(orderBy"orderBy is null");
         checkArgument(orderings.size() == orderBy.size(), "orderBy and orderings sizes don't match");
         checkNotNull(frame"frame is null");
         checkNotNull(windowFunctions"windowFunctions is null");
         checkNotNull(signatures"signatures is null");
         checkArgument(windowFunctions.keySet().equals(signatures.keySet()), "windowFunctions does not match signatures");
         checkNotNull(hashSymbol"hashSymbol is null");
 
         this. = source;
         this. = ImmutableList.copyOf(partitionBy);
         this. = ImmutableList.copyOf(orderBy);
         this. = ImmutableMap.copyOf(orderings);
         this. = frame;
         this. = ImmutableMap.copyOf(windowFunctions);
         this. = ImmutableMap.copyOf(signatures);
         this. = hashSymbol;
     }
 
     @Override
     public List<PlanNodegetSources()
     {
         return ImmutableList.of();
     }
 
     @Override
     public List<SymbolgetOutputSymbols()
     {
         return ImmutableList.copyOf(concat(.getOutputSymbols(), .keySet()));
     }
 
     @JsonProperty
     public PlanNode getSource()
     {
        return ;
    }
    public List<SymbolgetPartitionBy()
    {
        return ;
    }
    public List<SymbolgetOrderBy()
    {
        return ;
    }
    public Map<SymbolSortOrdergetOrderings()
    {
        return ;
    }
    public Frame getFrame()
    {
        return ;
    }
    {
        return ;
    }
    public Map<SymbolSignaturegetSignatures()
    {
        return ;
    }
    public Optional<SymbolgetHashSymbol()
    {
        return ;
    }
    @Override
    public <C, R> R accept(PlanVisitor<C, R> visitor, C context)
    {
        return visitor.visitWindow(thiscontext);
    }
    @Immutable
    public static class Frame
    {
        private final WindowFrame.Type type;
        private final FrameBound.Type startType;
        private final Optional<SymbolstartValue;
        private final FrameBound.Type endType;
        private final Optional<SymbolendValue;
        @JsonCreator
        public Frame(
                @JsonProperty("type"WindowFrame.Type type,
                @JsonProperty("startType"FrameBound.Type startType,
                @JsonProperty("startValue"Optional<SymbolstartValue,
                @JsonProperty("endType"FrameBound.Type endType,
                @JsonProperty("endValue"Optional<SymbolendValue)
        {
            this. = checkNotNull(startType"startType is null");
            this. = checkNotNull(startValue"startValue is null");
            this. = checkNotNull(endType"endType is null");
            this. = checkNotNull(endValue"endValue is null");
            this. = checkNotNull(type"type is null");
        }
        @JsonProperty
        public WindowFrame.Type getType()
        {
            return ;
        }
        @JsonProperty
        public FrameBound.Type getStartType()
        {
            return ;
        }
        @JsonProperty
        public Optional<SymbolgetStartValue()
        {
            return ;
        }
        @JsonProperty
        public FrameBound.Type getEndType()
        {
            return ;
        }
        @JsonProperty
        public Optional<SymbolgetEndValue()
        {
            return ;
        }
    }
New to GrepCode? Check out our FAQ X