public class QueryCollection extends java.util.AbstractList implements PCollListener
ViewRow
.
The QueryCollection object will use the meta-data provided to
"pull-apart" the rows of data that come back and locate/construct
the appropriate Entity
row definition.
In essense, it is a collection of ViewRow
's.
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
PROPERTY_BUG_FORCE_RESET_ESTIMATED_ROWCOUNT |
Modifier and Type | Method and Description |
---|---|
void |
add(int index,
java.lang.Object row)
Add a row to the QueryCollection at the specified index.
|
void |
afterActivateElement(PCollection pcoll,
PCollPersistable elem) |
protected void |
afterRemove(EntityImpl entity)
Removes the ViewRow from cache and collection
|
void |
beforePassivateElement(PCollection pcoll,
PCollPersistable elem) |
boolean |
cancelQuery() |
boolean |
equals(java.lang.Object qc) |
protected void |
finalize() |
java.lang.Object |
get(int index)
Return the data at the index.
|
protected PCollection |
getCollectionInternal() |
int |
getCollectionSize() |
java.lang.Object[] |
getFilterParamValues(ViewRowImpl viewRow,
java.lang.Object[] newVals,
int[] newValIndices) |
protected int[] |
getIndexes(EntityImpl row) |
java.lang.String |
getName(java.lang.Object accessKey) |
java.util.ArrayList |
getNewRowTracker() |
long |
getNextObjId() |
int |
getNumUserParams() |
java.sql.ResultSet |
getResultSet() |
RowFilter |
getRowFilter() |
protected Row[] |
getRows(EntityImpl row) |
protected Row[] |
getRows(Key ky) |
ViewRowSetImpl |
getRowSetImpl() |
oracle.jbo.server.ViewRowStorage |
getRowStorageFromId(long id) |
int |
hashCode() |
int |
indexOf(java.lang.Object row) |
boolean |
isClosed()
Deprecated.
|
boolean |
isDirty() |
boolean |
isExecuted() |
boolean |
isForwardOnly() |
boolean |
isRangePaging() |
boolean |
isRangePagingIncr() |
boolean |
isSkipQuery() |
void |
printActiveObjsTab(java.io.PrintWriter pw) |
void |
printColl(java.io.PrintWriter pw,
int printFlag) |
void |
printRUChain(java.io.PrintWriter pw) |
java.lang.Object |
remove(int index)
Remove a row from the QueryCollection at the specified index.
|
java.lang.Object |
removeAndRetain(int index) |
java.lang.Object |
removeFromCollection(int index) |
protected void |
removeReference(ViewRowImpl row,
EntityImpl entity)
Remove entity references, i.e, set references to null
|
java.lang.Object |
set(int index,
java.lang.Object element)
Set the data at the index.
|
void |
setExecutedQueryForPassivation(java.lang.String query)
Deprecated.
Programmatic VO that manages its own database query/statement should set the last executed
query to assist framework restore the VO to its original state after passivation/activation.
|
int |
size()
The size of the Collection.
|
protected void |
updateReference(ViewRowImpl row,
EntityImpl entity,
int entityIndex)
Set reference entity based on foreign keys
|
add, addAll, clear, iterator, lastIndexOf, listIterator, listIterator, removeRange, subList
addAll, contains, containsAll, isEmpty, remove, removeAll, retainAll, toArray, toArray, toString
public static final java.lang.String PROPERTY_BUG_FORCE_RESET_ESTIMATED_ROWCOUNT
public final boolean isRangePaging()
public final boolean isRangePagingIncr()
public final boolean isForwardOnly()
public java.util.ArrayList getNewRowTracker()
public void beforePassivateElement(PCollection pcoll, PCollPersistable elem)
beforePassivateElement
in interface PCollListener
public void afterActivateElement(PCollection pcoll, PCollPersistable elem)
afterActivateElement
in interface PCollListener
public long getNextObjId()
getNextObjId
in interface PCollListener
public java.sql.ResultSet getResultSet()
public boolean cancelQuery()
public int size()
--Calling this method will result in the entire Collection being --brought into memory (in order to give an accurate count of the --rows in it). THIS HAS CHANGED. THE NEW BEHAVIOR IS : We're currently returning only the fetched size of the query collection We could return the correct size, if atleast one row is fetched, however we should NOT return correct size if no rows are fetched (and thereby getting all rows in memory as AbstractList.hash() performs hasNext() that performs size() leading to fetching all row at the very beginning of iteration). - modified during move to AbstractList from Vector.
size
in interface java.util.Collection
size
in interface java.util.List
size
in class java.util.AbstractCollection
public java.lang.Object get(int index)
get
in interface java.util.List
get
in class java.util.AbstractList
index
- the row index to use.public oracle.jbo.server.ViewRowStorage getRowStorageFromId(long id)
public java.lang.Object set(int index, java.lang.Object element)
set
in interface java.util.List
set
in class java.util.AbstractList
index
- the row index to use.element
- the value to put there.public void add(int index, java.lang.Object row)
add
in interface java.util.List
add
in class java.util.AbstractList
index
- the insertion index or -ve to insert at the end.row
- a ViewRow row to be inserted into the QueryCollection.public java.lang.Object remove(int index)
remove
in interface java.util.List
remove
in class java.util.AbstractList
index
- the deletion index.public java.lang.Object removeFromCollection(int index)
public java.lang.Object removeAndRetain(int index)
public int getCollectionSize()
protected PCollection getCollectionInternal()
protected int[] getIndexes(EntityImpl row)
row
- to locate view rows which reference it.public ViewRowSetImpl getRowSetImpl()
public final boolean isExecuted()
public int indexOf(java.lang.Object row)
indexOf
in interface java.util.List
indexOf
in class java.util.AbstractList
protected void afterRemove(EntityImpl entity)
protected Row[] getRows(EntityImpl row)
protected void removeReference(ViewRowImpl row, EntityImpl entity)
protected void updateReference(ViewRowImpl row, EntityImpl entity, int entityIndex)
public boolean isDirty()
public boolean isSkipQuery()
public RowFilter getRowFilter()
public int getNumUserParams()
public java.lang.String getName(java.lang.Object accessKey)
public java.lang.Object[] getFilterParamValues(ViewRowImpl viewRow, java.lang.Object[] newVals, int[] newValIndices)
public void printActiveObjsTab(java.io.PrintWriter pw)
public void printRUChain(java.io.PrintWriter pw)
public void printColl(java.io.PrintWriter pw, int printFlag)
protected void finalize()
finalize
in class java.lang.Object
public int hashCode()
hashCode
in interface java.util.Collection
hashCode
in interface java.util.List
hashCode
in class java.util.AbstractList
public boolean equals(java.lang.Object qc)
equals
in interface java.util.Collection
equals
in interface java.util.List
equals
in class java.util.AbstractList
@Concealed public void setExecutedQueryForPassivation(java.lang.String query)
@Concealed public boolean isClosed()