
com.alibaba.druid.sql.dialect.mysql.ast.expr.MySqlJSONTableExpr Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of druid Show documentation
Show all versions of druid Show documentation
An JDBC datasource implementation.
package com.alibaba.druid.sql.dialect.mysql.ast.expr;
import com.alibaba.druid.sql.ast.SQLDataType;
import com.alibaba.druid.sql.ast.SQLExpr;
import com.alibaba.druid.sql.ast.SQLName;
import com.alibaba.druid.sql.ast.SQLObject;
import com.alibaba.druid.sql.dialect.mysql.ast.MySqlObjectImpl;
import com.alibaba.druid.sql.dialect.mysql.visitor.MySqlASTVisitor;
import java.util.ArrayList;
import java.util.List;
public class MySqlJSONTableExpr extends MySqlExprImpl {
private final List columns = new ArrayList();
private SQLExpr expr;
private SQLExpr path;
@Override
public void accept0(MySqlASTVisitor v) {
if (v.visit(this)) {
acceptChild(v, expr);
acceptChild(v, path);
acceptChild(v, columns);
}
v.endVisit(this);
}
@Override
public List getChildren() {
return null;
}
public SQLExpr getExpr() {
return expr;
}
public void setExpr(SQLExpr x) {
if (x != null) {
x.setParent(this);
}
this.expr = x;
}
public SQLExpr getPath() {
return path;
}
public void setPath(SQLExpr x) {
if (x != null) {
x.setParent(this);
}
this.path = x;
}
public List getColumns() {
return columns;
}
public void addColumn(Column column) {
column.setParent(this);
this.columns.add(column);
}
public static class Column extends MySqlObjectImpl {
private final List nestedColumns = new ArrayList();
private SQLName name;
private SQLDataType dataType;
private SQLExpr path;
private boolean ordinality;
private boolean exists;
private SQLExpr onError;
private SQLExpr onEmpty;
@Override
public void accept0(MySqlASTVisitor v) {
if (v.visit(this)) {
acceptChild(v, name);
acceptChild(v, dataType);
acceptChild(v, path);
acceptChild(v, onEmpty);
acceptChild(v, onError);
}
v.endVisit(this);
}
public SQLName getName() {
return name;
}
public void setName(SQLName x) {
if (x != null) {
x.setParent(this);
}
this.name = x;
}
public SQLDataType getDataType() {
return dataType;
}
public void setDataType(SQLDataType x) {
if (x != null) {
x.setParent(this);
}
this.dataType = x;
}
public SQLExpr getPath() {
return path;
}
public void setPath(SQLExpr x) {
if (x != null) {
x.setParent(this);
}
this.path = x;
}
public boolean isOrdinality() {
return ordinality;
}
public void setOrdinality(boolean ordinality) {
this.ordinality = ordinality;
}
public boolean isExists() {
return exists;
}
public void setExists(boolean exists) {
this.exists = exists;
}
public SQLExpr getOnError() {
return onError;
}
public void setOnError(SQLExpr x) {
if (x != null) {
x.setParent(this);
}
this.onError = x;
}
public SQLExpr getOnEmpty() {
return onEmpty;
}
public void setOnEmpty(SQLExpr x) {
if (x != null) {
x.setParent(this);
}
this.onEmpty = x;
}
public List getNestedColumns() {
return nestedColumns;
}
public void addNestedColumn(Column column) {
column.setParent(this);
this.nestedColumns.add(column);
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy