-
- All Known Subinterfaces:
BeanClass
- All Known Implementing Classes:
BeanClassImpl
,BeanTypeImpl
public interface BeanType
- See Also:
BeanClass
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description Class<? extends WritableBean>
getJavaClass()
default Class<?>[]
getJavaClasses()
String
getPackageName()
String
getQualifiedName()
String
getSimpleName()
String
getStableName()
boolean
isVirtual()
-
-
-
Method Detail
-
getJavaClass
Class<? extends WritableBean> getJavaClass()
-
getJavaClasses
default Class<?>[] getJavaClasses()
- Returns:
- an array with all types (interfaces) composed (implemented) by this
BeanType
.
-
getPackageName
String getPackageName()
- Returns:
- packageName the
package name
. - See Also:
getJavaClass()
,Class.getPackageName()
,getQualifiedName()
-
getSimpleName
String getSimpleName()
- Returns:
- the
simple name
. - See Also:
getJavaClass()
,Class.getSimpleName()
,getQualifiedName()
-
getQualifiedName
String getQualifiedName()
- Returns:
- qualifiedName the
qualified name
composed ofpackage name
andsimple name
. - See Also:
getPackageName()
,getSimpleName()
,getJavaClass()
,Class.getName()
-
getStableName
String getStableName()
- Returns:
- the stable name of the
Bean
used for external identification (e.g. for un/marshalling polymorphicBean
s from/to JSON or XML as well as to store type information in databases). Should be short like thesimple name
and unique (at least for a single application) like thequalified name
. This name should be stable so do not change it after it has been used externally. The stable name defaults tosimple name
for simplicity but may not satisfy stability. To pick a custom external name you ideally choose a short and stable namespace prefix followed by a stablesimple name
without any (technical) that might change (avoid suffixes likeImpl
orTo
). E.g. "mmm.Address
" for anAddress
Bean
of this project (net.sf.mmm
).
-
isVirtual
boolean isVirtual()
- Returns:
true
if thisBeanType
belongs to aVirtualBean
meaning that it may represent a class or interface that does not exist as JavaClass
,false
otherwise.- See Also:
BeanClass
,VirtualBean
-
-