org.cdmckay.coffeedom
Class DefaultCoffeeDOMFactory

java.lang.Object
  extended by org.cdmckay.coffeedom.DefaultCoffeeDOMFactory
All Implemented Interfaces:
CoffeeDOMFactory

public class DefaultCoffeeDOMFactory
extends Object
implements CoffeeDOMFactory

Creates the standard top-level CoffeeDOM classes (Element, Document, Comment, etc). A subclass of this factory might construct custom classes.

Author:
Ken Rune Holland, Phil Nelson, Bradley S. Huffman

Constructor Summary
DefaultCoffeeDOMFactory()
           
 
Method Summary
 void addContent(Parent parent, Content child)
           
 void addNamespaceDeclaration(Element parent, Namespace additional)
           
 Attribute attribute(String name, String value)
          This will create a new Attribute with the specified (local) name and value, and does not place the attribute in a Namespace.
 Attribute attribute(String name, String value, Attribute.Type type)
          This will create a new Attribute with the specified (local) name, value and type, and does not place the attribute in a Namespace.
 Attribute attribute(String name, String value, Attribute.Type type, Namespace namespace)
          This will create a new Attribute with the specified (local) name, value, and type, and in the provided Namespace.
 Attribute attribute(String name, String value, Namespace namespace)
           This will create a new Attribute with the specified (local) name and value, and in the provided Namespace.
 CDATA cdata(String text)
          This creates the CDATA with the supplied text.
 Comment comment(String text)
          This creates the comment with the supplied text.
 DocType docType(String elementName)
          This will create the DocType with the specified element name
 DocType docType(String elementName, String systemID)
          This will create the DocType with the specified element name and reference to an external DTD.
 DocType docType(String elementName, String publicID, String systemID)
          This will create the DocType with the specified element name and a reference to an external DTD.
 Document document(Element rootElement)
          This will create a new Document, with the supplied Element as the root element, and no DocType declaration.
 Document document(Element rootElement, DocType docType)
          This will create a new Document, with the supplied Element as the root element and the supplied DocType declaration.
 Document document(Element rootElement, DocType docType, String baseURI)
          This will create a new Document, with the supplied Element as the root element and the supplied DocType declaration.
 Element element(String name)
          This will create an Element in no Namespace.
 Element element(String name, Namespace namespace)
          This will create a new Element with the supplied (local) name, and define the Namespace to be used.
 Element element(String name, String uri)
          This will create a new Element with the supplied (local) name, and specifies the URI of the Namespace the Element should be in, resulting it being unprefixed (in the default namespace).
 Element element(String name, String prefix, String uri)
          This will create a new Element with the supplied (local) name, and specifies the prefix and URI of the Namespace the Element should be in.
 EntityRef entityRef(String name)
          This will create a new EntityRef with the supplied name.
 EntityRef entityRef(String name, String systemID)
          This will create a new EntityRef with the supplied name and system ID.
 EntityRef entityRef(String name, String publicID, String systemID)
          This will create a new EntityRef with the supplied name, public ID, and system ID.
 ProcessingInstruction processingInstruction(String target, Map<String,String> data)
          This will create a new ProcessingInstruction with the specified target and data.
 ProcessingInstruction processingInstruction(String target, String data)
          This will create a new ProcessingInstruction with the specified target and data.
 void setAttribute(Element parent, Attribute a)
           
 Text text(String text)
          This creates the Text with the supplied text.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DefaultCoffeeDOMFactory

public DefaultCoffeeDOMFactory()
Method Detail

attribute

public Attribute attribute(String name,
                           String value,
                           Namespace namespace)
Description copied from interface: CoffeeDOMFactory

This will create a new Attribute with the specified (local) name and value, and in the provided Namespace.

Specified by:
attribute in interface CoffeeDOMFactory
Parameters:
name - name of Attribute.
value - value for new attribute.
namespace - the attribute namespace.
Returns:

attribute

public Attribute attribute(String name,
                           String value,
                           Attribute.Type type,
                           Namespace namespace)
Description copied from interface: CoffeeDOMFactory
This will create a new Attribute with the specified (local) name, value, and type, and in the provided Namespace.

Specified by:
attribute in interface CoffeeDOMFactory
Parameters:
name - name of Attribute.
value - value for new attribute.
type - type for new attribute.
namespace - namespace for new attribute.
Returns:

attribute

public Attribute attribute(String name,
                           String value)
Description copied from interface: CoffeeDOMFactory
This will create a new Attribute with the specified (local) name and value, and does not place the attribute in a Namespace.

Note: This actually explicitly puts the Attribute in the "empty" Namespace (Namespace.NO_NAMESPACE).

Specified by:
attribute in interface CoffeeDOMFactory
Parameters:
name - String name of Attribute.
value - String value for new attribute.
Returns:

attribute

public Attribute attribute(String name,
                           String value,
                           Attribute.Type type)
Description copied from interface: CoffeeDOMFactory
This will create a new Attribute with the specified (local) name, value and type, and does not place the attribute in a Namespace.

Note: This actually explicitly puts the Attribute in the "empty" Namespace (Namespace.NO_NAMESPACE).

Specified by:
attribute in interface CoffeeDOMFactory
Parameters:
name - name of Attribute.
value - value for new attribute.
type - type for new attribute.
Returns:

cdata

public CDATA cdata(String text)
Description copied from interface: CoffeeDOMFactory
This creates the CDATA with the supplied text.

Specified by:
cdata in interface CoffeeDOMFactory
Parameters:
text - String content of CDATA.
Returns:

text

public Text text(String text)
Description copied from interface: CoffeeDOMFactory
This creates the Text with the supplied text.

Specified by:
text in interface CoffeeDOMFactory
Parameters:
text - String content of Text.
Returns:

comment

public Comment comment(String text)
Description copied from interface: CoffeeDOMFactory
This creates the comment with the supplied text.

Specified by:
comment in interface CoffeeDOMFactory
Parameters:
text - String content of comment.
Returns:

docType

public DocType docType(String elementName,
                       String publicID,
                       String systemID)
Description copied from interface: CoffeeDOMFactory
This will create the DocType with the specified element name and a reference to an external DTD.

Specified by:
docType in interface CoffeeDOMFactory
Parameters:
elementName - String name of element being constrained.
publicID - String public ID of referenced DTD
systemID - String system ID of referenced DTD
Returns:

docType

public DocType docType(String elementName,
                       String systemID)
Description copied from interface: CoffeeDOMFactory
This will create the DocType with the specified element name and reference to an external DTD.

Specified by:
docType in interface CoffeeDOMFactory
Parameters:
elementName - String name of element being constrained.
systemID - String system ID of referenced DTD
Returns:

docType

public DocType docType(String elementName)
Description copied from interface: CoffeeDOMFactory
This will create the DocType with the specified element name

Specified by:
docType in interface CoffeeDOMFactory
Parameters:
elementName - String name of element being constrained.
Returns:

document

public Document document(Element rootElement,
                         DocType docType)
Description copied from interface: CoffeeDOMFactory
This will create a new Document, with the supplied Element as the root element and the supplied DocType declaration.

Specified by:
document in interface CoffeeDOMFactory
Parameters:
rootElement - Element for document root.
docType - DocType declaration.
Returns:

document

public Document document(Element rootElement,
                         DocType docType,
                         String baseURI)
Description copied from interface: CoffeeDOMFactory
This will create a new Document, with the supplied Element as the root element and the supplied DocType declaration.

Specified by:
document in interface CoffeeDOMFactory
Parameters:
rootElement - Element for document root.
docType - DocType declaration.
baseURI - the URI from which this doucment was loaded.
Returns:

document

public Document document(Element rootElement)
Description copied from interface: CoffeeDOMFactory
This will create a new Document, with the supplied Element as the root element, and no DocType declaration.

Specified by:
document in interface CoffeeDOMFactory
Parameters:
rootElement - Element for document root
Returns:

element

public Element element(String name,
                       Namespace namespace)
Description copied from interface: CoffeeDOMFactory
This will create a new Element with the supplied (local) name, and define the Namespace to be used.

Specified by:
element in interface CoffeeDOMFactory
Parameters:
name - String name of element.
namespace - Namespace to put element in.
Returns:

element

public Element element(String name)
Description copied from interface: CoffeeDOMFactory
This will create an Element in no Namespace.

Specified by:
element in interface CoffeeDOMFactory
Parameters:
name - String name of element.
Returns:

element

public Element element(String name,
                       String uri)
Description copied from interface: CoffeeDOMFactory
This will create a new Element with the supplied (local) name, and specifies the URI of the Namespace the Element should be in, resulting it being unprefixed (in the default namespace).

Specified by:
element in interface CoffeeDOMFactory
Parameters:
name - String name of element.
uri - String URI for Namespace element should be in.
Returns:

element

public Element element(String name,
                       String prefix,
                       String uri)
Description copied from interface: CoffeeDOMFactory
This will create a new Element with the supplied (local) name, and specifies the prefix and URI of the Namespace the Element should be in.

Specified by:
element in interface CoffeeDOMFactory
Parameters:
name - String name of element.
uri - String URI for Namespace element should be in.

processingInstruction

public ProcessingInstruction processingInstruction(String target,
                                                   Map<String,String> data)
Description copied from interface: CoffeeDOMFactory
This will create a new ProcessingInstruction with the specified target and data.

Specified by:
processingInstruction in interface CoffeeDOMFactory
Parameters:
target - String target of PI.
data - Map data for PI, in name/value pairs
Returns:

processingInstruction

public ProcessingInstruction processingInstruction(String target,
                                                   String data)
Description copied from interface: CoffeeDOMFactory
This will create a new ProcessingInstruction with the specified target and data.

Specified by:
processingInstruction in interface CoffeeDOMFactory
Parameters:
target - String target of PI.
data - String data for PI.
Returns:

entityRef

public EntityRef entityRef(String name)
Description copied from interface: CoffeeDOMFactory
This will create a new EntityRef with the supplied name.

Specified by:
entityRef in interface CoffeeDOMFactory
Parameters:
name - String name of element.
Returns:

entityRef

public EntityRef entityRef(String name,
                           String publicID,
                           String systemID)
Description copied from interface: CoffeeDOMFactory
This will create a new EntityRef with the supplied name, public ID, and system ID.

Specified by:
entityRef in interface CoffeeDOMFactory
Parameters:
name - String name of element.
publicID - String public ID of element.
systemID - String system ID of element.
Returns:

entityRef

public EntityRef entityRef(String name,
                           String systemID)
Description copied from interface: CoffeeDOMFactory
This will create a new EntityRef with the supplied name and system ID.

Specified by:
entityRef in interface CoffeeDOMFactory
Parameters:
name - String name of element.
systemID - String system ID of element.
Returns:

addContent

public void addContent(Parent parent,
                       Content child)
Specified by:
addContent in interface CoffeeDOMFactory

setAttribute

public void setAttribute(Element parent,
                         Attribute a)
Specified by:
setAttribute in interface CoffeeDOMFactory

addNamespaceDeclaration

public void addNamespaceDeclaration(Element parent,
                                    Namespace additional)
Specified by:
addNamespaceDeclaration in interface CoffeeDOMFactory


Copyright © 2011. All Rights Reserved.