1 package com.mapd.parser.extension.ddl;
3 import static java.util.Objects.requireNonNull;
5 import com.google.gson.annotations.Expose;
7 import org.apache.calcite.sql.SqlCall;
8 import org.apache.calcite.sql.SqlDdl;
9 import org.apache.calcite.sql.SqlIdentifier;
10 import org.apache.calcite.sql.SqlKind;
11 import org.apache.calcite.sql.SqlNode;
12 import org.apache.calcite.sql.SqlNodeList;
13 import org.apache.calcite.sql.SqlOperator;
14 import org.apache.calcite.sql.SqlSpecialOperator;
15 import org.apache.calcite.sql.parser.SqlParserPos;
17 import org.apache.calcite.util.JsonBuilder;
18 import org.apache.calcite.util.Pair;
21 import java.util.ArrayList;
22 import java.util.List;
27 new SqlSpecialOperator(
"REVOKE_PRIVILEGE", SqlKind.OTHER_DDL);
45 requireNonNull(privileges);
46 this.command = OPERATOR.getName();
61 Map<String, Object> map = jsonBuilder.map();
64 List<Object> privilege_list = jsonBuilder.list();
66 privilege_list.add(privilege.toString());
68 map.put(
"privileges", privilege_list);
72 map.put(
"target", this.target);
75 List<Object> grantee_list = jsonBuilder.list();
76 for (SqlNode grantee : this.
grantees) {
77 grantee_list.add(grantee.toString());
79 map.put(
"grantees", grantee_list);
82 map.put(
"command",
"REVOKE_PRIVILEGE");
83 Map<String, Object> payload = jsonBuilder.map();
84 payload.put(
"payload", map);
85 return jsonBuilder.toJsonString(payload);
static final SqlOperator OPERATOR
List< SqlNode > getOperandList()
SqlRevokePrivilege(SqlParserPos pos, SqlNodeList privileges, String type, String target, SqlNodeList grantees)