Class SQLContainer
- java.lang.Object
-
- com.vaadin.data.util.sqlcontainer.SQLContainer
-
- All Implemented Interfaces:
Container
,Container.Filterable
,Container.Indexed
,Container.ItemSetChangeNotifier
,Container.Ordered
,Container.Sortable
,Serializable
public class SQLContainer extends Object implements Container, Container.Filterable, Container.Indexed, Container.Sortable, Container.ItemSetChangeNotifier
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
SQLContainer.ItemSetChangeEvent
Simple ItemSetChangeEvent implementation.-
Nested classes/interfaces inherited from interface com.vaadin.data.Container
Container.Editor, Container.Filter, Container.Filterable, Container.Hierarchical, Container.Indexed, Container.ItemSetChangeListener, Container.ItemSetChangeNotifier, Container.Ordered, Container.PropertySetChangeEvent, Container.PropertySetChangeListener, Container.PropertySetChangeNotifier, Container.SimpleFilterable, Container.Sortable, Container.Viewer
-
Nested classes/interfaces inherited from interface com.vaadin.data.Container.Indexed
Container.Indexed.ItemAddEvent, Container.Indexed.ItemRemoveEvent
-
-
Field Summary
Fields Modifier and Type Field Description static int
CACHE_RATIO
Number of items to cache = CACHE_RATIO x pageLengthstatic int
DEFAULT_PAGE_LENGTH
-
Constructor Summary
Constructors Constructor Description SQLContainer(QueryDelegate delegate)
Creates and initializes SQLContainer using the given QueryDelegate
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description void
addContainerFilter(Container.Filter filter)
Adds a filter for the container.void
addContainerFilter(Object propertyId, String filterString, boolean ignoreCase, boolean onlyMatchPrefix)
boolean
addContainerProperty(Object propertyId, Class<?> type, Object defaultValue)
Adds a new Property to all Items in the Container.Object
addItem()
Note! If auto commit mode is enabled, this method will still return the temporary row ID assigned for the item.Item
addItem(Object itemId)
Creates a new Item with the given ID in the Container.Object
addItemAfter(Object previousItemId)
Adds a new item after the given item.Item
addItemAfter(Object previousItemId, Object newItemId)
Adds a new item after the given item.Object
addItemAt(int index)
Adds a new item at given index (in the filtered view).Item
addItemAt(int index, Object newItemId)
Adds a new item at given index (in the filtered view).void
addItemSetChangeListener(Container.ItemSetChangeListener listener)
Adds an Item set change listener for the object.void
addListener(Container.ItemSetChangeListener listener)
Deprecated.As of 7.0, replaced byaddItemSetChangeListener(Container.ItemSetChangeListener)
void
addListener(QueryDelegate.RowIdChangeListener listener)
Deprecated.As of 7.0, replaced byaddRowIdChangeListener(RowIdChangeListener)
void
addOrderBy(OrderBy orderBy)
Adds the given OrderBy to this container and refreshes the container contents with the new sorting rules.void
addReference(SQLContainer refdCont, String refingCol, String refdCol)
Adds a new reference to the given SQLContainer.void
addRowIdChangeListener(QueryDelegate.RowIdChangeListener listener)
Adds a RowIdChangeListener to the QueryDelegatevoid
commit()
Commits all the changes, additions and removals made to the items of this container.boolean
containsId(Object itemId)
Tests if the Container contains the specified Item.void
enableCacheFlushNotifications()
Calling this will enable this SQLContainer to send and receive cache flush notifications for its lifetime.protected void
fireContentsChange()
Object
firstItemId()
Gets the ID of the first Item in the Container.Collection<Container.Filter>
getContainerFilters()
Returns the filters which have been applied to the containerProperty
getContainerProperty(Object itemId, Object propertyId)
Gets the Property identified by the given itemId and propertyId from the Container.Collection<?>
getContainerPropertyIds()
Gets the ID's of all Properties stored in the Container.Object
getIdByIndex(int index)
Get the item id for the item at the position given byindex
.Item
getItem(Object itemId)
Gets theItem
with the given Item ID from the Container.Collection<?>
getItemIds()
NOTE! Do not use this method if in any way avoidable.List<Object>
getItemIds(int startIndex, int numberOfIds)
GetnumberOfItems
consecutive item ids from the container, starting with the item id atstartIndex
.Item
getItemUnfiltered(Object itemId)
Bypasses in-memory filtering to return items that are cached in memory.int
getPageLength()
Returns the currently set page length.protected QueryDelegate
getQueryDelegate()
Returns the QueryDelegate set for this SQLContainer.Item
getReferencedItem(Object itemId, SQLContainer refdCont)
Fetches the referenced item from the target SQLContainer.Object
getReferencedItemId(Object itemId, SQLContainer refdCont)
Fetches the Item Id of the referenced item from the target SQLContainer.Collection<?>
getSortableContainerPropertyIds()
Gets the container property IDs which can be used to sort the items.Class<?>
getType(Object propertyId)
Gets the data type of all Properties identified by the given Property ID.boolean
hasContainerFilters()
Returns true if any filters have been applied to the container.int
indexOfId(Object itemId)
Gets the index of the Item corresponding to the itemId.boolean
isAutoCommit()
Returns status of the auto commit mode.boolean
isFirstId(Object itemId)
Tests if the Item corresponding to the given Item ID is the first Item in the Container.boolean
isLastId(Object itemId)
Tests if the Item corresponding to the given Item ID is the last Item in the Container.boolean
isModified()
Returns modify state of the container.Object
lastItemId()
Gets the ID of the last Item in the Container..Object
nextItemId(Object itemId)
Gets the ID of the Item following the Item that corresponds toitemId
.Object
prevItemId(Object itemId)
Gets the ID of the Item preceding the Item that corresponds toitemId
.void
refresh()
Refreshes the container - clears all caches and resets size and offset.void
removeAllContainerFilters()
Remove all active filters from the container.boolean
removeAllItems()
Removes all Items from the Container.void
removeContainerFilter(Container.Filter filter)
Removes a filter from the container.void
removeContainerFilters(Object propertyId)
boolean
removeContainerProperty(Object propertyId)
Removes a Property specified by the given Property ID from the Container.boolean
removeItem(Object itemId)
Removes the Item identified byItemId
from the Container.void
removeItemSetChangeListener(Container.ItemSetChangeListener listener)
Removes the Item set change listener from the object.void
removeListener(Container.ItemSetChangeListener listener)
Deprecated.As of 7.0, replaced byremoveItemSetChangeListener(Container.ItemSetChangeListener)
void
removeListener(QueryDelegate.RowIdChangeListener listener)
Deprecated.As of 7.0, replaced byremoveRowIdChangeListener(RowIdChangeListener)
boolean
removeReference(SQLContainer refdCont)
Removes the reference pointing to the given SQLContainer.void
removeRowIdChangeListener(QueryDelegate.RowIdChangeListener listener)
Removes a RowIdChangeListener from the QueryDelegatevoid
rollback()
Rolls back all the changes, additions and removals made to the items of this container.void
setAutoCommit(boolean autoCommitEnabled)
Set auto commit mode enabled or disabled.void
setPageLength(int pageLength)
Sets the page length used in lazy fetching of items from the data source.boolean
setReferencedItem(Object itemId, Object refdItemId, SQLContainer refdCont)
Sets the referenced item.int
size()
Gets the number of visible Items in the Container.void
sort(Object[] propertyId, boolean[] ascending)
Sorts the container items.
-
-
-
Field Detail
-
DEFAULT_PAGE_LENGTH
public static final int DEFAULT_PAGE_LENGTH
- See Also:
- Constant Field Values
-
CACHE_RATIO
public static final int CACHE_RATIO
Number of items to cache = CACHE_RATIO x pageLength- See Also:
- Constant Field Values
-
-
Constructor Detail
-
SQLContainer
public SQLContainer(QueryDelegate delegate) throws SQLException
Creates and initializes SQLContainer using the given QueryDelegate- Parameters:
delegate
- QueryDelegate implementation- Throws:
SQLException
-
-
Method Detail
-
addItem
public Object addItem() throws UnsupportedOperationException
Note! If auto commit mode is enabled, this method will still return the temporary row ID assigned for the item. Implement QueryDelegate.RowIdChangeListener to receive the actual Row ID value after the addition has been committed. Creates a new Item into the Container, and assign it an automatic ID.The new ID is returned, or
null
if the operation fails. After a successful call you can use the
method to fetch the Item.getItem
This functionality is optional.
- Specified by:
addItem
in interfaceContainer
- Returns:
- ID of the newly created Item, or
null
in case of a failure - Throws:
UnsupportedOperationException
- if adding an item without an explicit item ID is not supported by the container
-
containsId
public boolean containsId(Object itemId)
Description copied from interface:Container
Tests if the Container contains the specified Item.Filtering can hide items so that they will not be visible through the container API, and this method should respect visibility of items (i.e. only indicate visible items as being in the container) if feasible for the container.
- Specified by:
containsId
in interfaceContainer
- Parameters:
itemId
- ID the of Item to be tested- Returns:
- boolean indicating if the Container holds the specified Item
-
getContainerProperty
public Property getContainerProperty(Object itemId, Object propertyId)
Description copied from interface:Container
Gets the Property identified by the given itemId and propertyId from the Container. If the Container does not contain the item or it is filtered out, or the Container does not have the Property,null
is returned.- Specified by:
getContainerProperty
in interfaceContainer
- Parameters:
itemId
- ID of the visible Item which contains the PropertypropertyId
- ID of the Property to retrieve- Returns:
- Property with the given ID or
null
-
getContainerPropertyIds
public Collection<?> getContainerPropertyIds()
Description copied from interface:Container
Gets the ID's of all Properties stored in the Container. The ID's cannot be modified through the returned collection.- Specified by:
getContainerPropertyIds
in interfaceContainer
- Returns:
- unmodifiable collection of Property IDs
-
getItem
public Item getItem(Object itemId)
Description copied from interface:Container
Gets theItem
with the given Item ID from the Container. If the Container does not contain the requested Item,null
is returned.Containers should not return Items that are filtered out.
-
getItemUnfiltered
public Item getItemUnfiltered(Object itemId)
Bypasses in-memory filtering to return items that are cached in memory. NOTE: This does not bypass database-level filtering.- Parameters:
itemId
- the id of the item to retrieve.- Returns:
- the item represented by itemId.
-
getItemIds
public Collection<?> getItemIds()
NOTE! Do not use this method if in any way avoidable. This method doesn't (and cannot) use lazy loading, which means that all rows in the database will be loaded into memory. Gets the ID's of all visible (after filtering and sorting) Items stored in the Container. The ID's cannot be modified through the returned collection.If the container is
Container.Ordered
, the collection returned by this method should follow that order. If the container isContainer.Sortable
, the items should be in the sorted order.Calling this method for large lazy containers can be an expensive operation and should be avoided when practical.
- Specified by:
getItemIds
in interfaceContainer
- Returns:
- unmodifiable collection of Item IDs
-
getType
public Class<?> getType(Object propertyId)
Description copied from interface:Container
Gets the data type of all Properties identified by the given Property ID.
-
size
public int size()
Description copied from interface:Container
Gets the number of visible Items in the Container.Filtering can hide items so that they will not be visible through the container API.
-
removeItem
public boolean removeItem(Object itemId) throws UnsupportedOperationException
Description copied from interface:Container
Removes the Item identified byItemId
from the Container.Containers that support filtering should also allow removing an item that is currently filtered out.
This functionality is optional.
- Specified by:
removeItem
in interfaceContainer
- Parameters:
itemId
- ID of the Item to remove- Returns:
true
if the operation succeeded,false
if not- Throws:
UnsupportedOperationException
- if the container does not support removing individual items
-
removeAllItems
public boolean removeAllItems() throws UnsupportedOperationException
Description copied from interface:Container
Removes all Items from the Container.Note that Property ID and type information is preserved. This functionality is optional.
- Specified by:
removeAllItems
in interfaceContainer
- Returns:
true
if the operation succeeded,false
if not- Throws:
UnsupportedOperationException
- if the container does not support removing all items
-
addContainerFilter
public void addContainerFilter(Container.Filter filter) throws UnsupportedFilterException
Adds a filter for the container.If a container has multiple filters, only items accepted by all filters are visible.
- Specified by:
addContainerFilter
in interfaceContainer.Filterable
- Throws:
UnsupportedFilterException
- if the filter is not supported by the container
-
removeContainerFilter
public void removeContainerFilter(Container.Filter filter)
Removes a filter from the container.This requires that the equals() method considers the filters as equivalent (same instance or properly implemented equals() method).
- Specified by:
removeContainerFilter
in interfaceContainer.Filterable
-
addContainerFilter
public void addContainerFilter(Object propertyId, String filterString, boolean ignoreCase, boolean onlyMatchPrefix)
-
removeContainerFilters
public void removeContainerFilters(Object propertyId)
-
removeAllContainerFilters
public void removeAllContainerFilters()
Remove all active filters from the container.- Specified by:
removeAllContainerFilters
in interfaceContainer.Filterable
-
hasContainerFilters
public boolean hasContainerFilters()
Returns true if any filters have been applied to the container.- Returns:
- true if the container has filters applied, false otherwise
- Since:
- 7.1
-
getContainerFilters
public Collection<Container.Filter> getContainerFilters()
Description copied from interface:Container.Filterable
Returns the filters which have been applied to the container- Specified by:
getContainerFilters
in interfaceContainer.Filterable
- Returns:
- A collection of filters which have been applied to the container. An empty collection if no filters have been applied.
-
indexOfId
public int indexOfId(Object itemId)
Description copied from interface:Container.Indexed
Gets the index of the Item corresponding to the itemId. The following istrue
for the returned index: 0 <= index < size(), or index = -1 if there is no visible item with that id in the container.- Specified by:
indexOfId
in interfaceContainer.Indexed
- Parameters:
itemId
- ID of an Item in the Container- Returns:
- index of the Item, or -1 if (the filtered and sorted view of) the Container does not include the Item
-
getIdByIndex
public Object getIdByIndex(int index)
Description copied from interface:Container.Indexed
Get the item id for the item at the position given byindex
.- Specified by:
getIdByIndex
in interfaceContainer.Indexed
- Parameters:
index
- the index of the requested item id- Returns:
- the item id of the item at the given index
-
getItemIds
public List<Object> getItemIds(int startIndex, int numberOfIds)
Description copied from interface:Container.Indexed
GetnumberOfItems
consecutive item ids from the container, starting with the item id atstartIndex
.Implementations should return at most
numberOfItems
item ids, but can contain less if the container has less items than required to fulfill the request. The returned list must hence contain all of the item ids from the range:startIndex
tomax(startIndex + (numberOfItems-1), container.size()-1)
.For quick migration to new API see:
ContainerHelpers.getItemIdsUsingGetIdByIndex(int, int, Indexed)
- Specified by:
getItemIds
in interfaceContainer.Indexed
- Parameters:
startIndex
- the index for the first item which id to includenumberOfIds
- the number of consecutive item ids to get from the given start index, must be >= 0- Returns:
- List containing the requested item ids or empty list if
numberOfItems
== 0; not null
-
nextItemId
public Object nextItemId(Object itemId)
Description copied from interface:Container.Ordered
Gets the ID of the Item following the Item that corresponds toitemId
. If the given Item is the last or not found in the Container,null
is returned.- Specified by:
nextItemId
in interfaceContainer.Ordered
- Parameters:
itemId
- ID of a visible Item in the Container- Returns:
- ID of the next visible Item or
null
-
prevItemId
public Object prevItemId(Object itemId)
Description copied from interface:Container.Ordered
Gets the ID of the Item preceding the Item that corresponds toitemId
. If the given Item is the first or not found in the Container,null
is returned.- Specified by:
prevItemId
in interfaceContainer.Ordered
- Parameters:
itemId
- ID of a visible Item in the Container- Returns:
- ID of the previous visible Item or
null
-
firstItemId
public Object firstItemId()
Description copied from interface:Container.Ordered
Gets the ID of the first Item in the Container.- Specified by:
firstItemId
in interfaceContainer.Ordered
- Returns:
- ID of the first visible Item in the Container
-
lastItemId
public Object lastItemId()
Description copied from interface:Container.Ordered
Gets the ID of the last Item in the Container..- Specified by:
lastItemId
in interfaceContainer.Ordered
- Returns:
- ID of the last visible Item in the Container
-
isFirstId
public boolean isFirstId(Object itemId)
Description copied from interface:Container.Ordered
Tests if the Item corresponding to the given Item ID is the first Item in the Container.- Specified by:
isFirstId
in interfaceContainer.Ordered
- Parameters:
itemId
- ID of an Item in the Container- Returns:
true
if the Item is first visible item in the Container,false
if not
-
isLastId
public boolean isLastId(Object itemId)
Description copied from interface:Container.Ordered
Tests if the Item corresponding to the given Item ID is the last Item in the Container.- Specified by:
isLastId
in interfaceContainer.Ordered
- Returns:
true
if the Item is last visible item in the Container,false
if not
-
sort
public void sort(Object[] propertyId, boolean[] ascending)
Description copied from interface:Container.Sortable
Sorts the container items.Sorting a container can irreversibly change the order of its items or only change the order temporarily, depending on the container.
- Specified by:
sort
in interfaceContainer.Sortable
- Parameters:
propertyId
- Array of container property IDs, whose values are used to sort the items in container as primary, secondary, ... sorting criterion. All of the item IDs must be in the collection returned byContainer.Sortable.getSortableContainerPropertyIds()
ascending
- Array of sorting order flags corresponding to each property ID used in sorting. If this array is shorter than propertyId array, ascending order is assumed for items where the order is not specified. Usetrue
to sort in ascending order,false
to use descending order.
-
getSortableContainerPropertyIds
public Collection<?> getSortableContainerPropertyIds()
Description copied from interface:Container.Sortable
Gets the container property IDs which can be used to sort the items.- Specified by:
getSortableContainerPropertyIds
in interfaceContainer.Sortable
- Returns:
- the IDs of the properties that can be used for sorting the container
-
refresh
public void refresh()
Refreshes the container - clears all caches and resets size and offset. Does NOT remove sorting or filtering rules!
-
isModified
public boolean isModified()
Returns modify state of the container.- Returns:
- true if contents of this container have been modified
-
setAutoCommit
public void setAutoCommit(boolean autoCommitEnabled)
Set auto commit mode enabled or disabled. Auto commit mode means that all changes made to items of this container will be immediately written to the underlying data source.- Parameters:
autoCommitEnabled
- true to enable auto commit mode
-
isAutoCommit
public boolean isAutoCommit()
Returns status of the auto commit mode.- Returns:
- true if auto commit mode is enabled
-
getPageLength
public int getPageLength()
Returns the currently set page length.- Returns:
- current page length
-
setPageLength
public void setPageLength(int pageLength)
Sets the page length used in lazy fetching of items from the data source. Also resets the cache size to match the new page length. As a side effect the container will be refreshed.- Parameters:
pageLength
- new page length
-
addOrderBy
public void addOrderBy(OrderBy orderBy)
Adds the given OrderBy to this container and refreshes the container contents with the new sorting rules. Note that orderBy.getColumn() must return a column name that exists in this container.- Parameters:
orderBy
- OrderBy to be added to the container sorting rules
-
commit
public void commit() throws UnsupportedOperationException, SQLException
Commits all the changes, additions and removals made to the items of this container.
-
rollback
public void rollback() throws UnsupportedOperationException, SQLException
Rolls back all the changes, additions and removals made to the items of this container.
-
getQueryDelegate
protected QueryDelegate getQueryDelegate()
Returns the QueryDelegate set for this SQLContainer.- Returns:
- current querydelegate
-
addContainerProperty
public boolean addContainerProperty(Object propertyId, Class<?> type, Object defaultValue) throws UnsupportedOperationException
Description copied from interface:Container
Adds a new Property to all Items in the Container. The Property ID, data type and default value of the new Property are given as parameters.This functionality is optional.
- Specified by:
addContainerProperty
in interfaceContainer
- Parameters:
propertyId
- ID of the Propertytype
- Data type of the new PropertydefaultValue
- The value all created Properties are initialized to- Returns:
true
if the operation succeeded,false
if not- Throws:
UnsupportedOperationException
- if the container does not support explicitly adding container properties
-
removeContainerProperty
public boolean removeContainerProperty(Object propertyId) throws UnsupportedOperationException
Description copied from interface:Container
Removes a Property specified by the given Property ID from the Container. Note that the Property will be removed from all Items in the Container.This functionality is optional.
- Specified by:
removeContainerProperty
in interfaceContainer
- Parameters:
propertyId
- ID of the Property to remove- Returns:
true
if the operation succeeded,false
if not- Throws:
UnsupportedOperationException
- if the container does not support removing container properties
-
addItem
public Item addItem(Object itemId) throws UnsupportedOperationException
Description copied from interface:Container
Creates a new Item with the given ID in the Container.The new Item is returned, and it is ready to have its Properties modified. Returns
null
if the operation fails or the Container already contains a Item with the given ID.This functionality is optional.
- Specified by:
addItem
in interfaceContainer
- Parameters:
itemId
- ID of the Item to be created- Returns:
- Created new Item, or
null
in case of a failure - Throws:
UnsupportedOperationException
- if adding an item with an explicit item ID is not supported by the container
-
addItemAfter
public Item addItemAfter(Object previousItemId, Object newItemId) throws UnsupportedOperationException
Description copied from interface:Container.Ordered
Adds a new item after the given item.Adding an item after null item adds the item as first item of the ordered container.
- Specified by:
addItemAfter
in interfaceContainer.Ordered
- Parameters:
previousItemId
- Id of the visible item in ordered container after which to insert the new item.newItemId
- Id of the new item to be added.- Returns:
- new item or null if the operation fails.
- Throws:
UnsupportedOperationException
- if the operation is not supported by the container- See Also:
Ordered: adding items in filtered or sorted containers
-
addItemAt
public Item addItemAt(int index, Object newItemId) throws UnsupportedOperationException
Description copied from interface:Container.Indexed
Adds a new item at given index (in the filtered view).The indexes of the item currently in the given position and all the following items are incremented.
This method should apply filters to the added item after inserting it, possibly hiding it immediately. If the container is being sorted, the item may be added at the correct sorted position instead of the given position. See
Container.Indexed
,Container.Filterable
andContainer.Sortable
for more information.- Specified by:
addItemAt
in interfaceContainer.Indexed
- Parameters:
index
- Index (in the filtered and sorted view) at which to add the new item.newItemId
- Id of the new item to be added.- Returns:
- new
Item
or null if the operation fails. - Throws:
UnsupportedOperationException
- if the operation is not supported by the container
-
addItemAt
public Object addItemAt(int index) throws UnsupportedOperationException
Description copied from interface:Container.Indexed
Adds a new item at given index (in the filtered view).The indices of the item currently in the given position and all the following items are incremented.
This method should apply filters to the added item after inserting it, possibly hiding it immediately. If the container is being sorted, the item may be added at the correct sorted position instead of the given position. See
Container.Indexed
,Container.Ordered
,Container.Filterable
andContainer.Sortable
for more information.- Specified by:
addItemAt
in interfaceContainer.Indexed
- Parameters:
index
- Index (in the filtered and sorted view) to add the new item.- Returns:
- item id of the created item or null if the operation fails.
- Throws:
UnsupportedOperationException
- if the operation is not supported by the container
-
addItemAfter
public Object addItemAfter(Object previousItemId) throws UnsupportedOperationException
Description copied from interface:Container.Ordered
Adds a new item after the given item.Adding an item after null item adds the item as first item of the ordered container.
- Specified by:
addItemAfter
in interfaceContainer.Ordered
- Parameters:
previousItemId
- Id of the visible item in ordered container after which to insert the new item.- Returns:
- item id the the created new item or null if the operation fails.
- Throws:
UnsupportedOperationException
- if the operation is not supported by the container- See Also:
Ordered: adding items in filtered or sorted containers
-
addItemSetChangeListener
public void addItemSetChangeListener(Container.ItemSetChangeListener listener)
Description copied from interface:Container.ItemSetChangeNotifier
Adds an Item set change listener for the object.- Specified by:
addItemSetChangeListener
in interfaceContainer.ItemSetChangeNotifier
- Parameters:
listener
- listener to be added
-
addListener
@Deprecated public void addListener(Container.ItemSetChangeListener listener)
Deprecated.As of 7.0, replaced byaddItemSetChangeListener(Container.ItemSetChangeListener)
- Specified by:
addListener
in interfaceContainer.ItemSetChangeNotifier
-
removeItemSetChangeListener
public void removeItemSetChangeListener(Container.ItemSetChangeListener listener)
Description copied from interface:Container.ItemSetChangeNotifier
Removes the Item set change listener from the object.- Specified by:
removeItemSetChangeListener
in interfaceContainer.ItemSetChangeNotifier
- Parameters:
listener
- listener to be removed
-
removeListener
@Deprecated public void removeListener(Container.ItemSetChangeListener listener)
Deprecated.As of 7.0, replaced byremoveItemSetChangeListener(Container.ItemSetChangeListener)
- Specified by:
removeListener
in interfaceContainer.ItemSetChangeNotifier
-
fireContentsChange
protected void fireContentsChange()
-
addRowIdChangeListener
public void addRowIdChangeListener(QueryDelegate.RowIdChangeListener listener)
Adds a RowIdChangeListener to the QueryDelegate- Parameters:
listener
-
-
addListener
@Deprecated public void addListener(QueryDelegate.RowIdChangeListener listener)
Deprecated.As of 7.0, replaced byaddRowIdChangeListener(RowIdChangeListener)
-
removeRowIdChangeListener
public void removeRowIdChangeListener(QueryDelegate.RowIdChangeListener listener)
Removes a RowIdChangeListener from the QueryDelegate- Parameters:
listener
-
-
removeListener
@Deprecated public void removeListener(QueryDelegate.RowIdChangeListener listener)
Deprecated.As of 7.0, replaced byremoveRowIdChangeListener(RowIdChangeListener)
-
enableCacheFlushNotifications
public void enableCacheFlushNotifications()
Calling this will enable this SQLContainer to send and receive cache flush notifications for its lifetime.
-
addReference
public void addReference(SQLContainer refdCont, String refingCol, String refdCol)
Adds a new reference to the given SQLContainer. In addition to the container you must provide the column (property) names used for the reference in both this and the referenced SQLContainer. Note that multiple references pointing to the same SQLContainer are not supported.- Parameters:
refdCont
- Target SQLContainer of the new referencerefingCol
- Column (property) name in this container storing the (foreign key) referencerefdCol
- Column (property) name in the referenced container storing the referenced key
-
removeReference
public boolean removeReference(SQLContainer refdCont)
Removes the reference pointing to the given SQLContainer.- Parameters:
refdCont
- Target SQLContainer of the reference- Returns:
- true if successful, false if the reference did not exist
-
setReferencedItem
public boolean setReferencedItem(Object itemId, Object refdItemId, SQLContainer refdCont)
Sets the referenced item. The referencing column of the item in this container is updated accordingly.- Parameters:
itemId
- Item Id of the reference source (from this container)refdItemId
- Item Id of the reference target (from referenced container)refdCont
- Target SQLContainer of the reference- Returns:
- true if the referenced item was successfully set, false on failure
-
getReferencedItemId
public Object getReferencedItemId(Object itemId, SQLContainer refdCont)
Fetches the Item Id of the referenced item from the target SQLContainer.- Parameters:
itemId
- Item Id of the reference source (from this container)refdCont
- Target SQLContainer of the reference- Returns:
- Item Id of the referenced item, or null if not found
-
getReferencedItem
public Item getReferencedItem(Object itemId, SQLContainer refdCont)
Fetches the referenced item from the target SQLContainer.- Parameters:
itemId
- Item Id of the reference source (from this container)refdCont
- Target SQLContainer of the reference- Returns:
- The referenced item, or null if not found
-
-