See: Description
| Interface | Description |
|---|---|
| CloneableBean<T> |
Enables cloning of beans via
Object.clone(). |
| Completable<T> |
Extension interface that allows runtime checking whether all fields of a bean
have been initialized, that is, are not null.
|
| Freezable<T> |
Extension interface that allows setting the status of a bean to immutable
("frozen") by preventing all further setter calls.
|
| GsonSupport |
Extension interface that makes IBeans serializable and deserializable with
Gson.
|
| Jackson2Support |
Extension interface that makes IBeans serializable and deserializable with
Jackson2.
|
| LazyInit |
Extension interface that supports with on-the-fly creation of nested IBeans.
|
| LazyInitChild |
Extension interface that supports with on-the-fly creation of nested IBeans.
|
| LazyInitParent |
Extension interface that supports with on-the-fly creation of nested IBeans.
|
| ModificationAware |
Extension interface that gives the possibility to check if a bean has been
modified since creation or last reset of the modification flag (via
ModificationAware.resetModified()). |
| ModificationAwareExt |
Extends
ModificationAware with functionality to determine which
fields have been modified. |
| NullSafe |
Marker extension interface that injects getter calls in a way that if a
getter is called on a field with value
null it throws an
NullSafetyException. |
| TempFreezable<T> |
Extension of the
Freezable interface that gives the possibility to
change a bean from an immutable (frozen) state back to a mutable state. |
| Class | Description |
|---|---|
| GsonSerializerDeserializerForIBeans |
JSON serializer/deserializer used with
Gson to convert IBeans with
extension interface GsonSupport from and to JSON. |
| Jackson2ModuleForIBeans |
Jackson2 configuration
Module for IBean support. |
| Exception | Description |
|---|---|
| BeanFrozenException |
Thrown from beans that are extended with
Freezable interface when
their status is frozen and a setter is called. |
| BeanIncompleteException |
Thrown from beans that are extended with the
Completable interface
when calling Completable.assertComplete() in case the bean still has
unset fields. |
| NullSafetyException |
Thrown from getter methods from beans that extend
NullSafe in case
the value of the field is null. |
NullSafe and
Freezable to bean type Customer they just
need to be listed in the extended clause:
public interface Customer extends NullSafe, Freezable {
...
Developers can define their own extension interfaces. See
ExtensionHandler for a description how to do
this.