Package org.jdom2
Class SlimJDOMFactory
java.lang.Object
org.jdom2.DefaultJDOMFactory
org.jdom2.SlimJDOMFactory
- All Implemented Interfaces:
JDOMFactory
This JDOMFactory instance reduces the amount of memory used by JDOM content.
It does this by reusing String instances instead of using new (but equals())
instances. It uses the
StringBin class to provide a String cache.- Author:
- Rolf Lear
- See Also:
-
StringBin
-
Constructor Summary
ConstructorsConstructorDescriptionSlimJDOMFactory(boolean cachetext) Construct a SlimJDOMFactory which will optionally cache Text/CDATA/Comment/Attribute values. -
Method Summary
Modifier and TypeMethodDescriptionThis will create a newAttributewith the specified (local) name and value, and does not place the attribute in a.NamespaceDeprecated.Deprecated.attribute(String name, String value, AttributeType type) This will create a newAttributewith the specified (local) name, value and type, and does not place the attribute in a.Namespaceattribute(String name, String value, AttributeType type, Namespace namespace) This will create a newAttributewith the specified (local) name, value, and type, and in the provided.NamespaceThis will create a newAttributewith the specified (local) name and value, and in the provided.NamespaceThis creates the CDATA with the supplied text.voidReset any Cached String instance data from this SlimJDOMFaxctory cache.This creates the comment with the supplied text.This will create theDocTypewith the specified element nameThis will create theDocTypewith the specified element name and reference to an external DTD.This will create theDocTypewith the specified element name and a reference to an external DTD.This will create anElementin no.NamespaceThis will create a newElementwith the supplied (local) name, and specifies the URI of thetheNamespaceElementshould be in, resulting it being unprefixed (in the default namespace).This will create a newElementwith the supplied (local) name, and specifies the prefix and URI of thetheNamespaceElementshould be in.This will create a newElementwith the supplied (local) name, and define theto be used.NamespaceThis will create a newEntityRefwith the supplied name.This will create a newEntityRefwith the supplied name and system ID.This will create a newEntityRefwith the supplied name, public ID, and system ID.processingInstruction(int line, int col, String target) This will create a newProcessingInstructionwith the specified target and no data.processingInstruction(int line, int col, String target, String data) This will create a newProcessingInstructionwith the specified target and data.processingInstruction(int line, int col, String target, Map<String, String> data) This will create a newProcessingInstructionwith the specified target and data.This creates the Text with the supplied text.Methods inherited from class org.jdom2.DefaultJDOMFactory
addContent, addNamespaceDeclaration, cdata, comment, docType, docType, docType, document, document, document, element, element, element, element, entityRef, entityRef, entityRef, processingInstruction, processingInstruction, processingInstruction, setAttribute, setRoot, text
-
Constructor Details
-
SlimJDOMFactory
public SlimJDOMFactory() -
SlimJDOMFactory
public SlimJDOMFactory(boolean cachetext) Construct a SlimJDOMFactory which will optionally cache Text/CDATA/Comment/Attribute values. Caching these values is recommended because often XML documents have many instances of the same Text values (especially whitespace sequences...)- Parameters:
cachetext- should be true if you want the content of CDATA, Text, Comment and Attribute values cached as well.
-
-
Method Details
-
clearCache
public void clearCache()Reset any Cached String instance data from this SlimJDOMFaxctory cache. -
attribute
Description copied from interface:JDOMFactoryThis will create a new
Attributewith the specified (local) name and value, and in the provided.Namespace- Specified by:
attributein interfaceJDOMFactory- Overrides:
attributein classDefaultJDOMFactory- Parameters:
name-Stringname ofAttribute.value-Stringvalue for new attribute.namespace-Namespaceof the new Attribute- Returns:
- the created Attribute instance
-
attribute
Deprecated.Description copied from interface:JDOMFactoryThis will create a newAttributewith the specified (local) name, value, and type, and in the provided.Namespace- Specified by:
attributein interfaceJDOMFactory- Overrides:
attributein classDefaultJDOMFactory- Parameters:
name-Stringname ofAttribute.value-Stringvalue for new attribute.type-inttype for new attribute.namespace-Namespacenamespace for new attribute.- Returns:
- the created Attribute instance
-
attribute
Description copied from interface:JDOMFactoryThis will create a newAttributewith the specified (local) name, value, and type, and in the provided.Namespace- Specified by:
attributein interfaceJDOMFactory- Overrides:
attributein classDefaultJDOMFactory- Parameters:
name-Stringname ofAttribute.value-Stringvalue for new attribute.type-AttributeTypetype for new attribute.namespace-Namespacenamespace for new attribute.- Returns:
- the created Attribute instance
-
attribute
Description copied from interface:JDOMFactoryThis will create a newAttributewith the specified (local) name and value, and does not place the attribute in a.NamespaceNote: This actually explicitly puts the
Attributein the "empty"Namespace().Namespace.NO_NAMESPACE- Specified by:
attributein interfaceJDOMFactory- Overrides:
attributein classDefaultJDOMFactory- Parameters:
name-Stringname ofAttribute.value-Stringvalue for new attribute.- Returns:
- the created Attribute instance
-
attribute
Deprecated.Description copied from interface:JDOMFactoryThis will create a newAttributewith the specified (local) name, value and type, and does not place the attribute in a.NamespaceNote: This actually explicitly puts the
Attributein the "empty"Namespace().Namespace.NO_NAMESPACE- Specified by:
attributein interfaceJDOMFactory- Overrides:
attributein classDefaultJDOMFactory- Parameters:
name-Stringname ofAttribute.value-Stringvalue for new attribute.type-inttype for new attribute.- Returns:
- the created Attribute instance
-
attribute
Description copied from interface:JDOMFactoryThis will create a newAttributewith the specified (local) name, value and type, and does not place the attribute in a.NamespaceNote: This actually explicitly puts the
Attributein the "empty"Namespace().Namespace.NO_NAMESPACE- Specified by:
attributein interfaceJDOMFactory- Overrides:
attributein classDefaultJDOMFactory- Parameters:
name-Stringname ofAttribute.value-Stringvalue for new attribute.type-AttributeTypetype for new attribute.- Returns:
- the created Attribute instance
-
cdata
Description copied from interface:JDOMFactoryThis creates the CDATA with the supplied text.- Specified by:
cdatain interfaceJDOMFactory- Overrides:
cdatain classDefaultJDOMFactory- Parameters:
line- The line on which this content begins.col- The column on the line at which this content begins.str-Stringcontent of CDATA.- Returns:
- the created CDATA instance
-
text
Description copied from interface:JDOMFactoryThis creates the Text with the supplied text.- Specified by:
textin interfaceJDOMFactory- Overrides:
textin classDefaultJDOMFactory- Parameters:
line- The line on which this content begins.col- The column on the line at which this content begins.str-Stringcontent of Text.- Returns:
- the created Text instance
-
comment
Description copied from interface:JDOMFactoryThis creates the comment with the supplied text.- Specified by:
commentin interfaceJDOMFactory- Overrides:
commentin classDefaultJDOMFactory- Parameters:
line- The line on which this content begins.col- The column on the line at which this content begins.text-Stringcontent of comment.- Returns:
- the created Comment instance
-
docType
Description copied from interface:JDOMFactoryThis will create theDocTypewith the specified element name and a reference to an external DTD.- Specified by:
docTypein interfaceJDOMFactory- Overrides:
docTypein classDefaultJDOMFactory- Parameters:
line- The line on which this content begins.col- The column on the line at which this content begins.elementName-Stringname of element being constrained.publicID-Stringpublic ID of referenced DTDsystemID-Stringsystem ID of referenced DTD- Returns:
- the created DocType instance
-
docType
Description copied from interface:JDOMFactoryThis will create theDocTypewith the specified element name and reference to an external DTD.- Specified by:
docTypein interfaceJDOMFactory- Overrides:
docTypein classDefaultJDOMFactory- Parameters:
line- The line on which this content begins.col- The column on the line at which this content begins.elementName-Stringname of element being constrained.systemID-Stringsystem ID of referenced DTD- Returns:
- the created DocType instance
-
docType
Description copied from interface:JDOMFactoryThis will create theDocTypewith the specified element name- Specified by:
docTypein interfaceJDOMFactory- Overrides:
docTypein classDefaultJDOMFactory- Parameters:
line- The line on which this content begins.col- The column on the line at which this content begins.elementName-Stringname of element being constrained.- Returns:
- the created DocType instance
-
element
Description copied from interface:JDOMFactoryThis will create a newElementwith the supplied (local) name, and define theto be used.Namespace- Specified by:
elementin interfaceJDOMFactory- Overrides:
elementin classDefaultJDOMFactory- Parameters:
line- The line on which this content begins.col- The column on the line at which this content begins.name-Stringname of element.namespace-Namespaceto put element in.- Returns:
- the created Element instance
-
element
Description copied from interface:JDOMFactoryThis will create anElementin no.Namespace- Specified by:
elementin interfaceJDOMFactory- Overrides:
elementin classDefaultJDOMFactory- Parameters:
line- The line on which this content begins.col- The column on the line at which this content begins.name-Stringname of element.- Returns:
- the created Element instance
-
element
Description copied from interface:JDOMFactoryThis will create a newElementwith the supplied (local) name, and specifies the URI of thetheNamespaceElementshould be in, resulting it being unprefixed (in the default namespace).- Specified by:
elementin interfaceJDOMFactory- Overrides:
elementin classDefaultJDOMFactory- Parameters:
line- The line on which this content begins.col- The column on the line at which this content begins.name-Stringname of element.uri-StringURI forNamespaceelement should be in.- Returns:
- the created Element instance
-
element
Description copied from interface:JDOMFactoryThis will create a newElementwith the supplied (local) name, and specifies the prefix and URI of thetheNamespaceElementshould be in.- Specified by:
elementin interfaceJDOMFactory- Overrides:
elementin classDefaultJDOMFactory- Parameters:
line- The line on which this content begins.col- The column on the line at which this content begins.name-Stringname of element.prefix- the NamespacePrefic to use for this Elementuri-StringURI forNamespaceelement should be in.- Returns:
- the created Element instance
-
processingInstruction
public ProcessingInstruction processingInstruction(int line, int col, String target, Map<String, String> data) Description copied from interface:JDOMFactoryThis will create a newProcessingInstructionwith the specified target and data.- Specified by:
processingInstructionin interfaceJDOMFactory- Overrides:
processingInstructionin classDefaultJDOMFactory- Parameters:
line- The line on which this content begins.col- The column on the line at which this content begins.target-Stringtarget of PI.data-Mapdata for PI, in name/value pairs- Returns:
- the created ProcessingInstruction instance
-
processingInstruction
Description copied from interface:JDOMFactoryThis will create a newProcessingInstructionwith the specified target and data.- Specified by:
processingInstructionin interfaceJDOMFactory- Overrides:
processingInstructionin classDefaultJDOMFactory- Parameters:
line- The line on which this content begins.col- The column on the line at which this content begins.target-Stringtarget of PI.data-Stringdata for PI.- Returns:
- the created ProcessingInstruction instance
-
processingInstruction
Description copied from interface:JDOMFactoryThis will create a newProcessingInstructionwith the specified target and no data.- Specified by:
processingInstructionin interfaceJDOMFactory- Overrides:
processingInstructionin classDefaultJDOMFactory- Parameters:
line- The line on which this content begins.col- The column on the line at which this content begins.target-Stringtarget of PI.- Returns:
- the created ProcessingInstruction instance
-
entityRef
Description copied from interface:JDOMFactoryThis will create a newEntityRefwith the supplied name.- Specified by:
entityRefin interfaceJDOMFactory- Overrides:
entityRefin classDefaultJDOMFactory- Parameters:
line- The line on which this content begins.col- The column on the line at which this content begins.name-Stringname of element.- Returns:
- the created EntityRef instance
-
entityRef
Description copied from interface:JDOMFactoryThis will create a newEntityRefwith the supplied name, public ID, and system ID.- Specified by:
entityRefin interfaceJDOMFactory- Overrides:
entityRefin classDefaultJDOMFactory- Parameters:
line- The line on which this content begins.col- The column on the line at which this content begins.name-Stringname of element.publicID-Stringpublic ID of element.systemID-Stringsystem ID of element.- Returns:
- the created EntityRef instance
-
entityRef
Description copied from interface:JDOMFactoryThis will create a newEntityRefwith the supplied name and system ID.- Specified by:
entityRefin interfaceJDOMFactory- Overrides:
entityRefin classDefaultJDOMFactory- Parameters:
line- The line on which this content begins.col- The column on the line at which this content begins.name-Stringname of element.systemID-Stringsystem ID of element.- Returns:
- the created EntityRef instance
-