ScriptSourceDestination.java
/*-
* #%L
* JSQLParser library
* %%
* Copyright (C) 2004 - 2019 JSQLParser
* %%
* Dual licensed under GNU LGPL 2.1 or Apache License 2.0
* #L%
*/
package net.sf.jsqlparser.statement;
import net.sf.jsqlparser.expression.StringValue;
import net.sf.jsqlparser.schema.Table;
import net.sf.jsqlparser.statement.export.ExportIntoItem;
import net.sf.jsqlparser.statement.imprt.ImportFromItem;
import java.io.Serializable;
import java.util.List;
public class ScriptSourceDestination implements ImportFromItem, ExportIntoItem, Serializable {
private Table script;
private ConnectionDefinition connectionDefinition;
private List<String> properties;
private List<StringValue> values;
private ErrorClause errorClause;
public Table getScript() {
return script;
}
public void setScript(Table script) {
this.script = script;
}
public ConnectionDefinition getConnectionDefinition() {
return connectionDefinition;
}
public void setConnectionDefinition(ConnectionDefinition connectionDefinition) {
this.connectionDefinition = connectionDefinition;
}
public List<String> getProperties() {
return properties;
}
public void setProperties(List<String> properties) {
this.properties = properties;
}
public List<StringValue> getValues() {
return values;
}
public void setValues(List<StringValue> values) {
this.values = values;
}
@Override
public ErrorClause getErrorClause() {
return errorClause;
}
@Override
public void setErrorClause(ErrorClause errorClause) {
this.errorClause = errorClause;
}
@Override
public String toString() {
StringBuilder sql = new StringBuilder();
sql.append("SCRIPT ");
sql.append(script);
if (connectionDefinition != null) {
sql.append(" ");
sql.append(connectionDefinition);
}
if (properties != null && values != null) {
sql.append(" WITH");
int max = Math.min(properties.size(), values.size());
for (int i = 0; i < max; i++) {
sql.append(" ");
sql.append(properties.get(i));
sql.append(" = ");
sql.append(values.get(i));
}
}
if (errorClause != null) {
sql.append(errorClause);
}
return sql.toString();
}
}