blob: f41535fe88b20d1af377d4889791cd0cea466e8b [file] [log] [blame]
/*
* Copyright 2009-2010 by The Regents of the University of California
* 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 from
*
* 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 edu.uci.ics.hyracks.algebricks.core.algebra.scripting;
import java.util.List;
import edu.uci.ics.hyracks.algebricks.common.utils.Pair;
import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalVariable;
import edu.uci.ics.hyracks.algebricks.data.IPrinterFactory;
import edu.uci.ics.hyracks.dataflow.std.file.ITupleParserFactory;
public class StringStreamingScriptDescription implements IScriptDescription {
private final String command;
private final IPrinterFactory[] printerFactories;
private final char fieldDelimiter;
private final ITupleParserFactory parserFactory;
private final List<Pair<LogicalVariable, Object>> varTypePairs;
public StringStreamingScriptDescription(String command, IPrinterFactory[] printerFactories, char fieldDelimiter,
ITupleParserFactory parserFactory, List<Pair<LogicalVariable, Object>> varTypePairs) {
this.command = command;
this.printerFactories = printerFactories;
this.fieldDelimiter = fieldDelimiter;
this.parserFactory = parserFactory;
this.varTypePairs = varTypePairs;
}
@Override
public ScriptKind getKind() {
return ScriptKind.STRING_STREAMING;
}
public String getCommand() {
return command;
}
public IPrinterFactory[] getPrinterFactories() {
return printerFactories;
}
public char getFieldDelimiter() {
return fieldDelimiter;
}
public ITupleParserFactory getParserFactory() {
return parserFactory;
}
@Override
public List<Pair<LogicalVariable, Object>> getVarTypePairs() {
return varTypePairs;
}
}