-
- All Superinterfaces:
MarshallableObject,Marshaller<Object>,Marshalling<Object>,MarshallingObject,ReadableBean,UnmarshallableObject,Unmarshaller<Object>,Validatable,WritableBean
- All Known Implementing Classes:
AbstractVirtualBean,AdvancedBean
public interface VirtualBean extends WritableBean
WritableBeanthat may bevirtualso it can potentially represent types that do not exist as JavaClass. Further, it has aprototypethat is typicallydynamic. If aPropertyis added to the prototype, it will automatically be available by all instances andsubclasses.
-
-
Field Summary
-
Fields inherited from interface io.github.mmm.bean.ReadableBean
PROPERTY_TYPE
-
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description static <B extends VirtualBean>
BgetPrototype(B bean)BeanClassgetType()default booleanisInstanceOf(BeanClass beanClass)-
Methods inherited from interface io.github.mmm.marshall.MarshallableObject
writeObject
-
Methods inherited from interface io.github.mmm.bean.ReadableBean
copy, copy, get, getPropertyCount, getPropertyNameForAlias, isDynamic, isEqualTo, isPolymorphic, isPrototype, isReadOnly, newInstance, validate, write
-
Methods inherited from interface io.github.mmm.marshall.UnmarshallableObject
readObject
-
Methods inherited from interface io.github.mmm.bean.WritableBean
addProperty, createProperty, createProperty, getOrCreateProperty, getOrCreateProperty, getProperties, getProperty, getRequiredProperty, read, set, set, set
-
-
-
-
Method Detail
-
getType
BeanClass getType()
-
isInstanceOf
default boolean isInstanceOf(BeanClass beanClass)
- Parameters:
beanClass- theBeanClassto check.- Returns:
trueif thisVirtualBeanis an instance of the givenBeanClass,falseotherwise.
-
getPrototype
static <B extends VirtualBean> B getPrototype(B bean)
- Type Parameters:
B- type of theVirtualBean.- Parameters:
bean- theVirtualBeanto get the prototype of.- Returns:
- the
prototypeof the givenVirtualBean.
-
-