|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.sibvisions.rad.model.mem.MemDataPage
public class MemDataPage
A MemDataPage
is the memory implementation for a data page of an
IDataBook
.
A master IDataBook
has one IDataPage
for itself. If the
IDataBook
is (also) a detail IDataBook
it stores all IDataPage
's for each loaded master row (parent master).
IDataBook
,
IDataPage
,
IChangeableDataRow
Field Summary | |
---|---|
protected IDataRow |
drMasterDataRow
The master row from the corresponding master DataBook. |
protected IRowDefinition |
rdRowDefinition
The IRowDefinition that uses this MemDataPage. |
protected IDataBook |
rootDataBook
The root IDataBook. |
Constructor Summary | |
---|---|
MemDataPage(MemDataBook pDataBook,
IDataRow pMasterDataRow)
Construct a new MemDataPage for the specified IDataBook and the corresponding master row. |
Method Summary | |
---|---|
protected void |
addFetchedRow(java.lang.Object[] pValues)
It adds an new IDataRow to the DataPage in the object[] storage. |
protected void |
clear()
It clears the mem filter and sort in the MemDataPage. |
void |
fetchAll()
Fetches all IDataRow s from the storage. |
void |
fetchToRow(int pRowIndex)
Will/should be overridden in the derived Classes to fetch data from the storage. |
int[] |
getChangedDataRows()
Deprecated. |
int[] |
getChangedRows()
Gets an int array containing the indexes of all changed IDataRow
s. |
IDataBook |
getDataBook()
Gets the parent IDataBook . |
IChangeableDataRow |
getDataRow(int pDataRowIndex)
Gets a copy of the IChangeableDataRow at the specified index. |
protected java.lang.Object[] |
getDataRowStorage(int pDataRowIndex)
Returns the internal storage for the specified DataRow Object[]. |
int |
getEstimatedRowCount()
Returns -1. |
IDataRow |
getMasterDataRow()
Gets the corresponding master row . |
int |
getRowCount()
Gets the number of rows which are currently held. |
protected int |
getRowCountInternal()
Returns the row count of this MemDataPage. |
boolean |
hasChanges()
Returns true, if there are changes. |
boolean |
isAllFetched()
Gets if all IDataRow s have been fetched from the storage, and
there is nothing more to fetch. |
int |
searchNext(ICondition pCondition)
Searches for the first occurrence of an IDataRow which matches
the given ICondition and returns its index. |
int |
searchNext(ICondition pCondition,
int pStartIndex)
Searches for the next occurrence of an IDataRow which matches the
given ICondition and returns its index. |
int |
searchPrevious(ICondition pCondition)
Searches for the last occurrence of an IDataRow which matches the
given ICondition and returns its index. |
int |
searchPrevious(ICondition pCondition,
int pStartIndex)
Searches for the previous occurrence of an IDataRow which matches
the given ICondition and returns its index. |
protected void |
setAllFetched(boolean pAllFetched)
Sets that the MemDataPage has all fetched. |
protected void |
setDataRow(int pDataRowIndex,
ChangeableDataRow pRow)
Sets the internal storage for the specified DataRow Object[]. |
protected void |
setMasterDataRow(IDataRow pMasterDataRow)
Sets a new Master DataRow, if it changes. |
java.lang.String |
toString()
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
protected IDataBook rootDataBook
protected IRowDefinition rdRowDefinition
protected IDataRow drMasterDataRow
Constructor Detail |
---|
public MemDataPage(MemDataBook pDataBook, IDataRow pMasterDataRow)
pDataBook
- the IDataBook which uses this MemDataPagepMasterDataRow
- the corresponding master row of the master IDataBook of the
above specified IDataBookMethod Detail |
---|
public IDataBook getDataBook()
IDataBook
.
getDataBook
in interface IDataPage
IDataBook
.public IDataRow getMasterDataRow()
master row
.
getMasterDataRow
in interface IDataPage
master row
.public IChangeableDataRow getDataRow(int pDataRowIndex) throws ModelException
IChangeableDataRow
at the specified index.
Returns null
if there is no row at the specified index.
If the row is currently not in memory, it will be fetched from the underlying storage.
getDataRow
in interface IDataPage
pDataRowIndex
- the index of the IChangeableDataRow
to get.
IChangeableDataRow
at the specified index,
null
if there is no row at the specified index.
ModelException
- if the IChangeableDataRow
at the specified
index can no be got.public void fetchAll() throws ModelException
IDataRow
s from the storage.
fetchAll
in interface IDataPage
ModelException
- if there is a problem while fetching the rows.public boolean isAllFetched() throws ModelException
IDataRow
s have been fetched from the storage, and
there is nothing more to fetch.
isAllFetched
in interface IDataPage
true
if all IDataRow
s have been fetched.
ModelException
- if determining if all IDataRow
s have been
fetched failed.public int getRowCount() throws ModelException
getRowCount
in interface IDataPage
ModelException
- if the number of rows could not be determined.@Deprecated public int[] getChangedDataRows()
IDataRow
s. Returns an empty array if there are no changed IDataRow
s.
getChangedDataRows
in interface IDataPage
IDataRow
s. An empty array if there are no changes.public int[] getChangedRows()
IDataRow
s. Returns an empty array if there are no changed IDataRow
s.
getChangedRows
in interface IDataPage
IDataRow
s. An empty array if there are no changes.public int searchNext(ICondition pCondition) throws ModelException
IDataRow
which matches
the given ICondition
and returns its index. -1
is
returned if there is no IDataRow
that matches.
This method might fetch more rows from the storage as needed.
searchNext
in interface IDataPage
pCondition
- the ICondition
.
IDataRow
, -1
if
there is none.
ModelException
- if searching through and/or fetching the
IDataRow
s failed.public int searchNext(ICondition pCondition, int pStartIndex) throws ModelException
IDataRow
which matches the
given ICondition
and returns its index. The search is started at
the given index. -1
is returned if there is no IDataRow
that matches.
This method might fetch more rows from the storage as needed.
searchNext
in interface IDataPage
pCondition
- the ICondition
.pStartIndex
- the index at which to start, inclusive.
IDataRow
, -1
if
there is none.
ModelException
- if searching through and/or fetching the
IDataRow
s failed.public int searchPrevious(ICondition pCondition) throws ModelException
IDataRow
which matches the
given ICondition
and returns its index. -1
is returned if
there is no IDataRow
that matches.
This method might fetch more rows from the storage as needed.
searchPrevious
in interface IDataPage
pCondition
- the ICondition
.
IDataRow
, -1
if
there is none.
ModelException
- if searching through and/or fetching the
IDataRow
s failed.public int searchPrevious(ICondition pCondition, int pStartIndex) throws ModelException
IDataRow
which matches
the given ICondition
and returns its index. The search is started
at the given index. -1
is returned if there is no
IDataRow
that matches.
This method might fetch more rows from the storage as needed.
searchPrevious
in interface IDataPage
pCondition
- the ICondition
.pStartIndex
- the index at which to start, exclusive.
IDataRow
, -1
if there is none.
ModelException
- if searching through and/or fetching the
IDataRow
s failed.public java.lang.String toString()
toString
in class java.lang.Object
public boolean hasChanges()
protected void setAllFetched(boolean pAllFetched)
pAllFetched
- the boolean with the fetch state.protected void addFetchedRow(java.lang.Object[] pValues) throws ModelException
pValues
- the values.
ModelException
- if the IDataRow couldn't add to the storage.protected java.lang.Object[] getDataRowStorage(int pDataRowIndex) throws ModelException
pDataRowIndex
- the row index.
ModelException
- if the mem sort and/or filter fails.protected void setMasterDataRow(IDataRow pMasterDataRow) throws ModelException
pMasterDataRow
- the new master DataRow
ModelException
- if the column value couldn't convertedpublic int getEstimatedRowCount() throws ModelException
ModelException
- see derived classes.public void fetchToRow(int pRowIndex) throws ModelException
pRowIndex
- the row index to use.
ModelException
- see derived classes.protected int getRowCountInternal()
protected void setDataRow(int pDataRowIndex, ChangeableDataRow pRow) throws ModelException
pDataRowIndex
- the row index.pRow
- the ChangeableDataRow to use.
ModelException
- if the mem sort and/or filter fails.protected void clear()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |