public class UDTImpl<R extends UDTRecord<R>> extends Object implements UDT<R>
This type is for JOOQ INTERNAL USE only. Do not reference directly
| Modifier and Type | Method and Description |
|---|---|
void |
bind(BindContext context)
Bind all parameters of this
QueryPart to a PreparedStatement
This method is for JOOQ INTERNAL USE only. |
protected DSLContext |
create()
Internal convenience method
|
protected DSLContext |
create(BindContext ctx)
Internal convenience method
|
protected DSLContext |
create(Configuration configuration)
Internal convenience method
|
protected DSLContext |
create(RenderContext ctx)
Internal convenience method
|
protected static <R extends UDTRecord<R>,T> |
createField(String name,
DataType<T> type,
UDT<R> udt)
Subclasses may call this method to create
UDTField objects that
are linked to this table. |
boolean |
declaresFields()
Subclasses may override this
|
boolean |
declaresTables()
Subclasses may override this
|
boolean |
equals(Object that)
Check whether this
QueryPart can be considered equal to
another QueryPart. |
<T> Field<T> |
field(Field<T> field)
Get a specific field from this UDT.
|
Field<?> |
field(int index)
Get a specific field from this UDT.
|
Field<?> |
field(String string)
Get a specific field from this UDT.
|
Field<?>[] |
fields()
Get all fields from this UDT.
|
Row |
fieldsRow()
Get this UDT's fields as a
Row |
DataType<R> |
getDataType()
The UDT's data type as known to the database
|
String |
getName()
The name of this UDT
|
Class<R> |
getRecordType()
Subclasses must override this method if they use the generic type
parameter
Record |
Schema |
getSchema()
Get the UDT schema
|
int |
hashCode()
Generate a hash code from this
QueryPart. |
void |
toSQL(RenderContext context)
Render this
QueryPart to a SQL string contained in
context.sql(). |
String |
toString()
Render a SQL string of this
QueryPart
For improved debugging, this renders a SQL string of this
QueryPart with inlined bind variables. |
protected DataAccessException |
translate(String sql,
SQLException e)
Internal convenience method
|
public final Row fieldsRow()
UDTRowpublic final <T> Field<T> field(Field<T> field)
UDTpublic final Field<?> field(String string)
UDTpublic final Field<?> field(int index)
UDTpublic final Field<?>[] fields()
UDTpublic Class<R> getRecordType()
RecordgetRecordType in interface UDT<R extends UDTRecord<R>>public final DataType<R> getDataType()
UDTgetDataType in interface UDT<R extends UDTRecord<R>>public final void toSQL(RenderContext context)
QueryPartInternalQueryPart to a SQL string contained in
context.sql(). The context will contain
additional information about how to render this QueryPart,
e.g. whether this QueryPart should be rendered as a
declaration or reference, whether this QueryPart's contained
bind variables should be inlined or replaced by '?', etc.toSQL in interface QueryPartInternalpublic final void bind(BindContext context)
QueryPartInternalQueryPart to a PreparedStatement
This method is for JOOQ INTERNAL USE only. Do not reference directly
bind in interface QueryPartInternalcontext - The context holding the next bind index and other information
for variable bindingprotected static final <R extends UDTRecord<R>,T> UDTField<R,T> createField(String name, DataType<T> type, UDT<R> udt)
UDTField objects that
are linked to this table.name - The name of the field (case-sensitive!)type - The data type of the fieldpublic int hashCode()
QueryPartQueryPart.
In general, QueryPart hash codes are the same as the hash
codes generated from QueryPart.toString(). This guarantees consistent
behaviour with QueryPart.equals(Object)
Some QueryPart implementations may choose to override this
behaviour for improved performance, as QueryPart.toString() is an
expensive operation, if called many times.
public boolean declaresFields()
declaresFields in interface QueryPartInternalpublic boolean declaresTables()
declaresTables in interface QueryPartInternalpublic boolean equals(Object that)
QueryPartQueryPart can be considered equal to
another QueryPart.
In general, QueryPart equality is defined in terms of
QueryPart.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, as QueryPart.toString() is an
expensive operation, if called many times.
public String toString()
QueryPartQueryPart
For improved debugging, this renders a SQL string of this
QueryPart with inlined bind variables. If you wish to gain
more control over the concrete SQL rendering of this
QueryPart, use DSLContext.renderContext() to obtain a
configurable render context for SQL rendering.
protected final DSLContext create()
protected final DSLContext create(Configuration configuration)
protected final DSLContext create(RenderContext ctx)
protected final DSLContext create(BindContext ctx)
protected final DataAccessException translate(String sql, SQLException e)
Copyright © 2013. All Rights Reserved.