Package org.hibernate.sql.ast.spi
Interface FromClauseAccess
-
- All Known Subinterfaces:
SqmTranslator<T>
- All Known Implementing Classes:
BaseSqmToSqlAstConverter
,FromClauseAccessImpl
,FromClauseIndex
,MultiTableSqmMutationConverter
,SimpleFromClauseAccessImpl
,StandardSqmTranslator
,SybaseSqmToSqlAstConverter
public interface FromClauseAccess
Access to TableGroup indexing. The indexing is defined in terms ofNavigablePath
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description TableGroup
findTableGroup(NavigablePath navigablePath)
Find a TableGroup by the NavigablePath it is registered under, and if not found on the current from clause level, ask the parent.default TableGroup
findTableGroupForGetOrCreate(NavigablePath navigablePath)
Find the TableGroup by the NavigablePath for the purpose of creating a new TableGroup if none can be found.TableGroup
findTableGroupOnCurrentFromClause(NavigablePath navigablePath)
Find a TableGroup in this from clause without consulting parents by the NavigablePath it is registered under.default TableGroup
getTableGroup(NavigablePath navigablePath)
Get a TableGroup by the NavigablePath it is registered under.void
registerTableGroup(NavigablePath navigablePath, TableGroup tableGroup)
Register a TableGroup under the given `navigablePath`.default TableGroup
resolveTableGroup(NavigablePath navigablePath, Function<NavigablePath,TableGroup> creator)
Finds the TableGroup associated with the given `navigablePath`.
-
-
-
Method Detail
-
findTableGroupOnCurrentFromClause
TableGroup findTableGroupOnCurrentFromClause(NavigablePath navigablePath)
Find a TableGroup in this from clause without consulting parents by the NavigablePath it is registered under. Returnsnull
if no TableGroup is registered under that NavigablePath
-
findTableGroup
TableGroup findTableGroup(NavigablePath navigablePath)
Find a TableGroup by the NavigablePath it is registered under, and if not found on the current from clause level, ask the parent. Returnsnull
if no TableGroup is registered under that NavigablePath
-
findTableGroupForGetOrCreate
default TableGroup findTableGroupForGetOrCreate(NavigablePath navigablePath)
Find the TableGroup by the NavigablePath for the purpose of creating a new TableGroup if none can be found. Returnsnull
if no TableGroup or parent table group is registered under that NavigablePath
-
getTableGroup
default TableGroup getTableGroup(NavigablePath navigablePath) throws SqlTreeCreationException
Get a TableGroup by the NavigablePath it is registered under. If there is no registration, an exception is thrown.- Throws:
SqlTreeCreationException
-
registerTableGroup
void registerTableGroup(NavigablePath navigablePath, TableGroup tableGroup)
Register a TableGroup under the given `navigablePath`. Logs a message if this registration over-writes an existing one.
-
resolveTableGroup
default TableGroup resolveTableGroup(NavigablePath navigablePath, Function<NavigablePath,TableGroup> creator)
Finds the TableGroup associated with the given `navigablePath`. If one is not found, it is created via the given `creator`, registered under `navigablePath` and returned.- See Also:
findTableGroup(org.hibernate.spi.NavigablePath)
,registerTableGroup(org.hibernate.spi.NavigablePath, org.hibernate.sql.ast.tree.from.TableGroup)
- API Note:
- If the `creator` is called, there is no need for it to register the TableGroup it creates. It will be registered by this method after.
-
-