You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@cocoon.apache.org by di...@apache.org on 2002/02/08 20:07:05 UTC

cvs commit: xml-cocoon2/src/java/org/apache/cocoon/components/language/programming CompiledProgrammingLanguage.java

dims        02/02/08 11:07:05

  Modified:    .        build.xml
               src/java/org/apache/cocoon/components/language/generator
                        ProgramGeneratorImpl.java
               src/java/org/apache/cocoon/components/language/programming
                        CompiledProgrammingLanguage.java
  Log:
  Finally, "build.precompile=true" works....
  
  Revision  Changes    Path
  1.160     +1 -0      xml-cocoon2/build.xml
  
  Index: build.xml
  ===================================================================
  RCS file: /home/cvs/xml-cocoon2/build.xml,v
  retrieving revision 1.159
  retrieving revision 1.160
  diff -u -r1.159 -r1.160
  --- build.xml	7 Feb 2002 23:28:34 -0000	1.159
  +++ build.xml	8 Feb 2002 19:07:04 -0000	1.160
  @@ -1026,6 +1026,7 @@
           <fileset dir="lib/optional">
             <include name="**/*.jar"/>
           </fileset>
  +        <pathelement location="${build.war}/WEB-INF/classes"/>
           <pathelement location="${build.dir}/${name}.jar"/>
           <pathelement location="${tools.jar}"/>
         </classpath>
  
  
  
  1.8       +2 -2      xml-cocoon2/src/java/org/apache/cocoon/components/language/generator/ProgramGeneratorImpl.java
  
  Index: ProgramGeneratorImpl.java
  ===================================================================
  RCS file: /home/cvs/xml-cocoon2/src/java/org/apache/cocoon/components/language/generator/ProgramGeneratorImpl.java,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- ProgramGeneratorImpl.java	7 Feb 2002 04:07:27 -0000	1.7
  +++ ProgramGeneratorImpl.java	8 Feb 2002 19:07:05 -0000	1.8
  @@ -93,7 +93,7 @@
    *
    * @author <a href="mailto:ricardo@apache.org">Ricardo Rocha</a>
    * @author <a href="mailto:vgritsenko@apache.org">Vadim Gritsenko</a>
  - * @version CVS $Id: ProgramGeneratorImpl.java,v 1.7 2002/02/07 04:07:27 vgritsenko Exp $
  + * @version CVS $Id: ProgramGeneratorImpl.java,v 1.8 2002/02/08 19:07:05 dims Exp $
    */
   public class ProgramGeneratorImpl extends AbstractLoggable
       implements ProgramGenerator, Contextualizable, Composable, Parameterizable,
  @@ -269,7 +269,7 @@
                * FIXME: It's the program (not the instance) that must
                * be queried for changes!!!
                */
  -            if (programInstance != null && this.autoReload) {
  +            if (programInstance != null && !this.preload && this.autoReload) {
                   // Autoreloading: Unload program if its source is modified
                   long lastModified = source.getLastModified();
                   if (lastModified == 0 || programInstance.modifiedSince(lastModified)) {
  
  
  
  1.6       +12 -1     xml-cocoon2/src/java/org/apache/cocoon/components/language/programming/CompiledProgrammingLanguage.java
  
  Index: CompiledProgrammingLanguage.java
  ===================================================================
  RCS file: /home/cvs/xml-cocoon2/src/java/org/apache/cocoon/components/language/programming/CompiledProgrammingLanguage.java,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- CompiledProgrammingLanguage.java	7 Feb 2002 04:07:27 -0000	1.5
  +++ CompiledProgrammingLanguage.java	8 Feb 2002 19:07:05 -0000	1.6
  @@ -73,7 +73,7 @@
    * A compiled programming language. This class extends <code>AbstractProgrammingLanguage</code> adding support for compilation
    * and object program files
    * @author <a href="mailto:ricardo@apache.org">Ricardo Rocha</a>
  - * @version CVS $Id: CompiledProgrammingLanguage.java,v 1.5 2002/02/07 04:07:27 vgritsenko Exp $
  + * @version CVS $Id: CompiledProgrammingLanguage.java,v 1.6 2002/02/08 19:07:05 dims Exp $
    */
   public abstract class CompiledProgrammingLanguage extends AbstractProgrammingLanguage implements Contextualizable {
   
  @@ -177,6 +177,17 @@
        * @exception LanguageException If an error occurs during compilation
        */
       public Program load(String filename, File baseDirectory, String encoding) throws LanguageException {
  +
  +        // Used for preload/precompile option.
  +        // Don't need to test for existence of the Source code.
  +        try {
  +            Class program = this.loadProgram(filename, baseDirectory);
  +            Object testInstance = program.newInstance();
  +            return new JavaProgram(program);
  +        } catch (Throwable t) {
  +            //Ignore errors if any.
  +        }
  +
           // Does object file exist? Load and return instance
           File objectFile = new File(baseDirectory, new StringBuffer(filename).append(".").append(this.getObjectExtension()).toString());
           if (objectFile.exists() && objectFile.isFile() && objectFile.canRead()) {
  
  
  

----------------------------------------------------------------------
In case of troubles, e-mail:     webmaster@xml.apache.org
To unsubscribe, e-mail:          cocoon-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: cocoon-cvs-help@xml.apache.org