19 June 2003

Appendix B: Java Language Binding

This appendix contains the complete Java [Java] bindings for the Level 3 Document Object Model Load and Save.

The Java files are also available as http://www.w3.org/TR/2003/WD-DOM-Level-3-LS-20030619/java-binding.zip

org/w3c/dom/ls/DOMImplementationLS.java:

package org.w3c.dom.ls;

import org.w3c.dom.DOMException;

public interface DOMImplementationLS {
    // DOMImplementationLSMode
    public static final short MODE_SYNCHRONOUS          = 1;
    public static final short MODE_ASYNCHRONOUS         = 2;

    public DOMParser createDOMParser(short mode, 
                                     String schemaType)
                                     throws DOMException;

    public DOMSerializer createDOMSerializer();

    public DOMInput createDOMInput();

}

org/w3c/dom/ls/DOMParser.java:

package org.w3c.dom.ls;

import org.w3c.dom.Document;
import org.w3c.dom.DOMConfiguration;
import org.w3c.dom.Node;
import org.w3c.dom.DOMException;

public interface DOMParser {
    public DOMConfiguration getConfig();

    public DOMParserFilter getFilter();
    public void setFilter(DOMParserFilter filter);

    public boolean getAsync();

    public boolean getBusy();

    public Document parse(DOMInput is)
                          throws DOMException;

    public Document parseURI(String uri)
                             throws DOMException;

    // ACTION_TYPES
    public static final short ACTION_APPEND_AS_CHILDREN = 1;
    public static final short ACTION_REPLACE_CHILDREN   = 2;
    public static final short ACTION_INSERT_BEFORE      = 3;
    public static final short ACTION_INSERT_AFTER       = 4;
    public static final short ACTION_REPLACE            = 5;

    public Node parseWithContext(DOMInput input, 
                                 Node context, 
                                 short action)
                                 throws DOMException;

    public void abort();

}

org/w3c/dom/ls/DOMInput.java:

package org.w3c.dom.ls;

import org.w3c.dom.DOMInputStream;
import org.w3c.dom.DOMReader;

public interface DOMInput {
    public DOMReader getCharacterStream();
    public void setCharacterStream(DOMReader characterStream);

    public DOMInputStream getByteStream();
    public void setByteStream(DOMInputStream byteStream);

    public String getStringData();
    public void setStringData(String stringData);

    public String getSystemId();
    public void setSystemId(String systemId);

    public String getEncoding();
    public void setEncoding(String encoding);

    public String getPublicId();
    public void setPublicId(String publicId);

    public String getBaseURI();
    public void setBaseURI(String baseURI);

    public boolean getCertified();
    public void setCertified(boolean certified);

}

org/w3c/dom/ls/DOMResourceResolver.java:

package org.w3c.dom.ls;

public interface DOMResourceResolver {
    public DOMInput resolveResource(String publicId, 
                                    String systemId, 
                                    String baseURI);

}

org/w3c/dom/ls/DOMParserFilter.java:

package org.w3c.dom.ls;

import org.w3c.dom.Element;
import org.w3c.dom.Node;

public interface DOMParserFilter {
    // Constants returned by startElement and acceptNode
    public static final short FILTER_ACCEPT             = 1;
    public static final short FILTER_REJECT             = 2;
    public static final short FILTER_SKIP               = 3;
    public static final short FILTER_INTERRUPT          = 4;

    public short startElement(Element element);

    public short acceptNode(Node node);

    public int getWhatToShow();

}

org/w3c/dom/ls/LSProgressEvent.java:

package org.w3c.dom.ls;

import org.w3c.dom.events.Event;

public interface LSProgressEvent extends Event {
    public DOMInput getInput();

    public int getPosition();

    public int getTotalSize();

}

org/w3c/dom/ls/LSLoadEvent.java:

package org.w3c.dom.ls;

import org.w3c.dom.Document;
import org.w3c.dom.events.Event;

public interface LSLoadEvent extends Event {
    public Document getNewDocument();

    public DOMInput getInput();

}

org/w3c/dom/ls/DOMSerializer.java:

package org.w3c.dom.ls;

import org.w3c.dom.DOMConfiguration;
import org.w3c.dom.Node;
import org.w3c.dom.DOMException;

public interface DOMSerializer {
    public DOMConfiguration getConfig();

    public String getNewLine();
    public void setNewLine(String newLine);

    public DOMSerializerFilter getFilter();
    public void setFilter(DOMSerializerFilter filter);

    public boolean write(Node node, 
                         DOMOutput destination);

    public boolean writeURI(Node node, 
                            String URI);

    public String writeToString(Node node)
                                throws DOMException;

}

org/w3c/dom/ls/DOMOutput.java:

package org.w3c.dom.ls;

import org.w3c.dom.DOMWriter;
import org.w3c.dom.DOMOutputStream;

public interface DOMOutput {
    public DOMWriter getCharacterStream();
    public void setCharacterStream(DOMWriter characterStream);

    public DOMOutputStream getByteStream();
    public void setByteStream(DOMOutputStream byteStream);

    public String getSystemId();
    public void setSystemId(String systemId);

    public String getEncoding();
    public void setEncoding(String encoding);

}

org/w3c/dom/ls/DOMSerializerFilter.java:

package org.w3c.dom.ls;

import org.w3c.dom.traversal.NodeFilter;

public interface DOMSerializerFilter extends NodeFilter {
    public int getWhatToShow();

}

org/w3c/dom/ls/DocumentLS.java:

package org.w3c.dom.ls;

import org.w3c.dom.Node;
import org.w3c.dom.DOMException;

public interface DocumentLS {
    public boolean getAsync();
    public void setAsync(boolean async)
                                throws DOMException;

    public void abort();

    public boolean load(String uri);

    public boolean loadXML(String source);

    public String saveXML(Node node)
                          throws DOMException;

}

org/w3c/dom/ls/ElementLS.java:

package org.w3c.dom.ls;

public interface ElementLS {
    public String getMarkupContent();
    public void setMarkupContent(String markupContent);

}