Package org.hibernate.engine.spi
Class ExecutableList<E extends ComparableExecutable>
java.lang.Object
org.hibernate.engine.spi.ExecutableList<E>
- All Implemented Interfaces:
Externalizable
,Serializable
,Iterable<E>
public class ExecutableList<E extends ComparableExecutable>
extends Object
implements Serializable, Iterable<E>, Externalizable
A list of
executeble actions
. Responsible for
sorting the executables, and calculating the
affected query spaces.- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interface
Provides a sorting interface forExecutableList
. -
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionCreates a new instance with the default settings.ExecutableList
(boolean requiresSorting) ExecutableList
(int initialCapacity) Creates a new instance with the given initial capacity.ExecutableList
(int initialCapacity, boolean requiresSorting) ExecutableList
(int initialCapacity, ExecutableList.Sorter<E> sorter) Creates a new instance with the given initial capacity andExecutableList.Sorter
.ExecutableList
(ExecutableList.Sorter<E> sorter) Creates a new instance using the givenExecutableList.Sorter
. -
Method Summary
Modifier and TypeMethodDescriptionboolean
Add anExecutable
to this list.void
afterDeserialize
(EventSource session) Allow theExecutable
s to reassociate themselves with the session after deserialization.void
clear()
Clears the list of executions.get
(int index) Lazily constructs the querySpaces affected by the actions in the list.boolean
isEmpty()
iterator()
Returns an iterator for the list.void
Read this object state back in from the given stream as part of the deserialization process.remove
(int index) Removes the entry at position index in the list.void
removeLastN
(int n) Removes the last n entries from the list.int
size()
void
sort()
Sorts the list using the natural ordering or using theExecutableList.Sorter
if it's not null.toString()
void
Write this list out to the given stream as part of serializationMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
Field Details
-
INIT_QUEUE_LIST_SIZE
public static final int INIT_QUEUE_LIST_SIZE- See Also:
-
-
Constructor Details
-
ExecutableList
public ExecutableList()Creates a new instance with the default settings. -
ExecutableList
public ExecutableList(int initialCapacity) Creates a new instance with the given initial capacity.- Parameters:
initialCapacity
- The initial capacity for instantiating the internal List
-
ExecutableList
public ExecutableList(boolean requiresSorting) -
ExecutableList
public ExecutableList(int initialCapacity, boolean requiresSorting) -
ExecutableList
Creates a new instance using the givenExecutableList.Sorter
.- Parameters:
sorter
- The Sorter to use; may benull
-
ExecutableList
Creates a new instance with the given initial capacity andExecutableList.Sorter
.- Parameters:
initialCapacity
- The initial capacity for instantiating the internal Listsorter
- The Sorter to use; may benull
-
-
Method Details
-
getQuerySpaces
Lazily constructs the querySpaces affected by the actions in the list.- Returns:
- the querySpaces affected by the actions in this list
-
isEmpty
public boolean isEmpty()- Returns:
- true if the list is empty.
-
remove
Removes the entry at position index in the list.- Parameters:
index
- The index of the element to remove- Returns:
- the entry that was removed
-
clear
public void clear()Clears the list of executions. -
removeLastN
public void removeLastN(int n) Removes the last n entries from the list.- Parameters:
n
- The number of elements to remove.
-
add
Add anExecutable
to this list.- Parameters:
executable
- the executable to add to the list- Returns:
- true if the object was added to the list
-
sort
public void sort()Sorts the list using the natural ordering or using theExecutableList.Sorter
if it's not null. -
size
public int size()- Returns:
- the current size of the list
-
get
- Parameters:
index
- The index of the element to retrieve- Returns:
- The element at specified index
-
iterator
Returns an iterator for the list. Wraps the list just in case something tries to modify it.- Specified by:
iterator
in interfaceIterable<E extends ComparableExecutable>
- Returns:
- an unmodifiable iterator
-
writeExternal
Write this list out to the given stream as part of serialization- Specified by:
writeExternal
in interfaceExternalizable
- Parameters:
oos
- The stream to which to serialize our state- Throws:
IOException
-
readExternal
Read this object state back in from the given stream as part of the deserialization process.- Specified by:
readExternal
in interfaceExternalizable
- Parameters:
in
- The stream from which to read our serial state- Throws:
IOException
ClassNotFoundException
-
afterDeserialize
Allow theExecutable
s to reassociate themselves with the session after deserialization.- Parameters:
session
- The session with which to associate theExecutable
s
-
toString
-