- java.lang.Object
-
- org.jooq.impl.SchemaImpl
-
- All Implemented Interfaces:
Serializable
,Named
,QueryPart
,QueryPartInternal
,Schema
@Internal public class SchemaImpl extends Object implements Schema
A common base class for database schemataThis type is for JOOQ INTERNAL USE only. Do not reference directly
- Author:
- Lukas Eder
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description SchemaImpl(String name)
SchemaImpl(String name, Catalog catalog)
SchemaImpl(String name, Catalog catalog, String comment)
SchemaImpl(Name name)
SchemaImpl(Name name, Catalog catalog)
SchemaImpl(Name name, Catalog catalog, Comment comment)
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description void
accept(Context<?> ctx)
void
bind(BindContext context)
Deprecated.- 3.4.0 - [#2694] - UseQueryPartInternal.accept(Context)
instead.Clause[]
clauses(Context<?> ctx)
TheClause
s that are represented by this query part.protected DSLContext
create()
Deprecated.- 3.11.0 - [#6722] - UseAttachable.configuration()
andConfiguration.dsl()
instead.protected DSLContext
create(Configuration configuration)
Deprecated.- 3.11.0 - [#6722] - UseAttachable.configuration()
andConfiguration.dsl()
instead.protected DSLContext
create(Context<?> ctx)
Deprecated.- 3.11.0 - [#6722] - UseAttachable.configuration()
andConfiguration.dsl()
instead.boolean
declaresCTE()
Subclasses may override thisboolean
declaresFields()
Subclasses may override thisboolean
declaresTables()
Subclasses may override thisboolean
declaresWindows()
Subclasses may override thisboolean
equals(Object that)
Check whether thisQueryPart
can be considered equal to anotherQueryPart
.boolean
generatesCast()
Subclasses may override thisCatalog
getCatalog()
The catalog of this schema.String
getComment()
The comment on this object.String
getName()
The unqualified name of this object.Name
getQualifiedName()
The qualified name of this object.Sequence<?>
getSequence(String sequenceName)
Get a sequence by its name (case-sensitive) in this schema, ornull
if no such sequence exists.List<Sequence<?>>
getSequences()
List all sequences contained in this schema.Table<?>
getTable(String tableName)
Get a table by its name (case-sensitive) in this schema, ornull
if no such table exists.List<Table<?>>
getTables()
List all tables contained in this schema.UDT<?>
getUDT(String udtName)
Get a UDT by its name (case-sensitive) in this schema, ornull
if no such UDT exists.List<UDT<?>>
getUDTs()
List all UDTs contained in this schema.Name
getUnqualifiedName()
The unqualified name of this object.int
hashCode()
Generate a hash code from thisQueryPart
.Stream<Sequence<?>>
sequenceStream()
Stream all sequences contained in this schema.Stream<Table<?>>
tableStream()
Stream all tables contained in this schema.void
toSQL(RenderContext context)
Deprecated.- 3.4.0 - [#2694] - UseQueryPartInternal.accept(Context)
instead.String
toString()
Render a SQL string representation of thisQueryPart
.protected DataAccessException
translate(String sql, SQLException e)
Internal convenience methodStream<UDT<?>>
udtStream()
Stream all UDTs contained in this schema.-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.jooq.Named
getComment, getName, getQualifiedName, getUnqualifiedName
-
-
-
-
Method Detail
-
getCatalog
public Catalog getCatalog()
Description copied from interface:Schema
The catalog of this schema.- Specified by:
getCatalog
in interfaceSchema
-
accept
public final void accept(Context<?> ctx)
Description copied from interface:QueryPartInternal
ThisQueryPart
canaccept
aContext
object in order to render a SQL string or to bind its variables.- Specified by:
accept
in interfaceQueryPartInternal
-
clauses
public final Clause[] clauses(Context<?> ctx)
Description copied from interface:QueryPartInternal
TheClause
s that are represented by this query part.QueryPart
s can specify severalClause
s for which an event will be emittedbefore
(in forward order) andafter
(in reverse order) visiting the the query part throughContext.visit(QueryPart)
This method is for JOOQ INTERNAL USE only. Do not reference directly
- Specified by:
clauses
in interfaceQueryPartInternal
- Returns:
- The
Clause
s represented by this query part ornull
or an empty array if this query part does not represent a clause.
-
getTable
public final Table<?> getTable(String tableName)
Description copied from interface:Schema
Get a table by its name (case-sensitive) in this schema, ornull
if no such table exists.
-
getUDT
public final UDT<?> getUDT(String udtName)
Description copied from interface:Schema
Get a UDT by its name (case-sensitive) in this schema, ornull
if no such UDT exists.
-
getSequence
public final Sequence<?> getSequence(String sequenceName)
Description copied from interface:Schema
Get a sequence by its name (case-sensitive) in this schema, ornull
if no such sequence exists.- Specified by:
getSequence
in interfaceSchema
-
getTables
public List<Table<?>> getTables()
List all tables contained in this schema.Subclasses should override this method
-
getUDTs
public List<UDT<?>> getUDTs()
List all UDTs contained in this schema.Subclasses should override this method
-
getSequences
public List<Sequence<?>> getSequences()
List all sequences contained in this schema.Subclasses should override this method
- Specified by:
getSequences
in interfaceSchema
-
tableStream
public final Stream<Table<?>> tableStream()
Description copied from interface:Schema
Stream all tables contained in this schema.- Specified by:
tableStream
in interfaceSchema
-
udtStream
public final Stream<UDT<?>> udtStream()
Description copied from interface:Schema
Stream all UDTs contained in this schema.
-
sequenceStream
public final Stream<Sequence<?>> sequenceStream()
Description copied from interface:Schema
Stream all sequences contained in this schema.- Specified by:
sequenceStream
in interfaceSchema
-
getName
public final String getName()
Description copied from interface:Named
The unqualified name of this object.
-
getQualifiedName
public Name getQualifiedName()
Description copied from interface:Named
The qualified name of this object.- Specified by:
getQualifiedName
in interfaceNamed
-
getUnqualifiedName
public final Name getUnqualifiedName()
Description copied from interface:Named
The unqualified name of this object.- Specified by:
getUnqualifiedName
in interfaceNamed
-
getComment
public final String getComment()
Description copied from interface:Named
The comment on this object.- Specified by:
getComment
in interfaceNamed
-
hashCode
public int hashCode()
Description copied from interface:QueryPart
Generate a hash code from thisQueryPart
.In general,
QueryPart
hash codes are the same as the hash codes generated fromQueryPart.toString()
. This guarantees consistent behaviour withQueryPart.equals(Object)
Some
QueryPart
implementations may choose to override this behaviour for improved performance, asQueryPart.toString()
is an expensive operation, if called many times.
-
equals
public boolean equals(Object that)
Description copied from interface:QueryPart
Check whether thisQueryPart
can be considered equal to anotherQueryPart
.In general,
QueryPart
equality is defined in terms ofQueryPart.toString()
equality. In other words, two query parts are considered equal if their rendered SQL (with inlined bind variables) is equal. This means that the two query parts do not necessarily have to be of the same type.Some
QueryPart
implementations may choose to override this behaviour for improved performance, asQueryPart.toString()
is an expensive operation, if called many times.
-
toSQL
@Deprecated public final void toSQL(RenderContext context)
Deprecated.- 3.4.0 - [#2694] - UseQueryPartInternal.accept(Context)
instead.Description copied from interface:QueryPartInternal
Render thisQueryPart
to a SQL string contained incontext.sql()
. Thecontext
will contain additional information about how to render thisQueryPart
, e.g. whether thisQueryPart
should be rendered as a declaration or reference, whether thisQueryPart
's contained bind variables should be inlined or replaced by'?'
, etc.- Specified by:
toSQL
in interfaceQueryPartInternal
-
bind
@Deprecated public final void bind(BindContext context) throws DataAccessException
Deprecated.- 3.4.0 - [#2694] - UseQueryPartInternal.accept(Context)
instead.Description copied from interface:QueryPartInternal
Bind all parameters of thisQueryPart
to a PreparedStatementThis method is for JOOQ INTERNAL USE only. Do not reference directly
- Specified by:
bind
in interfaceQueryPartInternal
- Parameters:
context
- The context holding the next bind index and other information for variable binding- Throws:
DataAccessException
- If something went wrong while binding a variable
-
declaresFields
public boolean declaresFields()
Subclasses may override this- Specified by:
declaresFields
in interfaceQueryPartInternal
-
declaresTables
public boolean declaresTables()
Subclasses may override this- Specified by:
declaresTables
in interfaceQueryPartInternal
-
declaresWindows
public boolean declaresWindows()
Subclasses may override this- Specified by:
declaresWindows
in interfaceQueryPartInternal
-
declaresCTE
public boolean declaresCTE()
Subclasses may override this- Specified by:
declaresCTE
in interfaceQueryPartInternal
-
generatesCast
public boolean generatesCast()
Subclasses may override this- Specified by:
generatesCast
in interfaceQueryPartInternal
-
toString
public String toString()
Description copied from interface:QueryPart
Render a SQL string representation of thisQueryPart
.For improved debugging, this renders a SQL string of this
QueryPart
with inlined bind variables. If thisQueryPart
isAttachable
, then the attachedConfiguration
may be used for rendering the SQL string, includingSQLDialect
andSettings
. Do note that mostQueryPart
instances are not attached to aConfiguration
, and thus there is no guarantee that the SQL string will make sense in the context of a specific database.
-
create
@Deprecated protected final DSLContext create()
Deprecated.- 3.11.0 - [#6722] - UseAttachable.configuration()
andConfiguration.dsl()
instead.Internal convenience method
-
create
@Deprecated protected final DSLContext create(Configuration configuration)
Deprecated.- 3.11.0 - [#6722] - UseAttachable.configuration()
andConfiguration.dsl()
instead.Internal convenience method
-
create
@Deprecated protected final DSLContext create(Context<?> ctx)
Deprecated.- 3.11.0 - [#6722] - UseAttachable.configuration()
andConfiguration.dsl()
instead.Internal convenience method
-
translate
protected final DataAccessException translate(String sql, SQLException e)
Internal convenience method
-
-