/**
* Resolves the object at the index and returns the result.
* This implementation simply returns the <code>object</code>;
* clients can use this to transform objects as they are fetched.
* @param index the position of the content.
* @param object the content.
* @return the resolved object.
*/
protected E resolve(int index, E object) {
return object;
}
/**
* Called to indicate that the backing store list has been set.
* This implementation does nothing;
* clients can use this to monitor settings to the backing store list.
* @param index the position that was set.
* @param newObject the new object at the position.
* @param oldObject the old object at the position.
*/
/**
* Called to indicate that the data storage has been set.
* This implementation does nothing;
* clients can use this to monitor settings to the data storage.
* @param index the position that was set.
* @param newObject the new object at the position.
* @param oldObject the old object at the position.
*/
protected void didSet(int index, E newObject, E oldObject) {
// Do nothing.
}
/**
* Called to indicate that an object has been added to the backing store list.
* This implementation does nothing;
* clients can use this to monitor additions to the backing store list.
* @param index the position object the new object.
* @param newObject the new object at the position.
*/
/**
* Called to indicate that an object has been added to the data storage.
* This implementation does nothing;
* clients can use this to monitor additions to the data storage.
* @param index the position object the new object.
* @param newObject the new object at the position.
*/
protected void didAdd(int index, E newObject) {
// Do nothing.
}
/**
* Called to indicate that an object has been removed from the backing store list.
* This implementation does nothing;
* clients can use this to monitor removals from the backing store list.
* @param index the position of the old object.
* @param oldObject the old object at the position.
*/
/**
* Called to indicate that an object has been removed from the data storage.
* This implementation does nothing;
* clients can use this to monitor removals from the data storage.
* @param index the position of the old object.
* @param oldObject the old object at the position.
*/
protected void didRemove(int index, E oldObject) {
// Do nothing.
}
/**
* Called to indicate that the backing store list has been cleared.
* This implementation calls {@link #didRemove didRemove} for each object;
* clients can use this to monitor clearing of the backing store list.
* @param size the original size of the list.
* @param oldObjects the old backing store list being discarded.
* @see #didRemove
*/
/**
* Called to indicate that the data storage has been cleared.
* This implementation calls {@link #didRemove didRemove} for each object;
* clients can use this to monitor clearing of the data storage.
* @param size the original size of the list.
* @param oldObjects the old data storage being discarded.
* @see #didRemove
*/
protected void didClear(int size, Object[] oldObjects) {
if (oldObjects != null) {
for (int i = 0; i < size; ++i) {
@SuppressWarnings("unchecked")E object = (E) oldObjects[i];
didRemove(i, object);
}
}
}
/**
* Called to indicate that an object has been moved in the backing store list.
* This implementation does nothing;
* clients can use this to monitor movement in the backing store list.
* @param index the position of the moved object.
* @param movedObject the moved object at the position.
* @param oldIndex the position the object was at before the move.
*/
/**
* Called to indicate that an object has been moved in the data storage.
* This implementation does nothing;
* clients can use this to monitor movement in the data storage.
* @param index the position of the moved object.
* @param movedObject the moved object at the position.
* @param oldIndex the position the object was at before the move.
*/
protected void didMove(int index, E movedObject, int oldIndex) {
// Do nothing.
}
/**
* Called to indicate that the backing store list has been changed.
* This implementation does nothing;
* clients can use this to monitor change in the backing store list.
*/
/**
* Called to indicate that the data storage has been changed.
* This implementation does nothing;
* clients can use this to monitor change in the data storage.
*/
protected void didChange() {
// Do nothing.
}
|