public interface BeanState
Modifier and Type | Method and Description |
---|---|
Set<String> |
getChangedProps()
Return the set of changed properties.
|
Map<String,ValuePair> |
getDirtyValues()
Return a map of the updated properties and their new and old values.
|
Set<String> |
getLoadedProps()
For partially populated beans returns the properties that are loaded on the
bean.
|
Map<String,Exception> |
getLoadErrors()
Returns a map with load erros.
|
boolean |
isDirty()
Return true if the bean has been changed but not yet saved.
|
boolean |
isDisableLazyLoad()
Return true if the bean has lazy loading disabled.
|
boolean |
isNew()
Return true if the bean is new (and not yet saved).
|
boolean |
isNewOrDirty()
Return true if the bean is new or dirty (and probably needs to be saved).
|
boolean |
isReadOnly()
Return true if the bean is readOnly.
|
boolean |
isReference()
Return true if this is a lazy loading reference bean.
|
void |
resetForInsert()
Reset the bean putting it into NEW state such that a save() results in an insert.
|
void |
setDisableLazyLoad(boolean disableLazyLoading)
This can be called with true to disable lazy loading on the bean.
|
void |
setLoaded()
Advanced - Used to programmatically build a partially or fully loaded
entity bean.
|
void |
setPropertyLoaded(String propertyName,
boolean loaded)
Set the loaded state of the property given it's name.
|
void |
setReadOnly(boolean readOnly)
Set the readOnly status for the bean.
|
boolean isReference()
If so the this bean only holds the Id property and will invoke lazy loading if any other property is get or set.
boolean isNew()
boolean isNewOrDirty()
boolean isDirty()
void setDisableLazyLoad(boolean disableLazyLoading)
boolean isDisableLazyLoad()
void setPropertyLoaded(String propertyName, boolean loaded)
Typically this would be used to set the loaded state of a property to false to ensure that the specific property is excluded from a stateless update.
// populate a bean via say JSON
User user = ...;
// set loaded state on the email property to false so that
// the email property is not included in a stateless update
Ebean.getBeanState(user).setPropertyLoaded("email", false);
user.update();
This will throw an IllegalArgumentException if the property is unknown.
Set<String> getLoadedProps()
Accessing another property will cause lazy loading to occur.
Set<String> getChangedProps()
Map<String,ValuePair> getDirtyValues()
boolean isReadOnly()
If a setter is called on a readOnly bean it will throw an exception.
void setReadOnly(boolean readOnly)
void setLoaded()
Database.createEntityBean(Class)
, then populate its properties
and then call this method specifying which properties where loaded or null
for a fully loaded entity bean.void resetForInsert()
@Nullable Map<String,Exception> getLoadErrors()
Copyright © 2019. All rights reserved.