org.apache.openjpa.jdbc.sql
public class MergedResult extends java.lang.Object implements Result
Modifier and Type | Class and Description |
---|---|
static interface |
MergedResult.ResultComparator
Comparator for ordering result rows.
|
Constructor and Description |
---|
MergedResult(Result[] res)
Constructor; supply delegates.
|
MergedResult(Result[] res,
MergedResult.ResultComparator comp)
Constructor; supply delegates and comparator for ordering results.
|
Modifier and Type | Method and Description |
---|---|
boolean |
absolute(int row)
Move to the given 0-based row in the result, or
return false if the row does not exist.
|
void |
close()
Free the resources used by this result; do not
close the SQL connection.
|
boolean |
contains(Column col,
Joins joins)
Return true if the given column is available in the result.
|
boolean |
contains(java.lang.Object obj)
Return true if the given id or column is available in the result.
|
boolean |
containsAll(Column[] cols,
Joins joins)
Return true if all the given columns are available in the result.
|
boolean |
containsAll(java.lang.Object[] objs)
Return true if all the given ids or columns are available in the result.
|
void |
endDataRequest()
Ends a data request.
|
java.sql.Array |
getArray(Column col,
Joins joins)
Return the value stored in the given column; may not be supported
by results that are not backed by a SQL result set.
|
java.sql.Array |
getArray(java.lang.Object obj)
Return the value stored in the given column or id; may not be supported
by results that are not backed by a SQL result set.
|
java.io.InputStream |
getAsciiStream(Column col,
Joins joins)
Return the value stored in the given column; may not be supported
by results that are not backed by a SQL result set.
|
java.io.InputStream |
getAsciiStream(java.lang.Object obj)
Return the value stored in the given column or id; may not be supported
by results that are not backed by a SQL result set.
|
ClassMapping |
getBaseMapping()
If this is the result of a UNION used to select a hierarchy of
mappings, the base mapping represented by the current row.
|
java.math.BigDecimal |
getBigDecimal(Column col,
Joins joins)
Return the value stored in the given column.
|
java.math.BigDecimal |
getBigDecimal(java.lang.Object obj)
Return the value stored in the given column or id.
|
java.math.BigInteger |
getBigInteger(Column col,
Joins joins)
Return the value stored in the given column.
|
java.math.BigInteger |
getBigInteger(java.lang.Object obj)
Return the value stored in the given column or id.
|
java.io.InputStream |
getBinaryStream(Column col,
Joins joins)
Return the value stored in the given column; may not be supported
by results that are not backed by a SQL result set.
|
java.io.InputStream |
getBinaryStream(java.lang.Object obj)
Return the value stored in the given column or id; may not be supported
by results that are not backed by a SQL result set.
|
java.sql.Blob |
getBlob(Column col,
Joins joins)
Return the value stored in the given column; may not be supported
by results that are not backed by a SQL result set.
|
java.sql.Blob |
getBlob(java.lang.Object obj)
Return the value stored in the given column or id; may not be supported
by results that are not backed by a SQL result set.
|
boolean |
getBoolean(Column col,
Joins joins)
Return the value stored in the given column.
|
boolean |
getBoolean(java.lang.Object obj)
Return the value stored in the given column or id.
|
byte |
getByte(Column col,
Joins joins)
Return the value stored in the given column.
|
byte |
getByte(java.lang.Object obj)
Return the value stored in the given column or id.
|
byte[] |
getBytes(Column col,
Joins joins)
Return the value stored in the given column; may not be supported
by results that are not backed by a SQL result set.
|
byte[] |
getBytes(java.lang.Object obj)
Return the value stored in the given column or id; may not be supported
by results that are not backed by a SQL result set.
|
java.util.Calendar |
getCalendar(Column col,
Joins joins)
Return the value stored in the given column.
|
java.util.Calendar |
getCalendar(java.lang.Object obj)
Return the value stored in the given column or id.
|
char |
getChar(Column col,
Joins joins)
Return the value stored in the given column.
|
char |
getChar(java.lang.Object obj)
Return the value stored in the given column or id.
|
java.io.Reader |
getCharacterStream(Column col,
Joins joins)
Return the value stored in the given column; may not be supported
by results that are not backed by a SQL result set.
|
java.io.Reader |
getCharacterStream(java.lang.Object obj)
Return the value stored in the given column or id; may not be supported
by results that are not backed by a SQL result set.
|
java.sql.Clob |
getClob(Column col,
Joins joins)
Return the value stored in the given column; may not be supported
by results that are not backed by a SQL result set.
|
java.sql.Clob |
getClob(java.lang.Object obj)
Return the value stored in the given column or id; may not be supported
by results that are not backed by a SQL result set.
|
java.sql.Date |
getDate(Column col,
java.util.Calendar cal,
Joins joins)
Return the value stored in the given column; may not be supported
by results that are not backed by a SQL result set.
|
java.util.Date |
getDate(Column col,
Joins joins)
Return the value stored in the given column.
|
java.util.Date |
getDate(java.lang.Object obj)
Return the value stored in the given column or id.
|
java.sql.Date |
getDate(java.lang.Object obj,
java.util.Calendar cal)
Return the value stored in the given column or id; may not be supported
by results that are not backed by a SQL result set.
|
double |
getDouble(Column col,
Joins joins)
Return the value stored in the given column.
|
double |
getDouble(java.lang.Object obj)
Return the value stored in the given column or id.
|
java.lang.Object |
getEager(FieldMapping key)
The eager result for the given key, or null if none.
|
float |
getFloat(Column col,
Joins joins)
Return the value stored in the given column.
|
float |
getFloat(java.lang.Object obj)
Return the value stored in the given column or id.
|
int |
getInt(Column col,
Joins joins)
Return the value stored in the given column.
|
int |
getInt(java.lang.Object obj)
Return the value stored in the given column or id.
|
java.io.InputStream |
getLOBStream(JDBCStore store,
java.lang.Object obj) |
java.util.Locale |
getLocale(Column col,
Joins joins)
Return the value stored in the given column.
|
java.util.Locale |
getLocale(java.lang.Object obj)
Return the value stored in the given column or id.
|
long |
getLong(Column col,
Joins joins)
Return the value stored in the given column.
|
long |
getLong(java.lang.Object obj)
Return the value stored in the given column or id.
|
FieldMapping |
getMappedByFieldMapping()
If this is the result used to select a toMany relationship,
the mappedByFieldMapping is field mapping representing
the inverse relationship.
|
java.lang.Object |
getMappedByValue()
If this is the result used to select a toMany relationship,
the mappedByValue is value of the owner of the toMany relationship.
|
java.lang.Number |
getNumber(Column col,
Joins joins)
Return the value stored in the given column.
|
java.lang.Number |
getNumber(java.lang.Object obj)
Return the value stored in the given column or id.
|
java.lang.Object |
getObject(Column col,
java.lang.Object arg,
Joins joins)
Return the value stored in the given column.
|
java.lang.Object |
getObject(java.lang.Object obj,
int metaType,
java.lang.Object arg)
Return the value stored in the given column or id.
|
java.sql.Ref |
getRef(Column col,
java.util.Map map,
Joins joins)
Return the value stored in the given column; may not be supported
by results that are not backed by a SQL result set.
|
java.sql.Ref |
getRef(java.lang.Object obj,
java.util.Map map)
Return the value stored in the given column or id; may not be supported
by results that are not backed by a SQL result set.
|
short |
getShort(Column col,
Joins joins)
Return the value stored in the given column.
|
short |
getShort(java.lang.Object obj)
Return the value stored in the given column or id.
|
java.lang.Object |
getSQLObject(Column col,
java.util.Map map,
Joins joins)
Return the value stored in the given column; may not be supported
by results that are not backed by a SQL result set.
|
java.lang.Object |
getSQLObject(java.lang.Object obj,
java.util.Map map)
Return the value stored in the given column or id; may not be supported
by results that are not backed by a SQL result set.
|
java.lang.String |
getString(Column col,
Joins joins)
Return the value stored in the given column.
|
java.lang.String |
getString(java.lang.Object obj)
Return the value stored in the given column or id.
|
java.sql.Time |
getTime(Column col,
java.util.Calendar cal,
Joins joins)
Return the value stored in the given column; may not be supported
by results that are not backed by a SQL result set.
|
java.sql.Time |
getTime(java.lang.Object obj,
java.util.Calendar cal)
Return the value stored in the given column or id; may not be supported
by results that are not backed by a SQL result set.
|
java.sql.Timestamp |
getTimestamp(Column col,
java.util.Calendar cal,
Joins joins)
Return the value stored in the given column; may not be supported
by results that are not backed by a SQL result set.
|
java.sql.Timestamp |
getTimestamp(java.lang.Object obj,
java.util.Calendar cal)
Return the value stored in the given column or id; may not be supported
by results that are not backed by a SQL result set.
|
int |
indexOf()
The index of the select within the UNION that the current row
corresponds to, or 0.
|
boolean |
isLocking()
If true, then any results loaded from this Result
will be locked in the database.
|
java.lang.Object |
load(ClassMapping mapping,
JDBCStore store,
JDBCFetchConfiguration fetch)
Load a pc object using the given store manager.
|
java.lang.Object |
load(ClassMapping mapping,
JDBCStore store,
JDBCFetchConfiguration fetch,
Joins joins)
Load a pc object using the given store manager.
|
Joins |
newJoins()
Return a new joins instance to use for traversing to related data.
|
boolean |
next()
Advance to the next row, or return false if there are no more rows
in the result.
|
void |
pushBack()
Push back the last result.
|
void |
putEager(FieldMapping key,
java.lang.Object res)
The eager result for the given key, or null if none.
|
void |
setBaseMapping(ClassMapping mapping)
If this is the result of a UNION used to select a hierarchy of
mappings, the base mapping represented by the current row.
|
void |
setLocking(boolean locking)
Set to true if row locking has been issued for the row.
|
void |
setMappedByFieldMapping(FieldMapping fieldMapping)
If this is the result used to select a toMany relationship,
the mappedByFieldMapping is field mapping representing
the inverse relationship.
|
void |
setMappedByValue(java.lang.Object mappedByValue)
If this is the result used to select a toMany relationship,
the mappedByValue is value of the owner of the toMany relationship.
|
int |
size()
Return the number of rows in this result.
|
void |
startDataRequest(java.lang.Object mapping)
Informs this receiver about the application element for which a
subsequent data request will be made.
|
boolean |
supportsRandomAccess()
Return true if the result supports random access.
|
boolean |
wasNull()
Return true if the last value fetched was null.
|
public MergedResult(Result[] res)
public MergedResult(Result[] res, MergedResult.ResultComparator comp)
public java.lang.Object getEager(FieldMapping key)
Result
public void putEager(FieldMapping key, java.lang.Object res)
Result
public Joins newJoins()
Result
public void close()
Result
public void setLocking(boolean locking)
Result
setLocking
in interface Result
public boolean isLocking()
Result
public boolean supportsRandomAccess() throws java.sql.SQLException
Result
supportsRandomAccess
in interface Result
java.sql.SQLException
public boolean absolute(int row) throws java.sql.SQLException
Result
public boolean next() throws java.sql.SQLException
Result
public void pushBack() throws java.sql.SQLException
Result
Result.next()
. After the first time this method is called,
additional calls before a call to Result.next()
or Result.absolute(int)
should have no further affect.public int size() throws java.sql.SQLException
Result
public boolean contains(java.lang.Object obj) throws java.sql.SQLException
Result
public boolean containsAll(java.lang.Object[] objs) throws java.sql.SQLException
Result
containsAll
in interface Result
java.sql.SQLException
public boolean contains(Column col, Joins joins) throws java.sql.SQLException
Result
public boolean containsAll(Column[] cols, Joins joins) throws java.sql.SQLException
Result
containsAll
in interface Result
java.sql.SQLException
public ClassMapping getBaseMapping()
Result
getBaseMapping
in interface Result
public void setBaseMapping(ClassMapping mapping)
Result
setBaseMapping
in interface Result
public FieldMapping getMappedByFieldMapping()
Result
getMappedByFieldMapping
in interface Result
public void setMappedByFieldMapping(FieldMapping fieldMapping)
Result
setMappedByFieldMapping
in interface Result
public java.lang.Object getMappedByValue()
Result
getMappedByValue
in interface Result
public void setMappedByValue(java.lang.Object mappedByValue)
Result
setMappedByValue
in interface Result
public int indexOf()
Result
public java.lang.Object load(ClassMapping mapping, JDBCStore store, JDBCFetchConfiguration fetch) throws java.sql.SQLException
Result
public java.lang.Object load(ClassMapping mapping, JDBCStore store, JDBCFetchConfiguration fetch, Joins joins) throws java.sql.SQLException
Result
public java.sql.Array getArray(java.lang.Object obj) throws java.sql.SQLException
Result
public java.io.InputStream getAsciiStream(java.lang.Object obj) throws java.sql.SQLException
Result
getAsciiStream
in interface Result
java.sql.SQLException
public java.math.BigDecimal getBigDecimal(java.lang.Object obj) throws java.sql.SQLException
Result
getBigDecimal
in interface Result
java.sql.SQLException
public java.math.BigInteger getBigInteger(java.lang.Object obj) throws java.sql.SQLException
Result
getBigInteger
in interface Result
java.sql.SQLException
public java.io.InputStream getBinaryStream(java.lang.Object obj) throws java.sql.SQLException
Result
getBinaryStream
in interface Result
java.sql.SQLException
public java.io.InputStream getLOBStream(JDBCStore store, java.lang.Object obj) throws java.sql.SQLException
getLOBStream
in interface Result
java.sql.SQLException
public java.sql.Blob getBlob(java.lang.Object obj) throws java.sql.SQLException
Result
public boolean getBoolean(java.lang.Object obj) throws java.sql.SQLException
Result
getBoolean
in interface Result
java.sql.SQLException
public byte getByte(java.lang.Object obj) throws java.sql.SQLException
Result
public byte[] getBytes(java.lang.Object obj) throws java.sql.SQLException
Result
public java.util.Calendar getCalendar(java.lang.Object obj) throws java.sql.SQLException
Result
getCalendar
in interface Result
java.sql.SQLException
public char getChar(java.lang.Object obj) throws java.sql.SQLException
Result
public java.io.Reader getCharacterStream(java.lang.Object obj) throws java.sql.SQLException
Result
getCharacterStream
in interface Result
java.sql.SQLException
public java.sql.Clob getClob(java.lang.Object obj) throws java.sql.SQLException
Result
public java.util.Date getDate(java.lang.Object obj) throws java.sql.SQLException
Result
public java.sql.Date getDate(java.lang.Object obj, java.util.Calendar cal) throws java.sql.SQLException
Result
public double getDouble(java.lang.Object obj) throws java.sql.SQLException
Result
public float getFloat(java.lang.Object obj) throws java.sql.SQLException
Result
public int getInt(java.lang.Object obj) throws java.sql.SQLException
Result
public java.util.Locale getLocale(java.lang.Object obj) throws java.sql.SQLException
Result
public long getLong(java.lang.Object obj) throws java.sql.SQLException
Result
public java.lang.Number getNumber(java.lang.Object obj) throws java.sql.SQLException
Result
public java.lang.Object getObject(java.lang.Object obj, int metaType, java.lang.Object arg) throws java.sql.SQLException
Result
getObject
in interface Result
obj
- the column or id whose data to fetchmetaType
- the type code from
JavaTypes
or JavaSQLTypes
for the
type of the data; if obj
is a column, you may specify -1
to use the column's recorded java typearg
- some JDBC data access methods use an argument, such
as a Calendar
or Map
java.sql.SQLException
public java.lang.Object getSQLObject(java.lang.Object obj, java.util.Map map) throws java.sql.SQLException
Result
getSQLObject
in interface Result
java.sql.SQLException
public java.sql.Ref getRef(java.lang.Object obj, java.util.Map map) throws java.sql.SQLException
Result
public short getShort(java.lang.Object obj) throws java.sql.SQLException
Result
public java.lang.String getString(java.lang.Object obj) throws java.sql.SQLException
Result
public java.sql.Time getTime(java.lang.Object obj, java.util.Calendar cal) throws java.sql.SQLException
Result
public java.sql.Timestamp getTimestamp(java.lang.Object obj, java.util.Calendar cal) throws java.sql.SQLException
Result
getTimestamp
in interface Result
java.sql.SQLException
public java.sql.Array getArray(Column col, Joins joins) throws java.sql.SQLException
Result
public java.io.InputStream getAsciiStream(Column col, Joins joins) throws java.sql.SQLException
Result
getAsciiStream
in interface Result
java.sql.SQLException
public java.math.BigDecimal getBigDecimal(Column col, Joins joins) throws java.sql.SQLException
Result
getBigDecimal
in interface Result
java.sql.SQLException
public java.math.BigInteger getBigInteger(Column col, Joins joins) throws java.sql.SQLException
Result
getBigInteger
in interface Result
java.sql.SQLException
public java.io.InputStream getBinaryStream(Column col, Joins joins) throws java.sql.SQLException
Result
getBinaryStream
in interface Result
java.sql.SQLException
public java.sql.Blob getBlob(Column col, Joins joins) throws java.sql.SQLException
Result
public boolean getBoolean(Column col, Joins joins) throws java.sql.SQLException
Result
getBoolean
in interface Result
java.sql.SQLException
public byte getByte(Column col, Joins joins) throws java.sql.SQLException
Result
public byte[] getBytes(Column col, Joins joins) throws java.sql.SQLException
Result
public java.util.Calendar getCalendar(Column col, Joins joins) throws java.sql.SQLException
Result
getCalendar
in interface Result
java.sql.SQLException
public char getChar(Column col, Joins joins) throws java.sql.SQLException
Result
public java.io.Reader getCharacterStream(Column col, Joins joins) throws java.sql.SQLException
Result
getCharacterStream
in interface Result
java.sql.SQLException
public java.sql.Clob getClob(Column col, Joins joins) throws java.sql.SQLException
Result
public java.util.Date getDate(Column col, Joins joins) throws java.sql.SQLException
Result
public java.sql.Date getDate(Column col, java.util.Calendar cal, Joins joins) throws java.sql.SQLException
Result
public double getDouble(Column col, Joins joins) throws java.sql.SQLException
Result
public float getFloat(Column col, Joins joins) throws java.sql.SQLException
Result
public int getInt(Column col, Joins joins) throws java.sql.SQLException
Result
public java.util.Locale getLocale(Column col, Joins joins) throws java.sql.SQLException
Result
public long getLong(Column col, Joins joins) throws java.sql.SQLException
Result
public java.lang.Number getNumber(Column col, Joins joins) throws java.sql.SQLException
Result
public java.lang.Object getObject(Column col, java.lang.Object arg, Joins joins) throws java.sql.SQLException
Result
public java.lang.Object getSQLObject(Column col, java.util.Map map, Joins joins) throws java.sql.SQLException
Result
getSQLObject
in interface Result
java.sql.SQLException
public java.sql.Ref getRef(Column col, java.util.Map map, Joins joins) throws java.sql.SQLException
Result
public short getShort(Column col, Joins joins) throws java.sql.SQLException
Result
public java.lang.String getString(Column col, Joins joins) throws java.sql.SQLException
Result
public java.sql.Time getTime(Column col, java.util.Calendar cal, Joins joins) throws java.sql.SQLException
Result
public java.sql.Timestamp getTimestamp(Column col, java.util.Calendar cal, Joins joins) throws java.sql.SQLException
Result
getTimestamp
in interface Result
java.sql.SQLException
public boolean wasNull() throws java.sql.SQLException
Result
public void startDataRequest(java.lang.Object mapping)
Result
startDataRequest
in interface Result
public void endDataRequest()
Result
Result.startDataRequest(java.lang.Object)
. The calls can be nested as follwsstartDataRequest (relation); startDataRequest (relationsField); getObject("COLUMN_Y"); endDataRequest (); endDataRequest ();
endDataRequest
in interface Result