public class ConcurrentSegmentedStoredList<T> extends Object implements IStoredList<T>
| Constructor and Description |
|---|
ConcurrentSegmentedStoredList(boolean segmented) |
ConcurrentSegmentedStoredList(boolean segmented,
boolean supportFifoPerSegment) |
ConcurrentSegmentedStoredList(boolean segmented,
boolean supportFifoPerSegment,
boolean padded) |
ConcurrentSegmentedStoredList(boolean segmented,
boolean supportFifoPerSegment,
int inputNumOfSegments,
boolean padded) |
ConcurrentSegmentedStoredList(int inputNumOfSegments) |
| Modifier and Type | Method and Description |
|---|---|
IObjectInfo<T> |
add(T subject)
store an element
|
IObjectInfo<T> |
addUnlocked(T subject)
Store an element in the list, while the SL is unlocked .
|
boolean |
contains(T obj)
is this object contained in the SL ?
|
void |
dump(Logger logger,
String msg)
Dump list content, used for Debug.
|
IStoredListIterator<T> |
establishListScan(boolean randomScan)
establish a scan position.
|
void |
freeSLHolder(IStoredListIterator<T> slh)
this method is called by outside scan that want to quit the scan and return the slholder to
the factory
|
int |
getHashCode(int id) |
IObjectInfo<T> |
getHead()
Goes over all the segments and finds the "first" element.
|
Object |
getKey(int id) |
T |
getObjectFromHead()
Returns the value of the first element in the list (fifo)
|
IStoredList<T> |
getValue(int id) |
boolean |
invalidate()
Sets an indication that this StoredList is invalid.
|
boolean |
isEmpty()
Returns true if the list is empty
|
boolean |
isIterator()
is the list an iterator or basic list ?
|
boolean |
isMultiObjectCollection()
is it an actual multi object container.
|
boolean |
isNativeHashEntry() |
void |
monitor() |
IStoredListIterator<T> |
next(IStoredListIterator<T> slh)
get the next element in scan order
|
boolean |
optimizeScanForSingleObject()
return true if we can save iterator creation and get a single entry
|
void |
remove(IObjectInfo<T> poi)
remove an element described by ObjectInfo
|
boolean |
removeByObject(T obj)
given an object scan the list, find it and remove it, returns true if found
|
void |
removeUnlocked(IObjectInfo<T> poi)
Remove an element described by ObjectInfo, while the SL is unlocked.
|
int |
size()
Returns the amount of elements in the StoredList.
|
public ConcurrentSegmentedStoredList(boolean segmented,
boolean supportFifoPerSegment,
int inputNumOfSegments,
boolean padded)
public ConcurrentSegmentedStoredList(boolean segmented,
boolean supportFifoPerSegment)
public ConcurrentSegmentedStoredList(boolean segmented,
boolean supportFifoPerSegment,
boolean padded)
public ConcurrentSegmentedStoredList(boolean segmented)
public ConcurrentSegmentedStoredList(int inputNumOfSegments)
public int size()
ICollectionsize in interface ICollection<T>ICollection.isEmpty()public boolean isEmpty()
isEmpty in interface ICollection<T>true if list is empty; false otherwise.public IObjectInfo<T> add(T subject)
add in interface ICollection<T>subject - element to store.null if
StoredList has been invalidated.public IObjectInfo<T> addUnlocked(T subject)
IStoredListaddUnlocked in interface IStoredList<T>subject - element to store.null if
StoredList has been invalidated.public void remove(IObjectInfo<T> poi)
remove in interface IStoredList<T>poi - an existing element between Tail and Headpublic void removeUnlocked(IObjectInfo<T> poi)
IStoredListremoveUnlocked in interface IStoredList<T>poi - an existing element between Tail and Headpublic boolean contains(T obj)
contains in interface ICollection<T>obj - the element to search fortrue if element exists in the StoredList; false otherwise.public boolean removeByObject(T obj)
removeByObject in interface ICollection<T>obj - element to removetrue if object was removed; false otherwise (if element
wasn't found)public boolean invalidate()
invalidate in interface IStoredList<T>true if StoredList was set to invalid; false otherwise.public IObjectInfo<T> getHead()
getHead in interface IStoredList<T>public T getObjectFromHead()
IStoredListgetObjectFromHead in interface IStoredList<T>public boolean optimizeScanForSingleObject()
optimizeScanForSingleObject in interface IStoredList<T>public IStoredListIterator<T> establishListScan(boolean randomScan)
establishListScan in interface ICollection<T>randomScan - true enable random scan; false start from head.public IStoredListIterator<T> next(IStoredListIterator<T> slh)
next in interface ICollection<T>slh - Holder representing a pivot position.null if reached end of scan.public boolean isMultiObjectCollection()
ICollectionisMultiObjectCollection in interface ICollection<T>true if its an actual list; false otherwisepublic boolean isIterator()
IObjectsListisIterator in interface IObjectsListpublic void dump(Logger logger, String msg)
IStoredListdump in interface IStoredList<T>logger - logger to usemsg - message to add in logpublic void freeSLHolder(IStoredListIterator<T> slh)
freeSLHolder in interface IStoredList<T>slh - Holder resource to return to pool; can be null.public void monitor()
public int getHashCode(int id)
getHashCode in interface IHashEntry<Object,IStoredList<T>>public Object getKey(int id)
getKey in interface IHashEntry<Object,IStoredList<T>>public IStoredList<T> getValue(int id)
getValue in interface IHashEntry<Object,IStoredList<T>>public boolean isNativeHashEntry()
isNativeHashEntry in interface IHashEntry<Object,IStoredList<T>>true if this is a native hashmap entryCopyright © GigaSpaces.