Class DoubleLinkedList
- java.lang.Object
-
- com.sun.jdo.spi.persistence.utility.DoubleLinkedList
-
public class DoubleLinkedList extends Object
This class defines a thread-safe double linked-list. The list is usable by any class that implements the com.forte.util.Linkable interface. This class allows a linkable object it be inserted or removed from anywhere in the list. RESTRICTION: An object can only be a member of 1 list at a time.
-
-
Constructor Summary
Constructors Constructor Description DoubleLinkedList()
Default constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Linkable
getHead()
Return the object at the head of a linked list.int
getSize()
Return size of the linked list.Linkable
getTail()
Return the object at the tail of a linked list.void
insertAtHead(Linkable node)
Insert an object at the head of a linked list.void
insertAtTail(Linkable node)
Insert an object at the tail of a linked list.void
insertIntoList(Linkable afternode, Linkable newnode)
Insert an object anywhere into the linked list.Linkable
removeFromHead()
Remove and return an object from the head of a linked list.void
removeFromList(Linkable node)
Remove the specified object from anywhere in the linked list.Linkable
removeFromTail()
Remove and return an object from the tail of a linked list.String
toString()
Return a string representation of this DoubleLinkedList object.
-
-
-
Method Detail
-
getHead
public Linkable getHead()
Return the object at the head of a linked list.
-
getTail
public Linkable getTail()
Return the object at the tail of a linked list.
-
getSize
public int getSize()
Return size of the linked list.
-
insertAtHead
public void insertAtHead(Linkable node)
Insert an object at the head of a linked list.
-
insertAtTail
public void insertAtTail(Linkable node)
Insert an object at the tail of a linked list.
-
removeFromHead
public Linkable removeFromHead()
Remove and return an object from the head of a linked list.
-
removeFromTail
public Linkable removeFromTail()
Remove and return an object from the tail of a linked list.
-
removeFromList
public void removeFromList(Linkable node)
Remove the specified object from anywhere in the linked list. This method is usually used by the object to remove itself from the list.
-
insertIntoList
public void insertIntoList(Linkable afternode, Linkable newnode)
Insert an object anywhere into the linked list.- Parameters:
afternode
- the new node will be inserted after this nodenewnode
- the new node to be inserted
-
-