Modifier and Type | Field and Description |
---|---|
protected static Class[] |
ADAPTER_INIT_PARAMS
Parameters for finding the default adapter constructor.
|
protected PropertyAdapter[] |
m_aAdapter
The property adapters for the XML bean.
|
protected Class |
m_clzBean
The class of the specific XML bean.
|
protected boolean |
m_fDeepClone
Specifies whether the XML bean requires a deep clone.
|
protected int |
m_nBeanId
Serialization ID for the XmlBean class.
|
protected String |
m_sName
The XML element name for the XML bean.
|
protected String |
m_sNmsPrefix
Namespace prefix.
|
protected String |
m_sNmsUri
Namespace URI.
|
protected static Class[] |
NOPARAMS
Parameters for finding no-parameter methods.
|
protected static Map |
s_mapClassAdapters
Map from the class of a property type to the class of the adapter that handles the type.
|
protected static Map |
s_mapClassNames
Map from type name / short class name to actual class instance.
|
protected static Map |
s_mapPrimitiveNames
Map from class of an intrinsic type to its JVM signature.
|
Modifier | Constructor and Description |
---|---|
protected |
BeanInfo(Class clzBean, XmlElement xml)
Construct a BeanInfo.
|
Modifier and Type | Method and Description |
---|---|
PropertyAdapter |
findAdapter(String sName)
Find a property adapter instance for the specified property.
|
PropertyAdapter[] |
getAdapters()
Obtain the PropertyAdapter objects for the properties of this XML bean.
|
int |
getBeanId()
Get the serialization ID for the specific XML bean implementation.
|
String |
getName()
Determine the element name that the XML bean will use when serializing to XML.
|
String |
getNamespacePrefix()
Obtain the default namespace prefix for this XML bean.
|
String |
getNamespaceUri()
Obtain the namespace URI for this XML bean.
|
Class |
getType()
Get the class of the specific XML bean implementation.
|
protected PropertyAdapter |
makeAdapter(Class clz, String sName, String sXmlName, XmlElement xml)
Generate a property adapter instance that will work on this bean class and will adapt for a property of the specified class and of the specified name.
|
boolean |
requiresDeepClone()
Determine if a clone of the XmlBean should be a deep clone, which typically means that at least one property value is mutable reference type.
|
Class |
resolveClass(String sClass)
Resolve a Class name into a Class object.
|
void |
setNamespacePrefix(String sPrefix)
Set the default Namespace prefix for this XML bean.
|
String |
toString()
Debugging support.
|
protected Class m_clzBean
protected String m_sName
protected PropertyAdapter[] m_aAdapter
protected boolean m_fDeepClone
protected String m_sNmsUri
protected String m_sNmsPrefix
protected int m_nBeanId
protected static final Class[] NOPARAMS
protected static Class[] ADAPTER_INIT_PARAMS
protected static final Map s_mapClassNames
protected static final Map s_mapClassAdapters
protected static final Map s_mapPrimitiveNames
protected BeanInfo(Class clzBean, XmlElement xml)
clzBean
- the class of the beanxml
- the xml descriptorpublic Class getType()
public int getBeanId()
public String getName()
public String getNamespaceUri()
public String getNamespacePrefix()
public void setNamespacePrefix(String sPrefix)
sPrefix
- the default namespace prefixpublic PropertyAdapter[] getAdapters()
public boolean requiresDeepClone()
protected PropertyAdapter makeAdapter(Class clz, String sName, String sXmlName, XmlElement xml)
clz
- the class of the propertysName
- the property namesXmlName
- the corresponding element namexml
- additional XML informationpublic PropertyAdapter findAdapter(String sName)
sName
- the property namepublic Class resolveClass(String sClass)
sClass
- the Class name