You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xalan.apache.org by mm...@apache.org on 2001/06/12 19:07:55 UTC

cvs commit: xml-xalan/java/src/org/apache/xalan/transformer TransformerHandlerImpl.java TransformerImpl.java

mmidy       01/06/12 10:07:55

  Modified:    java/src/org/apache/xalan/processor Tag: DTM_EXP
                        TransformerFactoryImpl.java
               java/src/org/apache/xalan/transformer Tag: DTM_EXP
                        TransformerHandlerImpl.java TransformerImpl.java
  Log:
  Make use of the thread pool for transform threads and use a feature to set whether or not to do an incremental transform
  
  Revision  Changes    Path
  No                   revision
  
  
  No                   revision
  
  
  1.28.2.3  +14 -2     xml-xalan/java/src/org/apache/xalan/processor/TransformerFactoryImpl.java
  
  Index: TransformerFactoryImpl.java
  ===================================================================
  RCS file: /home/cvs/xml-xalan/java/src/org/apache/xalan/processor/TransformerFactoryImpl.java,v
  retrieving revision 1.28.2.2
  retrieving revision 1.28.2.3
  diff -u -r1.28.2.2 -r1.28.2.3
  --- TransformerFactoryImpl.java	2001/05/27 03:05:12	1.28.2.2
  +++ TransformerFactoryImpl.java	2001/06/12 17:07:47	1.28.2.3
  @@ -133,7 +133,14 @@
   
     /** a zero length Object array used in loadPropertyFileToSystem() */
     private static final Object[] NO_OBJS = new Object[0];
  +  
  +  /** Static string to be used for incremental feature */
  +  private static final String FEATURE_INCREMENTAL = "http://xml.apache.org/xalan/features/incremental";
   
  +  /** Static string to be used for optimize feature */
  +  private static final String FEATURE_OPTIMIZE = "http://xml.apache.org/xalan/features/optimize";
  +
  +
     /**
      * Retrieve a propery bundle from a specified file and load it
      * int the System properties.
  @@ -488,7 +495,7 @@
       else
         return false;
     }
  -
  +  
     /**
      * Allows the user to set specific attributes on the underlying
      * implementation.
  @@ -502,7 +509,12 @@
     public void setAttribute(String name, Object value)
             throws IllegalArgumentException
     {
  -    throw new IllegalArgumentException(name);
  +    if (name.equals(FEATURE_INCREMENTAL))
  +      org.apache.xml.dtm.DTMManager.setIncremental(((Boolean)value).booleanValue());
  +    if (name.equals(FEATURE_OPTIMIZE))
  +    {}
  +    else
  +      throw new IllegalArgumentException(name);
     }
   
     /**
  
  
  
  No                   revision
  
  
  No                   revision
  
  
  1.1.2.8   +13 -6     xml-xalan/java/src/org/apache/xalan/transformer/Attic/TransformerHandlerImpl.java
  
  Index: TransformerHandlerImpl.java
  ===================================================================
  RCS file: /home/cvs/xml-xalan/java/src/org/apache/xalan/transformer/Attic/TransformerHandlerImpl.java,v
  retrieving revision 1.1.2.7
  retrieving revision 1.1.2.8
  diff -u -r1.1.2.7 -r1.1.2.8
  --- TransformerHandlerImpl.java	2001/06/04 07:52:55	1.1.2.7
  +++ TransformerHandlerImpl.java	2001/06/12 17:07:51	1.1.2.8
  @@ -355,12 +355,18 @@
         
       m_insideParse = true;
   
  -    Thread listener = new Thread(m_transformer);
  +   // Thread listener = new Thread(m_transformer);
   
  -    m_transformer.setTransformThread(listener);
  +    //m_transformer.setTransformThread(listener);
       m_transformer.setSourceTreeDocForThread(m_dtm.getDocument());
  -    listener.setDaemon(false);
  -    listener.start();
  +		int cpriority = Thread.currentThread().getPriority();
  +	    
  +		// runTransformThread is equivalent with the 2.0.1 code,
  +		// except that the Thread may come from a pool.
  +		m_transformer.runTransformThread( cpriority );
  +	
  +   //listener.setDaemon(false);
  +   //listener.start();
   
       if (m_contentHandler != null)
       {
  @@ -388,7 +394,8 @@
         m_contentHandler.endDocument();
       }
       
  -    Thread transformThread = m_transformer.getTransformThread();
  +		m_transformer.waitTransformThread();
  +   /* Thread transformThread = m_transformer.getTransformThread();
   
       if (null != transformThread)
       {
  @@ -409,7 +416,7 @@
           m_transformer.setTransformThread(null);
         }
         catch (InterruptedException ie){}
  -    }
  +    }*/
     }
   
     /**
  
  
  
  1.90.2.22 +11 -0     xml-xalan/java/src/org/apache/xalan/transformer/TransformerImpl.java
  
  Index: TransformerImpl.java
  ===================================================================
  RCS file: /home/cvs/xml-xalan/java/src/org/apache/xalan/transformer/TransformerImpl.java,v
  retrieving revision 1.90.2.21
  retrieving revision 1.90.2.22
  diff -u -r1.90.2.21 -r1.90.2.22
  --- TransformerImpl.java	2001/06/12 13:19:54	1.90.2.21
  +++ TransformerImpl.java	2001/06/12 17:07:52	1.90.2.22
  @@ -2947,6 +2947,17 @@
     {
       tpool.run(this, -1);
     }
  +  
  +  /**
  +   * Called by CoRoutineSAXParser. Launches the CoroutineSAXParser
  +   * in a thread, and prepares it to invoke the parser from that thread
  +   * upon request. 
  +   *  
  +   */
  +  public static void runTransformThread(Runnable runnable)
  +  {
  +    tpool.run(runnable, -1);
  +  }
   
     /**
      * Used by SourceTreeHandler to wait until the transform
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: xalan-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: xalan-cvs-help@xml.apache.org