/* * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file * distributed with this work for additional information * regarding copyright ownership. The ASF licenses this file * to you 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 org.apache.drill.exec.store.mock; import org.apache.drill.exec.vector.ValueVector; /** * Interface which all mock column data generators must * implement. Each has a {@link #setup} method which is given * the column definition for the column. This definition may have * additional configuration information for the column (column width, * precision, etc.). Each also has a {@link #setValue} method that * does the work of setting a specific value vector position to the * generated value. The implementation is expected to cast the * vector to the type supported by that particular generator. * (This is test code; we're not overly concerned with the overhead * of such casts.) */ public interface FieldGen { void setup(ColumnDef colDef); void setValue(ValueVector v, int index); }