| Package | Description |
|---|---|
| gudusoft.gsqlparser.dlineage | |
| gudusoft.gsqlparser.dlineage.dataflow.model | |
| gudusoft.gsqlparser.dlineage.symbol | |
| gudusoft.gsqlparser.dlineage.util |
| Modifier and Type | Method and Description |
|---|---|
protected void |
DataFlowAnalyzer.flattenStructColumns(boolean hasDefinition,
Table tableModel,
TColumnDefinition column,
Stack<TColumnDefinition> columnPaths,
int index) |
| Modifier and Type | Class and Description |
|---|---|
class |
Cursor |
class |
Database |
class |
Schema |
class |
Variable |
| Modifier and Type | Method and Description |
|---|---|
Table |
ModelFactory.createArrayRelationTable(TTable table,
String name)
Plan section 4.3: the table of a relation a table-generating construct adds to a SELECT, a Hive-family
LATERAL VIEW here, keyed by its parse node and published under name. |
Table |
ModelFactory.createCatalogNamedTable(String tableName)
The model of a table named by the catalog rather than by the SQL (the base table of a catalog synonym): the
table the analysis holds under that name, else a new one, bound like any table.
|
Table |
ModelFactory.createConstantsTable(String sqlHash) |
Table |
ModelFactory.createConstantsTable(TCustomSqlStatement stmt) |
Table |
ModelFactory.createDataSource(TObjectName dataSourceName) |
Table |
ModelFactory.createJsonTable(TTable table) |
Table |
ModelFactory.createJsonVariable(TObjectName jsonVariable)
The relation of a declared JSON variable OPENJSON reads: the variable already declared in the declaration's own
scope, else a new relation there.
|
Table |
ModelFactory.createPathModel(String name,
Object identity)
The path node named
name that identity identifies, made as needed. |
Table |
ModelFactory.createRowTypeAnchor(String anchorName)
The relation a
%ROWTYPE anchor names: a cursor, a record or a table. |
Table |
ModelFactory.createStage(TObjectName stageName) |
Table |
ModelFactory.createStream(TObjectName streamName) |
Table |
ModelFactory.createTable(TTable table) |
Table |
ModelFactory.createTable(TTable table,
TObjectName tableBinding) |
Table |
ModelFactory.createTableByName(String tableName,
boolean create) |
Table |
ModelFactory.createTableByName(TObjectName tableName) |
Table |
ModelFactory.createTableByName(TObjectName tableName,
boolean create) |
Table |
ModelFactory.createTableFromCreateDDL(TTable table,
boolean fromDDL) |
Table |
ModelFactory.createTableFromCreateDDL(TTable table,
boolean fromDDL,
String tableName) |
Table |
ModelFactory.createTriggerOnTable(TTable table) |
Table |
ModelFactory.createTypeAnchor(TObjectName qualifier)
The relation a
%TYPE anchor's qualifier names (rec.field%TYPE, tab.col%TYPE): a one-part
qualifier may be a record or cursor declared in scope, which answers before a table of the same name, as PL/SQL
scoping does. |
Table |
ModelFactory.createView(TCustomSqlStatement viewStmt,
TObjectName viewName) |
Table |
ModelFactory.createView(TCustomSqlStatement viewStmt,
TObjectName viewName,
boolean fromCreateView) |
Table |
ModelFactory.createXmlTable(TTable table) |
Table |
ModelBindingManager.getCreateModel(TTable table) |
Table |
ModelBindingManager.getCreateTable(TTable table) |
Table |
TableRelationshipElement.getElement() |
Table |
ModelBindingManager.getLocalSymbol(LocalSymbolKey key)
The local symbol under a typed key, or null.
|
Table |
Variable.getRowTypeAnchor() |
Table |
TableColumn.getTable() |
Table |
ModelBindingManager.getTableByName(Object tableKey)
A canonical miss must not fall back to a case-folded display name.
|
Table |
ModelBindingManager.getTableByName(String tableName)
A table or other named object bound under a name; inside a statement, a local symbol visible from it under the
name as written answers before the name is read again with the session's defaults, as it always has.
|
Table |
TableColumn.getView() |
Table |
ModelBindingManager.lookupVisibleLocalSymbol(LocalSymbolKey key,
TCustomSqlStatement stmt)
The local symbol a reference in
stmt sees under key's name: the first scope of the statement's
lexical chain (routine, enclosing routines, package) that declares it; at top level, the top-level one. |
Table |
ModelBindingManager.lookupVisibleLocalSymbol(LocalSymbolKey key,
TCustomSqlStatement stmt,
boolean topLevel)
As
ModelBindingManager.lookupVisibleLocalSymbol(gudusoft.gsqlparser.dlineage.symbol.LocalSymbolKey, TCustomSqlStatement);
with topLevel, a declaration at top level is visible from inside a routine too (a declared type). |
Table |
ModelBindingManager.resolveMixedRelation(String written,
Table tablePath,
boolean localFirst)
A name that may denote a table or a local relation (table variable, cursor, record), by the site's precedence:
with
localFirst (a %ROWTYPE or %TYPE anchor, a qualifier no FROM item declares) the local relation visible
from the current statement answers before the table path, as PL/SQL scoping does; otherwise (a FROM or DML
relation) the table path's answer stands and the local relation answers only when the table path has none. |
Table |
ModelBindingManager.visibleLocal(String written,
LocalSymbolKey.Kind kind)
The local symbol visible from the current statement under a name as written (a leading ':' is a sigil).
|
| Modifier and Type | Method and Description |
|---|---|
Set<Table> |
ModelBindingManager.getDropTables() |
List<Table> |
ModelBindingManager.getTablesByName() |
| Modifier and Type | Method and Description |
|---|---|
protected void |
ModelFactory.appendTableColumns(Table tableModel) |
void |
ModelBindingManager.bindCreateModel(String tableName,
Table tableModel) |
void |
ModelBindingManager.bindCreateModel(TObjectName tableName,
Table tableModel) |
void |
ModelBindingManager.bindCreateModel(TTable table,
Table tableModel) |
void |
ModelBindingManager.bindLocalSymbol(LocalSymbolKey key,
Table symbol)
Indexes a local symbol by its key without listing it again (an alias of a model already listed).
|
void |
ModelBindingManager.bindTableByName(Object tableName,
Table tableModel)
Canonical physical-table keys share lifecycle/ordering with legacy bindings.
|
void |
ModelBindingManager.bindTableByName(String tableName,
Table tableModel) |
TableColumn |
ModelFactory.createFileUri(Table table,
TObjectName fileUri) |
TableColumn |
ModelFactory.createInsertTableColumn(Table tableModel,
ResultColumn source)
Preserve the producer's identity when materializing a projected column.
|
TableColumn |
ModelFactory.createInsertTableColumn(Table tableModel,
String columnName) |
TableColumn |
ModelFactory.createInsertTableColumn(Table tableModel,
TConstant column,
int columnIndex) |
TableColumn |
ModelFactory.createInsertTableColumn(Table tableModel,
TExpression column,
int columnIndex) |
TableColumn |
ModelFactory.createInsertTableColumn(Table tableModel,
TObjectName column) |
TableColumn |
ModelFactory.createJsonTableColumn(Table table,
TObjectName column) |
TableColumn |
ModelFactory.createStageLocation(Table table,
TObjectName location) |
TableColumn |
ModelFactory.createStructStarViewColumn(Table viewModel,
TObjectName column,
int index,
boolean determined)
STRUCT tree: the view column of a select item
customer.* whose fields are unknown, one column standing for
every field of customer like its result column (ModelFactory.createStructStarResultColumn(gudusoft.gsqlparser.dlineage.dataflow.model.ResultSet, gudusoft.gsqlparser.nodes.TResultColumn)), not a wildcard
over a relation (Mantis 4827). |
TableColumn |
ModelFactory.createTableColumn(Table table,
String columnName) |
TableColumn |
ModelFactory.createTableColumn(Table table,
TConstant constant) |
TableColumn |
ModelFactory.createTableColumn(Table table,
TFunctionCall constantFunction) |
TableColumn |
ModelFactory.createTableColumn(Table table,
TObjectName column,
boolean fromCreateTable) |
TableColumn |
ModelFactory.createTableColumn(Table table,
TResultColumn column) |
TableColumn |
ModelFactory.createVariableProperty(Table variableTable,
TDeclareVariable variable) |
TableColumn |
ModelFactory.createViewColumn(Table viewModel,
TObjectName column,
int index,
boolean fromCreateView) |
void |
ModelBindingManager.dropTable(Table table) |
static String |
ModelFactory.getQualifiedTableName(Table table) |
void |
ModelBindingManager.publishLocalSymbol(LocalSymbolKey key,
Table symbol)
Binds a local symbol by its key and lists it among the analysis's tables at this point (getTablesByName, and so
the output order), as every binding of a variable, cursor or correlation name has been listed.
|
Table |
ModelBindingManager.resolveMixedRelation(String written,
Table tablePath,
boolean localFirst)
A name that may denote a table or a local relation (table variable, cursor, record), by the site's precedence:
with
localFirst (a %ROWTYPE or %TYPE anchor, a qualifier no FROM item declares) the local relation visible
from the current statement answers before the table path, as PL/SQL scoping does; otherwise (a FROM or DML
relation) the table path's answer stands and the local relation answers only when the table path has none. |
void |
Variable.setRowTypeAnchor(Table rowTypeAnchor) |
| Constructor and Description |
|---|
FileUri(Table file,
TObjectName fileUri) |
JsonTableColumn(Table jsonTable,
TObjectName location) |
StageLocation(Table stage,
TObjectName location) |
TableColumn(Table table,
String columnName)
Constructor for MDX and other non-SQL columns where only a name is available.
|
TableColumn(Table table,
TConstant columnObject) |
TableColumn(Table table,
TConstant columnObject,
int columnIndex) |
TableColumn(Table table,
TExpression columnObject,
int columnIndex) |
TableColumn(Table table,
TFunctionCall columnObject) |
TableColumn(Table table,
TObjectName columnObject) |
TableColumn(Table view,
TObjectName columnObject,
int index) |
TableRelationRows(Table holder) |
TableRelationshipElement(Table table) |
TableRelationshipElement(Table table,
ESqlClause relationLocation) |
VariableProperty(Table variableTable,
TObjectName variableName,
TDeclareVariable variable) |
| Modifier and Type | Method and Description |
|---|---|
Table |
LocalSymbolRegistry.get(LocalSymbolKey key) |
| Modifier and Type | Method and Description |
|---|---|
void |
LocalSymbolRegistry.put(LocalSymbolKey key,
Table symbol) |
| Modifier and Type | Method and Description |
|---|---|
static String |
DlineageUtil.getTableSchema(Table tableModel) |
static String |
DlineageUtil.getTableSQLEnvKey(Table tableModel) |
static boolean |
DlineageUtil.isTempTable(Table tableModel,
EDbVendor vendor) |