package serde
- Alphabetic
- By Inheritance
- serde
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
-
case class
ActionTypeDesc(fieldName: String = null, fieldExtractor: String = null, actionType: Option[String] = None) extends Descriptor with Product with Serializable
Action Type Descriptor
Action Type Descriptor
- fieldName
the field name or method name of this action type field
- fieldExtractor
the key of a ActionTypeExtractor instance
- actionType
the explicitly given action type which take precedence over extracting
- trait ActionTypeExtractor extends (AnyRef) ⇒ PrivilegeObjectActionType with Extractor
-
case class
CatalogDesc(fieldName: String = "catalog", fieldExtractor: String = "CatalogPluginCatalogExtractor") extends Descriptor with Product with Serializable
Catalog Descriptor
Catalog Descriptor
- fieldName
the field name or method name of this catalog field
- fieldExtractor
the key of a CatalogExtractor instance
- trait CatalogExtractor extends (AnyRef) ⇒ Option[String] with Extractor
-
class
CatalogPluginCatalogExtractor extends CatalogExtractor
org.apache.spark.sql.connector.catalog.CatalogPlugin
-
class
CatalogPluginOptionCatalogExtractor extends CatalogExtractor
Option[org.apache.spark.sql.connector.catalog.CatalogPlugin]
-
class
CatalogTableOptionTableExtractor extends TableExtractor
org.apache.spark.sql.catalyst.catalog.CatalogTable Option
-
class
CatalogTableTableExtractor extends TableExtractor
org.apache.spark.sql.catalyst.catalog.CatalogTable
-
case class
ColumnDesc(fieldName: String, fieldExtractor: String) extends Descriptor with Product with Serializable
Column Descriptor
Column Descriptor
- fieldName
the field name or method name of this column field
- fieldExtractor
the key of a ColumnExtractor instance
- trait ColumnExtractor extends (AnyRef) ⇒ Seq[String] with Extractor
-
trait
CommandSpec extends AnyRef
A command specification contains
A command specification contains
- different Descriptors for specific implementations. It's a list to cover:
- A command may have multiple object to describe, such as create table A like B
- An object descriptor may vary through spark versions, it wins at least once if one of the descriptors matches
- the classname of a command which this spec point to
- the OperationType of this command which finally maps to an access privilege
- different Descriptors for specific implementations. It's a list to cover:
-
class
DataSourceV2RelationTableExtractor extends TableExtractor
org.apache.spark.sql.execution.datasources.v2.DataSourceV2Relation
-
case class
Database(catalog: Option[String], database: String) extends Product with Serializable
:: Developer API ::
:: Developer API ::
Represents a table identity with owner
- catalog
catalog name or None
- database
database name or None
-
case class
DatabaseCommandSpec(classname: String, databaseDescs: Seq[DatabaseDesc], opType: String = "QUERY") extends CommandSpec with Product with Serializable
A specification describe a database command
A specification describe a database command
- classname
the database command classname
- databaseDescs
a list of database descriptors
- opType
operation type, e.g. CREATEDATABASE
-
case class
DatabaseDesc(fieldName: String, fieldExtractor: String, catalogDesc: Option[CatalogDesc] = None, isInput: Boolean = false) extends Descriptor with Product with Serializable
Database Descriptor
Database Descriptor
- fieldName
the field name or method name of this database field
- fieldExtractor
the key of a DatabaseExtractor instance
- isInput
read or write
- trait DatabaseExtractor extends (AnyRef) ⇒ Database with Extractor
-
sealed
trait
Descriptor extends AnyRef
A database object(such as database, table, function) descriptor describes its name and getter in/from another object(such as a spark sql command).
-
class
ExpressionInfoFunctionExtractor extends FunctionExtractor
org.apache.spark.sql.catalyst.expressions.ExpressionInfo
-
class
ExpressionInfoFunctionTypeExtractor extends FunctionTypeExtractor
org.apache.spark.sql.catalyst.expressions.ExpressionInfo
-
trait
Extractor extends AnyRef
Base trait for an field extractor
-
case class
Function(catalog: Option[String], database: Option[String], functionName: String) extends Product with Serializable
:: Developer API ::
:: Developer API ::
Represents a function identity
-
case class
FunctionCommandSpec(classname: String, functionDescs: Seq[FunctionDesc], opType: String) extends CommandSpec with Product with Serializable
A specification describe a function command
A specification describe a function command
- classname
the database command classname
- functionDescs
a list of function descriptors
- opType
operation type, e.g. DROPFUNCTION
-
case class
FunctionDesc(fieldName: String, fieldExtractor: String, databaseDesc: Option[DatabaseDesc] = None, functionTypeDesc: Option[FunctionTypeDesc] = None, isInput: Boolean = false) extends Descriptor with Product with Serializable
Function Descriptor
Function Descriptor
- fieldName
the field name or method name of this function field
- fieldExtractor
the key of a FunctionExtractor instance
- databaseDesc
which kinds of functions are skipped checking
- functionTypeDesc
indicates the function type if necessary
- isInput
read or write
- trait FunctionExtractor extends (AnyRef) ⇒ Function with Extractor
-
class
FunctionIdentifierFunctionExtractor extends FunctionExtractor
org.apache.spark.sql.catalyst.FunctionIdentifier
-
class
FunctionIdentifierFunctionTypeExtractor extends FunctionTypeExtractor
org.apache.spark.sql.catalyst.FunctionIdentifier
-
class
FunctionNameFunctionTypeExtractor extends FunctionTypeExtractor
String
-
case class
FunctionTypeDesc(fieldName: String, fieldExtractor: String, skipTypes: Seq[String]) extends Descriptor with Product with Serializable
Function Type Descriptor
Function Type Descriptor
- fieldName
the field name or method name of this function type field
- fieldExtractor
the key of a FunctionTypeExtractor instance
- skipTypes
which kinds of functions are skipped checking
- trait FunctionTypeExtractor extends (AnyRef, SparkSession) ⇒ FunctionType with Extractor
-
class
IdentifierTableExtractor extends TableExtractor
org.apache.spark.sql.connector.catalog.Identifier
-
class
LogicalPlanOptionQueryExtractor extends QueryExtractor
Option[org.apache.spark.sql.catalyst.plans.logical.LogicalPlan]
-
class
LogicalPlanQueryExtractor extends QueryExtractor
org.apache.spark.sql.catalyst.plans.logical.LogicalPlan
-
class
LogicalRelationTableExtractor extends TableExtractor
org.apache.spark.sql.execution.datasources.LogicalRelation
-
class
OverwriteOrInsertActionTypeExtractor extends ActionTypeExtractor
Boolean
- class PartitionColumnExtractor extends ColumnExtractor
- class PartitionLocsSeqColumnExtractor extends ColumnExtractor
- class PartitionOptionColumnExtractor extends ColumnExtractor
- class PartitionSeqColumnExtractor extends ColumnExtractor
-
class
QualifiedNameStringFunctionExtractor extends FunctionExtractor
* String
-
case class
QueryDesc(fieldName: String, fieldExtractor: String = "LogicalPlanQueryExtractor") extends Descriptor with Product with Serializable
Query Descriptor which represents one or more query fields of a command
Query Descriptor which represents one or more query fields of a command
- fieldName
the field name or method name of this query field
- fieldExtractor
the key of a QueryExtractor instance The default value is LogicalPlanQueryExtractor which return the original plan directly.
- trait QueryExtractor extends (AnyRef) ⇒ Option[LogicalPlan] with Extractor
-
class
ResolvedDBObjectNameDatabaseExtractor extends DatabaseExtractor
org.apache.spark.sql.catalyst.analysis.ResolvedDbObjectName
-
class
ResolvedDbObjectNameTableExtractor extends TableExtractor
org.apache.spark.sql.catalyst.analysis.ResolvedDbObjectName
-
class
ResolvedIdentifierTableExtractor extends TableExtractor
org.apache.spark.sql.catalyst.analysis.ResolvedIdentifier
-
class
ResolvedNamespaceDatabaseExtractor extends DatabaseExtractor
org.apache.spark.sql.catalyst.analysis.ResolvedNamespace
-
class
ResolvedTableTableExtractor extends TableExtractor
org.apache.spark.sql.catalyst.analysis.ResolvedTable
-
class
SaveModeActionTypeExtractor extends ActionTypeExtractor
org.apache.spark.sql.SaveMode
- case class ScanDesc(fieldName: String, fieldExtractor: String, catalogDesc: Option[CatalogDesc] = None) extends Descriptor with Product with Serializable
- case class ScanSpec(classname: String, scanDescs: Seq[ScanDesc], functionDescs: Seq[FunctionDesc] = Seq.empty) extends CommandSpec with Product with Serializable
- class StringColumnExtractor extends ColumnExtractor
-
class
StringDatabaseExtractor extends DatabaseExtractor
String
-
class
StringFunctionExtractor extends FunctionExtractor
String
-
class
StringOptionCatalogExtractor extends CatalogExtractor
Option[String]
-
class
StringOptionDatabaseExtractor extends DatabaseExtractor
Option[String]
- class StringSeqColumnExtractor extends ColumnExtractor
-
class
StringSeqDatabaseExtractor extends DatabaseExtractor
Seq[String]
- class StringSeqLastColumnExtractor extends ColumnExtractor
- class StringSeqOptionColumnExtractor extends ColumnExtractor
-
class
StringSeqOptionDatabaseExtractor extends DatabaseExtractor
Option[Seq[String]]
-
class
StructFieldSeqColumnExtractor extends ColumnExtractor
org.apache.spark.sql.types.StructField
-
case class
Table(catalog: Option[String], database: Option[String], table: String, owner: Option[String]) extends Product with Serializable
:: Developer API ::
:: Developer API ::
Represents a table identity with owner
- catalog
catalog name or None
- database
database name or None
- table
table name
- owner
table owner if any, otherwise None
-
case class
TableCommandSpec(classname: String, tableDescs: Seq[TableDesc], opType: String = OperationType.QUERY.toString, queryDescs: Seq[QueryDesc] = Nil) extends CommandSpec with Product with Serializable
A specification describe a table command
A specification describe a table command
- classname
the database command classname
- tableDescs
a list of table descriptors
- opType
operation type, e.g. DROPFUNCTION
- queryDescs
the query descriptors a table command may have
-
case class
TableDesc(fieldName: String, fieldExtractor: String, columnDesc: Option[ColumnDesc] = None, actionTypeDesc: Option[ActionTypeDesc] = None, tableTypeDesc: Option[TableTypeDesc] = None, catalogDesc: Option[CatalogDesc] = None, isInput: Boolean = false, setCurrentDatabaseIfMissing: Boolean = false) extends Descriptor with Product with Serializable
Table Descriptor
Table Descriptor
- fieldName
the field name or method name of this table field
- fieldExtractor
the key of a TableExtractor instance
- columnDesc
optional ColumnDesc instance if columns field are specified
- actionTypeDesc
optional ActionTypeDesc indicates the action type
- tableTypeDesc
optional TableTypeDesc indicates the table type
- catalogDesc
optional CatalogDesc instance if a catalog field is specified, the catalog will respect the one resolved from
fieldExtractorfirst- isInput
read or write
- setCurrentDatabaseIfMissing
whether to use current database if the database field is missing
-
trait
TableExtractor extends (SparkSession, AnyRef) ⇒ Option[Table] with Extractor
A trait for extracting database and table as string tuple from the give object whose class type is define by
key. -
class
TableIdentifierTableExtractor extends TableExtractor
org.apache.spark.sql.catalyst.TableIdentifier
-
class
TableIdentifierTableTypeExtractor extends TableTypeExtractor
org.apache.spark.sql.catalyst.TableIdentifier
-
case class
TableTypeDesc(fieldName: String, fieldExtractor: String, skipTypes: Seq[String]) extends Descriptor with Product with Serializable
Table Type Descriptor
Table Type Descriptor
- fieldName
the field name or method name of this table type field
- fieldExtractor
the key of a TableTypeExtractor instance
- skipTypes
which kinds of table or view are skipped checking
- trait TableTypeExtractor extends (AnyRef, SparkSession) ⇒ TableType with Extractor
-
class
TempMarkerFunctionTypeExtractor extends FunctionTypeExtractor
org.apache.spark.sql.catalyst.analysis.ViewType
-
class
ViewTypeTableTypeExtractor extends TableTypeExtractor
org.apache.spark.sql.catalyst.analysis.ViewType
Value Members
- final lazy val DB_COMMAND_SPECS: Map[String, DatabaseCommandSpec]
- final lazy val FUNCTION_COMMAND_SPECS: Map[String, FunctionCommandSpec]
- final lazy val TABLE_COMMAND_SPECS: Map[String, TableCommandSpec]
- def getFunctionSpec(r: AnyRef): ScanSpec
- def getScanSpec(r: AnyRef): ScanSpec
- def getTableCommandSpec(r: AnyRef): TableCommandSpec
- def isKnownFunction(r: AnyRef): Boolean
- def isKnownScan(r: AnyRef): Boolean
- def isKnownTableCommand(r: AnyRef): Boolean
- def loadExtractorsToMap[T <: Extractor](implicit ct: ClassTag[T]): Map[String, T]
- def lookupExtractor[T <: Extractor](implicit ct: ClassTag[T]): T
-
def
lookupExtractor[T <: Extractor](extractorKey: String)(implicit ct: ClassTag[T]): T
get extractor instance by extractor class name
get extractor instance by extractor class name
- T
extractor class type
- extractorKey
explicitly load extractor by its simple class name. null by default means get extractor by extractor class.
- ct
class tag of extractor class type
- final val mapper: JsonMapper
- def operationType(plan: LogicalPlan): OperationType
- object ActionTypeExtractor
- object CatalogExtractor
- object ColumnExtractor
- object DatabaseExtractor
- object FunctionExtractor
- object FunctionType extends Enumeration
- object FunctionTypeExtractor
- object QueryExtractor
- object TableExtractor
- object TableType extends Enumeration
- object TableTypeExtractor