User: vharcq  
  Date: 02/04/01 13:47:17

  Modified:    core/src/xdoclet GenerationManager.java
  Log:
  isGenerationNeeded does not need a merge files db anymore.  It runs super fast 
because the parsing done on the .j only focuses on finding the merge files and does 
not call TagsHandlers at all.
  
  Revision  Changes    Path
  1.6       +2 -53     xdoclet/core/src/xdoclet/GenerationManager.java
  
  Index: GenerationManager.java
  ===================================================================
  RCS file: /cvsroot/xdoclet/xdoclet/core/src/xdoclet/GenerationManager.java,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -w -r1.5 -r1.6
  --- GenerationManager.java    1 Apr 2002 11:19:44 -0000       1.5
  +++ GenerationManager.java    1 Apr 2002 21:47:17 -0000       1.6
  @@ -12,7 +12,6 @@
   import java.io.FileInputStream;
   import java.net.URL;
   import java.text.MessageFormat;
  -import java.util.Properties;
   import java.util.Iterator;
   import java.util.StringTokenizer;
   import java.util.List;
  @@ -30,7 +29,7 @@
    *
    * @author    Vincent Harcq ([EMAIL PROTECTED])
    * @created   March 30, 2002
  - * @version   $Revision: 1.5 $
  + * @version   $Revision: 1.6 $
    */
   public class GenerationManager
   {
  @@ -233,14 +232,12 @@
        private boolean isGenerationNeeded( File file, URL templateURL )
                 throws XDocletException
        {
  -             Category cat = Log.getCategory( GenerationManager.class, "generation" 
);
  +             Category cat = Log.getCategory( GenerationManager.class, "xml" );
   
                if( cat.isDebugEnabled() )
                        cat.debug( "Generation need check for " + file.getName() );
   
                // 1. Check Timestamp of Template file
  -             if( cat.isDebugEnabled() )
  -                     cat.debug( file.getName() + " " + subTask.getTemplateURL() );
                if( file.lastModified() < new File( subTask.getTemplateURL().getFile() 
).lastModified() )
                {
                        if( cat.isDebugEnabled() )
  @@ -254,7 +251,6 @@
           String[] files;
           if (getParserDb().get(new File(templateURL.getFile()).getName()) == null)
           {
  -            if (cat.isDebugEnabled()) cat.debug("Not Found "+templateURL+ " Parse 
needed");
               subTask.getParser().setOutput( file );
               subTask.getParser().setTemplateURL( templateURL );
   
  @@ -353,26 +349,6 @@
           if (parserDb == null)
           {
               parserDb = new HashMap();
  -            try{
  -                FileInputStream fis = new FileInputStream(TEMPLATE_FILES_DB);
  -                Properties fileParserDb = new Properties();
  -                fileParserDb.load(fis);
  -                for (Iterator iterator = fileParserDb.keySet().iterator(); 
iterator.hasNext();) {
  -                    String urlStr = (String)iterator.next();
  -                    String filesStr = fileParserDb.getProperty(urlStr);
  -                    StringTokenizer st = new StringTokenizer(filesStr,",");
  -                    List filesList = new ArrayList();
  -                    while (st.hasMoreTokens()){
  -                        String tok = st.nextToken();
  -                        filesList.add(tok);
  -                        if (cat.isDebugEnabled()) cat.debug("Found "+urlStr+" : 
"+tok);
  -                    }
  -                    parserDb.put(urlStr,(String[])filesList.toArray(new 
String[filesList.size()]));
  -                }
  -            } catch (IOException e){
  -                // Db not found, not a problem, let's take the tme to build it
  -                if (cat.isDebugEnabled()) cat.debug("DB file not found",e);
  -            }
           }
           return parserDb;
       }
  @@ -397,33 +373,6 @@
               }
           }
           getParserDb().put(new File(templateURL.getFile()).getName(), 
complete.toArray(new String[complete.size()]));
  -        flushParserDb();
  -    }
  -
  -    /**
  -     * Flush the database to disk.
  -     */
  -    private static void flushParserDb()
  -    throws XDocletException
  -    {
  -        try
  -        {
  -            Properties fileParserDb = new Properties();
  -            for (Iterator iterator = parserDb.keySet().iterator(); 
iterator.hasNext();) {
  -                String o = (String) iterator.next();
  -                String[] files = (String[])parserDb.get(o);
  -                StringBuffer filesList = new StringBuffer();
  -                for (int i = 0; i < files.length; i++) {
  -                    String file = files[i];
  -                    filesList.append(file).append(",");
  -                }
  -                fileParserDb.setProperty(o,filesList.toString());
  -            }
  -            FileOutputStream fos = new FileOutputStream(TEMPLATE_FILES_DB);
  -            fileParserDb.store(fos,"This file caches the list of merge files 
involved in the generation of a specific template.\n#It can safely be removed at any 
time to force a refresh.");
  -        }catch (IOException e){
  -            throw new XDocletException(e,"IO Exception");
  -        }
       }
   
   }
  
  
  

_______________________________________________
Xdoclet-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/xdoclet-devel

Reply via email to