public final class BeanMap<K,E> extends Object implements Map<K,E>
BeanCollection.ModifyListenMode| Constructor and Description |
|---|
BeanMap()
Create using a underlying LinkedHashMap.
|
BeanMap(BeanCollectionLoader ebeanServer,
EntityBean ownerBean,
String propertyName) |
BeanMap(Map<K,E> map)
Create with a given Map.
|
| Modifier and Type | Method and Description |
|---|---|
void |
addBean(E bean)
Add a bean to the list/set with modifyListen notification.
|
boolean |
checkEmptyLazyLoad()
Check after the lazy load that the underlying collection is not null
(handle case where join to many not outer).
|
void |
clear() |
boolean |
containsKey(Object key) |
boolean |
containsValue(Object value) |
Set<Map.Entry<K,E>> |
entrySet() |
boolean |
equals(Object obj)
Equal if obj is a Map and equal in a Map sense.
|
E |
get(Object key) |
Collection<E> |
getActualDetails()
Returns the collection of beans (map values).
|
Collection<?> |
getActualEntries()
Returns the map entrySet.
|
Map<K,E> |
getActualMap()
Return the actual underlying map.
|
ExpressionList<?> |
getFilterMany()
Return the filter (if any) that was used in building this collection.
|
Set<E> |
getModifyAdditions()
Return the list of objects added to the list set or map.
|
BeanCollection.ModifyListenMode |
getModifyListening()
Return the current modify listening mode.
|
BeanCollection.ModifyListenMode |
getModifyListenMode()
Return the modify listening mode this collection is using.
|
Set<E> |
getModifyRemovals()
Return the list of objects removed from the list set or map.
|
EntityBean |
getOwnerBean()
Return the bean that owns this collection.
|
String |
getPropertyName()
Return the bean property name this collection represents.
|
BeanCollection<E> |
getShallowCopy()
Return a shallow copy of this collection that is modifiable.
|
int |
hashCode() |
boolean |
holdsModifications()
Return true if there are underlying additions or removals.
|
void |
internalAdd(Object bean)
Add the bean to the collection.
|
void |
internalAddWithCheck(Object bean)
Add the bean with a check to see if it is already contained.
|
void |
internalPut(Object key,
Object bean) |
void |
internalPutNull() |
void |
internalPutWithCheck(Object key,
Object bean) |
boolean |
isEmpty()
Return true if the List Set or Map is empty.
|
boolean |
isPopulated()
Return true if the underlying map has been populated.
|
boolean |
isReadOnly()
Return true if the collection should be treated as readOnly and no elements
can be added or removed etc.
|
boolean |
isReference()
Return true if this is a reference (lazy loading) bean collection.
|
boolean |
isRegisteredWithLoadContext()
Return true if the collection has been registered with the batch loading context.
|
boolean |
isSkipSave()
Return true if the collection is uninitialised or is empty without any held modifications.
|
Set<K> |
keySet() |
void |
loadFrom(BeanCollection<?> other)
Load bean from another collection.
|
void |
modifyAddition(E bean)
Add an object to the additions list.
|
void |
modifyRemoval(Object bean)
Add an object to the deletions list.
|
void |
modifyReset()
Reset the set of additions and deletions.
|
E |
put(K key,
E value) |
void |
putAll(Map<? extends K,? extends E> puts) |
E |
remove(Object key) |
void |
removeBean(E bean)
Remove a bean to the list/set with modifyListen notification.
|
void |
reset(EntityBean ownerBean,
String propertyName)
Reset the collection back to an empty state ready for reloading.
|
void |
setActualMap(Map<?,?> map)
Set the actual underlying map.
|
void |
setDisableLazyLoad(boolean disableLazyLoad)
Set the disableLazyLoad state.
|
void |
setFilterMany(ExpressionList<?> filterMany)
Set the filter that was used in building this collection.
|
void |
setLoader(BeanCollectionLoader loader)
Set the loader that will be used to lazy/query load this collection.
|
void |
setModifyListening(BeanCollection.ModifyListenMode mode)
set modifyListening to be on or off.
|
void |
setReadOnly(boolean readOnly)
Set to true if you want the BeanCollection to be treated as read only.
|
int |
size()
Return the number of elements in the List Set or Map.
|
String |
toString() |
Collection<E> |
values() |
boolean |
wasTouched()
Has been modified by an addition or removal.
|
compute, computeIfAbsent, computeIfPresent, forEach, getOrDefault, merge, putIfAbsent, remove, replace, replace, replaceAllpublic BeanMap()
public BeanMap(BeanCollectionLoader ebeanServer, EntityBean ownerBean, String propertyName)
public void reset(EntityBean ownerBean, String propertyName)
BeanCollectionThis is done as part of bean refresh.
reset in interface BeanCollection<E>public boolean isSkipSave()
BeanCollectionReturning true means can safely skip cascade save for this bean collection.
isSkipSave in interface BeanCollection<E>public void loadFrom(BeanCollection<?> other)
BeanCollectionloadFrom in interface BeanCollection<E>public void internalPutNull()
public void internalPut(Object key, Object bean)
public void internalPutWithCheck(Object key, Object bean)
public void internalAddWithCheck(Object bean)
BeanCollectioninternalAddWithCheck in interface BeanCollection<E>public void internalAdd(Object bean)
BeanCollectionThis is disallowed for BeanMap.
internalAdd in interface BeanCollection<E>public boolean isPopulated()
isPopulated in interface BeanCollection<E>public boolean isReference()
isReference in interface BeanCollection<E>public boolean checkEmptyLazyLoad()
BeanCollectionThat is, if the collection was not loaded due to filterMany predicates etc then make sure the collection is set to empty.
checkEmptyLazyLoad in interface BeanCollection<E>public void setActualMap(Map<?,?> map)
public Map<K,E> getActualMap()
public Collection<E> getActualDetails()
getActualDetails in interface BeanCollection<E>public Collection<?> getActualEntries()
This is because the key values may need to be set against the details (so they don't need to be set twice).
getActualEntries in interface BeanCollection<E>public int hashCode()
public boolean containsKey(Object key)
containsKey in interface Map<K,E>public boolean containsValue(Object value)
containsValue in interface Map<K,E>public boolean isEmpty()
BeanCollectionpublic void addBean(E bean)
BeanCollectionaddBean in interface BeanCollection<E>public void removeBean(E bean)
BeanCollectionremoveBean in interface BeanCollection<E>public int size()
BeanCollectionpublic BeanCollection<E> getShallowCopy()
BeanCollectiongetShallowCopy in interface BeanCollection<E>public EntityBean getOwnerBean()
BeanCollectiongetOwnerBean in interface BeanCollection<E>public String getPropertyName()
BeanCollectiongetPropertyName in interface BeanCollection<E>public ExpressionList<?> getFilterMany()
BeanCollectionThis is so that the filter can be applied on refresh.
getFilterMany in interface BeanCollection<E>public void setFilterMany(ExpressionList<?> filterMany)
BeanCollectionsetFilterMany in interface BeanCollection<E>public void setDisableLazyLoad(boolean disableLazyLoad)
BeanCollectionsetDisableLazyLoad in interface BeanCollection<E>public boolean isRegisteredWithLoadContext()
BeanCollectionisRegisteredWithLoadContext in interface BeanCollection<E>public void setLoader(BeanCollectionLoader loader)
BeanCollectionThis is effectively the batch loading context this collection is registered with.
setLoader in interface BeanCollection<E>public boolean isReadOnly()
BeanCollectionisReadOnly in interface BeanCollection<E>public void setReadOnly(boolean readOnly)
BeanCollectionsetReadOnly in interface BeanCollection<E>public BeanCollection.ModifyListenMode getModifyListening()
BeanCollectiongetModifyListening in interface BeanCollection<E>public void setModifyListening(BeanCollection.ModifyListenMode mode)
setModifyListening in interface BeanCollection<E>public BeanCollection.ModifyListenMode getModifyListenMode()
public void modifyAddition(E bean)
BeanCollectionThis will potentially end up as an insert into a intersection table for a ManyToMany.
modifyAddition in interface BeanCollection<E>public void modifyRemoval(Object bean)
BeanCollectionThis will potentially end up as an delete from an intersection table for a ManyToMany.
modifyRemoval in interface BeanCollection<E>public void modifyReset()
BeanCollectionmodifyReset in interface BeanCollection<E>public Set<E> getModifyAdditions()
BeanCollectiongetModifyAdditions in interface BeanCollection<E>public Set<E> getModifyRemovals()
BeanCollectiongetModifyRemovals in interface BeanCollection<E>public boolean holdsModifications()
holdsModifications in interface BeanCollection<E>public boolean wasTouched()
BeanCollectionwasTouched in interface BeanCollection<E>Copyright © 2019. All rights reserved.