public abstract class StringConversion
extends java.lang.Object
String
value. This uses an inheritance approach,
where each serialization definition is initialized based on the handling
set for the containing definition of the same (or parent class) type.Modifier and Type | Field and Description |
---|---|
protected static java.lang.String |
COMPARE_OBJECTS_METHOD |
protected static java.lang.String |
COMPARE_OBJECTS_SIGNATURE |
protected static java.lang.String[] |
DESERIALIZER_SIGNATURES |
protected ClassItem |
m_converter
Whitespace conversion method information.
|
protected java.lang.Object |
m_default
Default value used for this type (wrapper for primitives, otherwise
String or null ). |
protected ClassItem |
m_deserializer
Deserializer method information.
|
protected ClassItem |
m_serializer
Serializer method information.
|
protected java.lang.String |
m_typeName
Fully qualified name of class handled by conversion.
|
protected java.lang.String |
m_typeSignature
Signature of class handled by conversion.
|
protected static java.lang.String |
MARSHAL_ATTRIBUTE |
protected static java.lang.String |
MARSHAL_ELEMENT |
static int |
MARSHAL_NAME_VALUES |
protected static java.lang.String |
MARSHAL_SIGNATURE |
protected static java.lang.String |
UNMARSHAL_OPT_ATTRIBUTE |
protected static java.lang.String |
UNMARSHAL_OPT_ELEMENT |
protected static java.lang.String |
UNMARSHAL_OPT_SIGNATURE |
protected static java.lang.String |
UNMARSHAL_REQ_ATTRIBUTE |
protected static java.lang.String |
UNMARSHAL_REQ_ELEMENT |
protected static java.lang.String |
UNMARSHAL_REQ_SIGNATURE |
protected static java.lang.String[] |
WHITESPACE_CONVERT_SIGNATURES |
Modifier | Constructor and Description |
---|---|
(package private) |
StringConversion(java.lang.Object dflt,
java.lang.String ser,
java.lang.String conv,
java.lang.String deser,
java.lang.String type)
Constructor.
|
private |
StringConversion(java.lang.String type)
Constructor.
|
protected |
StringConversion(java.lang.String type,
StringConversion inherit)
Constructor.
|
Modifier and Type | Method and Description |
---|---|
protected abstract java.lang.Object |
convertDefault(java.lang.String text)
Convert text representation into default value object.
|
abstract StringConversion |
derive(java.lang.String type,
java.lang.String ser,
java.lang.String conv,
java.lang.String dser,
java.lang.String dflt)
Derive from existing formatting information.
|
abstract void |
genFromText(ContextMethodBuilder mb)
Generate code to convert
String representation. |
abstract void |
genParseOptional(boolean attr,
ContextMethodBuilder mb)
Generate code to parse and convert optional attribute or element.
|
abstract void |
genParseRequired(boolean attr,
ContextMethodBuilder mb)
Generate code to parse and convert required attribute or element.
|
void |
genPopValues(int count,
ContextMethodBuilder mb)
Generate code to pop values from stack.
|
protected abstract BranchWrapper |
genToOptionalText(java.lang.String type,
ContextMethodBuilder mb,
int extra)
Generate code to check if an optional value is not equal to the default.
|
void |
genToText(java.lang.String type,
ContextMethodBuilder mb)
Generate code to convert value to a
String . |
void |
genWriteOptional(boolean attr,
java.lang.String type,
ContextMethodBuilder mb)
Generate code to convert and write optional value to generated document.
|
void |
genWriteRequired(boolean attr,
java.lang.String type,
ContextMethodBuilder mb)
Generate code to convert and write required value to generated document.
|
void |
genWriteText(boolean attr,
ContextMethodBuilder mb)
Generate code to write
String value to generated document. |
java.lang.String |
getTypeName()
Get name of type handled by this conversion.
|
abstract boolean |
isPrimitive()
Check if the type handled by this conversion is of a primitive type.
|
protected void |
setDeserializer(java.lang.String deser)
Set deserializer for conversion.
|
protected void |
setSerializer(java.lang.String ser,
boolean variant)
Set serializer for conversion.
|
protected void |
setWhitespaceConverter(java.lang.String wsconv)
Set whitespace converter for conversion.
|
protected static final java.lang.String UNMARSHAL_OPT_ATTRIBUTE
protected static final java.lang.String UNMARSHAL_OPT_ELEMENT
protected static final java.lang.String UNMARSHAL_OPT_SIGNATURE
protected static final java.lang.String UNMARSHAL_REQ_ATTRIBUTE
protected static final java.lang.String UNMARSHAL_REQ_ELEMENT
protected static final java.lang.String UNMARSHAL_REQ_SIGNATURE
protected static final java.lang.String MARSHAL_ATTRIBUTE
protected static final java.lang.String MARSHAL_ELEMENT
protected static final java.lang.String MARSHAL_SIGNATURE
protected static final java.lang.String COMPARE_OBJECTS_METHOD
protected static final java.lang.String COMPARE_OBJECTS_SIGNATURE
protected static final java.lang.String[] WHITESPACE_CONVERT_SIGNATURES
protected static final java.lang.String[] DESERIALIZER_SIGNATURES
public static final int MARSHAL_NAME_VALUES
protected java.lang.Object m_default
String
or null
).protected ClassItem m_serializer
protected ClassItem m_converter
protected ClassItem m_deserializer
protected java.lang.String m_typeName
protected java.lang.String m_typeSignature
private StringConversion(java.lang.String type)
type
- fully qualified name of class handled by conversionprotected StringConversion(java.lang.String type, StringConversion inherit)
type
- fully qualified name of class handled by conversioninherit
- conversion information inherited by this conversionStringConversion(java.lang.Object dflt, java.lang.String ser, java.lang.String conv, java.lang.String deser, java.lang.String type)
dflt
- default value object (wrapped value for primitive types,
otherwise String
)ser
- fully qualified name of serialization method
(null
if none)conv
- fully qualified name of whitespace conversion method
(null
if none)deser
- fully qualified name of deserialization method
(null
if none)type
- fully qualified name of class handled by conversionpublic java.lang.String getTypeName()
public abstract void genFromText(ContextMethodBuilder mb) throws JiBXException
String
representation. The
code generated by this method assumes that the String
value has already been pushed on the stack. It consumes this and
leaves the converted value on the stack.mb
- method builderJiBXException
- if error in configurationpublic abstract void genParseOptional(boolean attr, ContextMethodBuilder mb) throws JiBXException
attr
- item is an attribute (vs element) flagmb
- method builderJiBXException
- if error in configurationpublic abstract void genParseRequired(boolean attr, ContextMethodBuilder mb) throws JiBXException
attr
- item is an attribute (vs element) flagmb
- method builderJiBXException
- if error in configurationpublic void genWriteText(boolean attr, ContextMethodBuilder mb)
String
value to generated document.
The code generated by this method assumes that the marshalling context,
the name information, and the actual value to be converted have already
been pushed on the stack. It consumes these, leaving the marshalling
context on the stack.attr
- item is an attribute (vs element) flagmb
- method builderpublic void genPopValues(int count, ContextMethodBuilder mb)
count
- number of values to be poppedmb
- method builderprotected abstract BranchWrapper genToOptionalText(java.lang.String type, ContextMethodBuilder mb, int extra) throws JiBXException
type
- fully qualified class name for value on stackmb
- method builderextra
- count of extra words to be popped from stack if missingJiBXException
- if error in configurationpublic void genToText(java.lang.String type, ContextMethodBuilder mb) throws JiBXException
String
. The code
generated by this method assumes that the actual value to be converted
has already been pushed on the stack. It consumes this, leaving the
converted text reference on the stack.type
- fully qualified class name for value on stackmb
- method builderJiBXException
- if error in configurationpublic void genWriteOptional(boolean attr, java.lang.String type, ContextMethodBuilder mb) throws JiBXException
attr
- item is an attribute (vs element) flagtype
- fully qualified class name for value on stackmb
- method builderJiBXException
- if error in configurationpublic void genWriteRequired(boolean attr, java.lang.String type, ContextMethodBuilder mb) throws JiBXException
attr
- item is an attribute (vs element) flagtype
- fully qualified class name for value on stackmb
- method builderJiBXException
- if error in configurationpublic abstract boolean isPrimitive()
true
if a primitive type, false
if an
object typeprotected void setSerializer(java.lang.String ser, boolean variant) throws JiBXException
String
result.ser
- fully qualified class and method name of serializervariant
- allow variants of the specified typeJiBXException
- if serializer not found or not usableprotected void setWhitespaceConverter(java.lang.String wsconv) throws JiBXException
String
, and to return the same.wsconv
- fully qualified class and method name of whitespace
converterJiBXException
- if whitespace converter not found or not usableprotected void setDeserializer(java.lang.String deser) throws JiBXException
String
, and to return a value of the handled type or a
subtype of that type.deser
- fully qualified class and method name of deserializerJiBXException
- if deserializer not found or not usableprotected abstract java.lang.Object convertDefault(java.lang.String text) throws JiBXException
text
- value representation to be convertedJiBXException
- on conversion errorpublic abstract StringConversion derive(java.lang.String type, java.lang.String ser, java.lang.String conv, java.lang.String dser, java.lang.String dflt) throws JiBXException
type
- fully qualified name of class handled by conversion
(null
if inherited)ser
- fully qualified name of serialization method
(null
if inherited)conv
- fully qualified name of whitespace conversion method
(null
if inherited)dser
- fully qualified name of deserialization method
(null
if inherited)dflt
- default value text (null
if inherited)JiBXException
- if error in configuration information