ant-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From co...@apache.org
Subject cvs commit: jakarta-ant/src/main/org/apache/tools/ant/util JAXPUtils.java
Date Fri, 17 Jan 2003 10:27:12 GMT
conor       2003/01/17 02:27:12

  Modified:    src/main/org/apache/tools/ant/helper ProjectHelper2.java
               src/main/org/apache/tools/ant/util JAXPUtils.java
  Log:
  Actually enable namespace support in ProjectHelper2
  
  Revision  Changes    Path
  1.13      +1 -1      jakarta-ant/src/main/org/apache/tools/ant/helper/ProjectHelper2.java
  
  Index: ProjectHelper2.java
  ===================================================================
  RCS file: /home/cvs/jakarta-ant/src/main/org/apache/tools/ant/helper/ProjectHelper2.java,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -w -u -r1.12 -r1.13
  --- ProjectHelper2.java	9 Jan 2003 03:39:53 -0000	1.12
  +++ ProjectHelper2.java	17 Jan 2003 10:27:12 -0000	1.13
  @@ -161,7 +161,7 @@
               /**
                * SAX 2 style parser used to parse the given file.
                */
  -            context.parser =JAXPUtils.getXMLReader();
  +            context.parser =JAXPUtils.getNamespaceXMLReader();
   
               String uri = fu.toURI(context.buildFile.getAbsolutePath());
   
  
  
  
  1.5       +49 -7     jakarta-ant/src/main/org/apache/tools/ant/util/JAXPUtils.java
  
  Index: JAXPUtils.java
  ===================================================================
  RCS file: /home/cvs/jakarta-ant/src/main/org/apache/tools/ant/util/JAXPUtils.java,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -w -u -r1.4 -r1.5
  --- JAXPUtils.java	10 Dec 2002 16:38:26 -0000	1.4
  +++ JAXPUtils.java	17 Jan 2003 10:27:12 -0000	1.5
  @@ -1,7 +1,7 @@
   /*
    * The Apache Software License, Version 1.1
    *
  - * Copyright (c) 2002 The Apache Software Foundation.  All rights
  + * Copyright (c) 2002-2003 The Apache Software Foundation.  All rights
    * reserved.
    *
    * Redistribution and use in source and binary forms, with or without
  @@ -91,6 +91,14 @@
       private static SAXParserFactory parserFactory = null;
   
       /**
  +     * Parser Factory to create Namespace aware parsers.
  +     *
  +     * @since Ant 1.6
  +     */
  +    private static SAXParserFactory nsParserFactory = null;
  +
  +
  +    /**
        * Returns the parser factory to use. Only one parser factory is
        * ever created by this method and is then cached for future use.
        *
  @@ -108,6 +116,24 @@
       }
   
       /**
  +     * Returns the parser factory to use to create namespace aware parsers.
  +     *
  +     * @return a SAXParserFactory to use which supports manufacture of
  +     * namespace aware parsers
  +     *
  +     * @since Ant 1.6
  +     */
  +    public synchronized static SAXParserFactory getNSParserFactory()
  +        throws BuildException {
  +
  +        if (nsParserFactory == null) {
  +            nsParserFactory = newParserFactory();
  +            nsParserFactory.setNamespaceAware(true);
  +        }
  +        return nsParserFactory;
  +    }
  +
  +    /**
        * Returns a new  parser factory instance.
        *
        * @since Ant 1.5
  @@ -133,7 +159,7 @@
        */
       public static Parser getParser() throws BuildException {
           try {
  -            return newSAXParser().getParser();
  +            return newSAXParser(getParserFactory()).getParser();
           } catch (SAXException e) {
               throw convertToBuildException(e);
           }
  @@ -149,7 +175,22 @@
        */
       public static XMLReader getXMLReader() throws BuildException {
           try {
  -            return newSAXParser().getXMLReader();
  +            return newSAXParser(getParserFactory()).getXMLReader();
  +        } catch (SAXException e) {
  +            throw convertToBuildException(e);
  +        }
  +    }
  +
  +    /**
  +     * Returns a newly created SAX 2 XMLReader, which is namespace aware
  +     *
  +     * @return a SAX 2 XMLReader.
  +     * @see #getParserFactory
  +     * @since Ant 1.6
  +     */
  +    public static XMLReader getNamespaceXMLReader() throws BuildException {
  +        try {
  +            return newSAXParser(getNSParserFactory()).getXMLReader();
           } catch (SAXException e) {
               throw convertToBuildException(e);
           }
  @@ -174,9 +215,10 @@
        *
        * @since Ant 1.5
        */
  -    private static SAXParser newSAXParser() throws BuildException {
  +    private static SAXParser newSAXParser(SAXParserFactory factory)
  +         throws BuildException {
           try {
  -            return getParserFactory().newSAXParser();
  +            return factory.newSAXParser();
           } catch (ParserConfigurationException e) {
               throw new BuildException("Cannot create parser for the given "
                                        + "configuration: " + e.getMessage(), e);
  
  
  

--
To unsubscribe, e-mail:   <mailto:ant-dev-unsubscribe@jakarta.apache.org>
For additional commands, e-mail: <mailto:ant-dev-help@jakarta.apache.org>


Mime
View raw message