elena       2003/03/24 06:30:22

  Modified:    java/samples/dom DOM3.java
  Log:
  Add a sample implementation of DOMBuilderFilter
  
  Revision  Changes    Path
  1.5       +34 -4     xml-xerces/java/samples/dom/DOM3.java
  
  Index: DOM3.java
  ===================================================================
  RCS file: /home/cvs/xml-xerces/java/samples/dom/DOM3.java,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- DOM3.java 20 Mar 2003 00:39:56 -0000      1.4
  +++ DOM3.java 24 Mar 2003 14:30:22 -0000      1.5
  @@ -61,18 +61,22 @@
   import org.w3c.dom.DOMConfiguration;
   import org.w3c.dom.DOMError;
   import org.w3c.dom.DOMErrorHandler;
  +import org.w3c.dom.Element;
  +import org.w3c.dom.Node;
   import org.w3c.dom.bootstrap.DOMImplementationRegistry;
   import org.w3c.dom.Document;
   import org.w3c.dom.ls.DOMBuilder;
  +import org.w3c.dom.ls.DOMBuilderFilter;
   import org.w3c.dom.ls.DOMImplementationLS;
   import org.w3c.dom.ls.DOMWriter;
  +import org.w3c.dom.traversal.NodeFilter;
   
   /**
    * This sample program illustrates how to use DOM L3 
  - * DOMBuilder, DOMWriter and other DOM L3 functionality
  + * DOMBuilder, DOMBuilderFilter DOMWriter and other DOM L3 functionality
    * to preparse, revalidate and safe document.
    */
  -public class DOM3 implements DOMErrorHandler {
  +public class DOM3 implements DOMErrorHandler, DOMBuilderFilter {
   
       /** Default namespaces support (true). */
       protected static final boolean DEFAULT_NAMESPACES = true;
  @@ -83,7 +87,7 @@
       /** Default Schema validation support (false). */
       protected static final boolean DEFAULT_SCHEMA_VALIDATION = false;
   
  -
  +    static DOMBuilder builder;
       public static void main( String[] argv) {
   
           if (argv.length == 0) {
  @@ -103,12 +107,17 @@
                   (DOMImplementationLS)registry.getDOMImplementation("LS-Load");
   
               // create DOMBuilder
  -            DOMBuilder builder = 
impl.createDOMBuilder(DOMImplementationLS.MODE_SYNCHRONOUS, null);
  +            builder = impl.createDOMBuilder(DOMImplementationLS.MODE_SYNCHRONOUS, 
null);
               
               DOMConfiguration config = builder.getConfig();
   
               // create Error Handler
               DOMErrorHandler errorHandler = new DOM3();
  +            
  +            // create filter
  +            DOMBuilderFilter filter = new DOM3();
  +            
  +            builder.setFilter(filter);
   
               // set error handler
               config.setParameter("error-handler", errorHandler);
  @@ -187,6 +196,27 @@
           return true;
   
       }
  +     /**
  +      * @see org.w3c.dom.ls.DOMBuilderFilter#acceptNode(Node)
  +      */
  +     public short acceptNode(Node enode) {
  +        return NodeFilter.FILTER_ACCEPT;
  +     }
  +
  +     /**
  +      * @see org.w3c.dom.ls.DOMBuilderFilter#getWhatToShow()
  +      */
  +     public int getWhatToShow() {
  +             return NodeFilter.SHOW_ELEMENT;
  +     }
  +
  +     /**
  +      * @see org.w3c.dom.ls.DOMBuilderFilter#startElement(Element)
  +      */
  +     public short startElement(Element elt) {
  +             return DOMBuilderFilter.FILTER_ACCEPT;
  +     }
  +
   }
   
   
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to