Class AbstractExtendedCollection<E>
- Type Parameters:
- E-
- All Implemented Interfaces:
- ExtendedCollection<E>
- Direct Known Subclasses:
- AbstractArrayCollection,- AbstractChainCollection
public abstract class AbstractExtendedCollection<E> extends Object implements ExtendedCollection<E>
 It is the base class for every extended collection, even if the extending class does not implement XAddingCollection. Subclasses of this class that do not implement  XAddingCollection will throw anUnsupportedOperationException in the adding methods defined in this class.
 All code using the optimisation methods in here has to ensure that it can only be legally called for implementations
 of  XAddingCollection, for example by using  XAddingCollection as the concrete parameter type.
 
 Note that this technique of using  UnsupportedOperationException is explicitly not comparable to the
 JDK's approach like in  Collections.unmodifiableCollection(java.util.Collection) where a
 general pupose type (java.util.Collection) is implemented intentionally broken to achieve a certain reduced
 behavior,
 while the technique described here is a cleanly encapsuled implementation detail used in combination with proper
 typing.
- 
Nested Class SummaryNested classes/interfaces inherited from interface one.microstream.collections.interfaces.ExtendedCollectionExtendedCollection.Creator<E,C extends ExtendedCollection<E>>
- 
Constructor SummaryConstructors Constructor Description AbstractExtendedCollection()
- 
Method SummaryModifier and Type Method Description static voidensureFreeArrayCapacity(int size)static voidvalidateIndex(long bound, long index)Methods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface one.microstream.collections.interfaces.ExtendedCollectionhasVolatileElements, nullAllowed
- 
Constructor Details- 
AbstractExtendedCollectionpublic AbstractExtendedCollection()
 
- 
- 
Method Details- 
validateIndex- Throws:
- IndexBoundsException
 
- 
ensureFreeArrayCapacitypublic static void ensureFreeArrayCapacity(int size)
 
-