Package org.simpleframework.xml.stream
Class Builder
java.lang.Object
org.simpleframework.xml.stream.Builder
- All Implemented Interfaces:
Style
The
Builder
class is used to represent an XML style
that can be applied to a serialized object. A style can be used to
modify the element and attribute names for the generated document.
Styles can be used to generate hyphenated or camel case XML.
<example-element> <child-element example-attribute='example'> <inner-element>example</inner-element> </child-element> </example-element>Above the hyphenated XML elements and attributes can be generated from a style implementation. Styles enable the same objects to be serialized in different ways, generating different styles of XML without having to modify the class schema for that object.
-
Field Summary
FieldsModifier and TypeFieldDescriptionThis is the cache for the constructed attribute values.This is the cache for the constructed element values.private final Style
This is the style object used to create the values used. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiongetAttribute
(String name) This is used to generate the XML attribute representation of the specified name.getElement
(String name) This is used to generate the XML element representation of the specified name.void
setAttribute
(String name, String value) This is used to set the attribute values within this builder.void
setElement
(String name, String value) This is used to set the element values within this builder.
-
Field Details
-
attributes
This is the cache for the constructed attribute values. -
elements
This is the cache for the constructed element values. -
style
This is the style object used to create the values used.
-
-
Constructor Details
-
Builder
Constructor for theBuilder
object. This will cache values constructed from the inner style object, which allows the results from the style to retrieved quickly the second time.- Parameters:
style
- this is the internal style object to be used
-
-
Method Details
-
getAttribute
This is used to generate the XML attribute representation of the specified name. Attribute names should ensure to keep the uniqueness of the name such that two different names will be styled in to two different strings.- Specified by:
getAttribute
in interfaceStyle
- Parameters:
name
- this is the attribute name that is to be styled- Returns:
- this returns the styled name of the XML attribute
-
getElement
This is used to generate the XML element representation of the specified name. Element names should ensure to keep the uniqueness of the name such that two different names will be styled in to two different strings.- Specified by:
getElement
in interfaceStyle
- Parameters:
name
- this is the element name that is to be styled- Returns:
- this returns the styled name of the XML element
-
setAttribute
This is used to set the attribute values within this builder. Overriding the attribute values ensures that the default algorithm does not need to determine each of the values. It allows special behaviour that the user may require for XML.- Parameters:
name
- the name of the XML attribute to be overriddenvalue
- the value that is to be used for that attribute
-
setElement
This is used to set the element values within this builder. Overriding the element values ensures that the default algorithm does not need to determine each of the values. It allows special behaviour that the user may require for XML.- Parameters:
name
- the name of the XML element to be overriddenvalue
- the value that is to be used for that element
-