|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.jfree.report.util.WeakReferenceList
The WeakReference list uses java.lang.ref.WeakReference
s to store its
contents. In contrast to the WeakHashtable, this list knows how to restore missing content,
so that garbage collected elements can be restored when they are accessed.
By default this list can contain 25 elements, where the first element is stored using a strong reference, which is not garbage collected.
Restoring the elements is not implemented, concrete implementations will have to override
the restoreChild(int)
method. The getMaxChildCount
method defines
the maxmimum number of children in the list. When more than maxChildCount
elements
are contained in this list, add will always return false to indicate that adding the element
failed.
To customize the list, override createReference to create a different kind of reference.
This list is able to add or replace elements, but inserting or removing of elements is not possible.
Todo: Check, if the master computation can be removed - master seems to be always at index 0
Constructor Summary | |
protected |
WeakReferenceList(int maxChildCount)
Creates a new weak reference list. |
Method Summary | |
boolean |
add(java.lang.Object rs)
Adds the element to the list. |
java.lang.Object |
get(int index)
Returns the child stored at the given index. |
protected int |
getChildPos(int index)
Returns the internal storage position for the child. |
protected java.lang.Object |
getMaster()
Returns the master element of this list. |
protected int |
getMaxChildCount()
Returns the maximum number of children in this list. |
int |
getSize()
Returns the size of the list. |
protected boolean |
isMaster(int index)
Returns true, if the given index denotes a master index of this list. |
protected abstract java.lang.Object |
restoreChild(int index)
Attempts to restore the child stored on the given index. |
void |
set(java.lang.Object report,
int index)
Replaces the child stored at the given index with the new child which can be null. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
protected WeakReferenceList(int maxChildCount)
maxChildCount
- the maximum number of elements.Method Detail |
protected final int getMaxChildCount()
protected java.lang.Object getMaster()
protected abstract java.lang.Object restoreChild(int index)
index
- the index.
public java.lang.Object get(int index)
index
- the index.
public void set(java.lang.Object report, int index)
report
- the object.index
- the index.public boolean add(java.lang.Object rs)
rs
- the object.
protected boolean isMaster(int index)
index
- the index.
protected int getChildPos(int index)
index
- the index.
public int getSize()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |