FBVColumn.java
/*-
* #%L
* JSQLParser library
* %%
* Copyright (C) 2004 - 2022 JSQLParser
* %%
* Dual licensed under GNU LGPL 2.1 or Apache License 2.0
* #L%
*/
package net.sf.jsqlparser.statement;
import net.sf.jsqlparser.expression.Expression;
import net.sf.jsqlparser.expression.LongValue;
import net.sf.jsqlparser.expression.StringValue;
public class FBVColumn {
private boolean precedesComma;
private String key;
private Expression value;
private String stringValue;
private FBVColumn(String key, Expression value) {
this.key = key;
this.value = value;
this.stringValue = null;
}
public FBVColumn(String key, String value) {
this.key = key;
this.value = null;
this.stringValue = value;
}
public FBVColumn(String key, StringValue value) {
this(key, (Expression) value);
}
public FBVColumn(String key, LongValue value) {
this(key, (Expression) value);
}
public boolean precedesComma() {
return precedesComma;
}
public void setPrecedesComma(boolean precedesComma) {
this.precedesComma = precedesComma;
}
public String getKey() {
return key;
}
public void setKey(String key) {
this.key = key;
}
public Expression getValue() {
return value;
}
public void setValue(String value) {
this.stringValue = value;
this.value = null;
}
private void setValue(Expression value) {
this.value = value;
this.stringValue = null;
}
public void setValue(StringValue value) {
setValue((Expression) value);
}
public void setValue(LongValue value) {
setValue((Expression) value);
}
@Override
public String toString() {
StringBuilder sql = new StringBuilder();
if (precedesComma) {
sql.append(", ");
}
sql.append(key);
sql.append(" = ");
if (stringValue != null) {
sql.append(stringValue);
} else {
sql.append(value);
}
return sql.toString();
}
}