Class AbstractListHolderStateObject<T extends StateObject>
- java.lang.Object
-
- org.eclipse.persistence.jpa.jpql.tools.model.query.AbstractStateObject
-
- org.eclipse.persistence.jpa.jpql.tools.model.query.AbstractListHolderStateObject<T>
-
- All Implemented Interfaces:
ListHolderStateObject<T>,StateObject
- Direct Known Subclasses:
AbstractFromClauseStateObject,AbstractIdentificationVariableDeclarationStateObject,CaseExpressionStateObject,ConcatExpressionStateObject,ConstructorExpressionStateObject,GroupByClauseStateObject,InExpressionStateObject,OrderByClauseStateObject
public abstract class AbstractListHolderStateObject<T extends StateObject> extends AbstractStateObject implements ListHolderStateObject<T>
The abstraction definition of aStateObjectthat holds onto a list of children, the methods defined inListHolderStateObjectare automatically handled here.- Since:
- 2.4
- Version:
- 2.4
- Author:
- Pascal Filion
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <S extends T>
SaddItem(S item)Adds the givenStateObjectas a child of this one.voidaddItems(List<? extends T> items)Adds the given list ofStateObjectsas children of this one.voidaddListChangeListener(String listName, IListChangeListener<T> listener)Registers the givenIListChangeListenerfor the specified list.booleancanMoveDown(T stateObject)Determines whether the givenStateObjectcan be moved down by one position in the list owned by its parent.booleancanMoveUp(T stateObject)Determines whether the givenStateObjectcan be moved up by one position in the list owned by its parent.TgetItem(int index)Returns theStateObjectat the given positions from the listbooleanhasItems()Determines whether thisStateObjecthas any children.ListIterable<? extends T>items()Returns anListIterableover the children.intitemsSize()Returns the number of children this list holder has.TmoveDown(T item)Moves the givenStateObjectdown by one position in the list owned by its parent.TmoveUp(T item)Moves the givenStateObjectup by one position in the list owned by its parent.voidremoveItem(T stateObject)Removes the givenStateObjectfrom the list of children.voidremoveItems(Collection<T> items)Removes the givenStateObjectfrom the list of children.voidremoveListChangeListener(String listName, IListChangeListener<T> listener)Unregisters the givenIListChangeListenerthat was registered for the specified list.-
Methods inherited from class org.eclipse.persistence.jpa.jpql.tools.model.query.AbstractStateObject
addPropertyChangeListener, children, decorate, equals, findIdentificationVariable, getDeclaration, getDecorator, getExpression, getGrammar, getManagedTypeProvider, getParent, getQueryBuilder, getRoot, getType, getType, getTypeHelper, getTypeRepository, hashCode, isDecorated, isEquivalent, removePropertyChangeListener, setExpression, setParent, toString, toString, toText
-
Methods inherited from interface org.eclipse.persistence.jpa.jpql.tools.model.query.StateObject
accept, addPropertyChangeListener, children, decorate, findIdentificationVariable, getDeclaration, getDecorator, getExpression, getGrammar, getManagedTypeProvider, getParent, getQueryBuilder, getRoot, isDecorated, isEquivalent, removePropertyChangeListener, setParent, toString, toText
-
-
-
-
Method Detail
-
addItem
public <S extends T> S addItem(S item)
Adds the givenStateObjectas a child of this one.- Specified by:
addItemin interfaceListHolderStateObject<T extends StateObject>- Parameters:
item- The childStateObjectto become a child of this one return The given item
-
addItems
public void addItems(List<? extends T> items)
Adds the given list ofStateObjectsas children of this one.- Specified by:
addItemsin interfaceListHolderStateObject<T extends StateObject>- Parameters:
items- TheStateObjectsto become children of this one
-
addListChangeListener
public void addListChangeListener(String listName, IListChangeListener<T> listener)
Registers the givenIListChangeListenerfor the specified list. The listener will be notified only when items are added, removed, moved from the list.- Specified by:
addListChangeListenerin interfaceListHolderStateObject<T extends StateObject>- Parameters:
listName- The name of the list for which the listener will be notified when the content of the list has changedlistener- The listener to be notified upon changes
-
canMoveDown
public boolean canMoveDown(T stateObject)
Determines whether the givenStateObjectcan be moved down by one position in the list owned by its parent.- Specified by:
canMoveDownin interfaceListHolderStateObject<T extends StateObject>- Parameters:
stateObject- TheStateObjectthat could potentially be moved down- Returns:
trueif the object can be moved down by one unit;falseotherwise
-
canMoveUp
public boolean canMoveUp(T stateObject)
Determines whether the givenStateObjectcan be moved up by one position in the list owned by its parent.- Specified by:
canMoveUpin interfaceListHolderStateObject<T extends StateObject>- Parameters:
stateObject- TheStateObjectthat could potentially be moved up- Returns:
trueif the object can be moved up by one unit;falseotherwise
-
getItem
public T getItem(int index)
Returns theStateObjectat the given positions from the list- Specified by:
getItemin interfaceListHolderStateObject<T extends StateObject>- Parameters:
index- The position of theStateObjectto retrieve- Returns:
- The
StateObjectat the given position
-
hasItems
public boolean hasItems()
Determines whether thisStateObjecthas any children.- Specified by:
hasItemsin interfaceListHolderStateObject<T extends StateObject>- Returns:
trueif thisStateObjecthas children;falseotherwise
-
items
public ListIterable<? extends T> items()
Returns anListIterableover the children.- Specified by:
itemsin interfaceListHolderStateObject<T extends StateObject>- Returns:
- An
ListIterablethat is iterating over the children
-
itemsSize
public int itemsSize()
Returns the number of children this list holder has.- Specified by:
itemsSizein interfaceListHolderStateObject<T extends StateObject>- Returns:
- The count of
StateObjectsthat are children of this one
-
moveDown
public T moveDown(T item)
Moves the givenStateObjectdown by one position in the list owned by its parent.- Specified by:
moveDownin interfaceListHolderStateObject<T extends StateObject>- Parameters:
item- TheStateObjectto move down in the list- Returns:
- The given item
-
moveUp
public T moveUp(T item)
Moves the givenStateObjectup by one position in the list owned by its parent.- Specified by:
moveUpin interfaceListHolderStateObject<T extends StateObject>- Parameters:
item- TheStateObjectto move up in the list- Returns:
- The given item
-
removeItem
public void removeItem(T stateObject)
Removes the givenStateObjectfrom the list of children.- Specified by:
removeItemin interfaceListHolderStateObject<T extends StateObject>- Parameters:
stateObject- The childStateObjectto not longer be a child
-
removeItems
public void removeItems(Collection<T> items)
Removes the givenStateObjectfrom the list of children.- Specified by:
removeItemsin interfaceListHolderStateObject<T extends StateObject>- Parameters:
items- TheStateObjectsto remove from this one
-
removeListChangeListener
public void removeListChangeListener(String listName, IListChangeListener<T> listener)
Unregisters the givenIListChangeListenerthat was registered for the specified list. The listener will no longer be notified only when items are added, removed, moved from the list.- Specified by:
removeListChangeListenerin interfaceListHolderStateObject<T extends StateObject>- Parameters:
listName- The name of the list for which the listener was registeredlistener- The listener to unregister
-
-