[jboss-cvs] jboss-seam-tools/src/org/jboss/seam/tools/freemarker ...

Thomas Heute theute at jboss.com
Thu Aug 10 08:55:20 EDT 2006


  User: theute  
  Date: 06/08/10 08:55:20

  Modified:    src/org/jboss/seam/tools/freemarker 
                        ConfigurationFactory.java
  Log:
  Use resource classloading instead of simple directories
  
  Revision  Changes    Path
  1.3       +18 -6     jboss-seam-tools/src/org/jboss/seam/tools/freemarker/ConfigurationFactory.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: ConfigurationFactory.java
  ===================================================================
  RCS file: /cvsroot/jboss/jboss-seam-tools/src/org/jboss/seam/tools/freemarker/ConfigurationFactory.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -b -r1.2 -r1.3
  --- ConfigurationFactory.java	8 Aug 2006 11:33:12 -0000	1.2
  +++ ConfigurationFactory.java	10 Aug 2006 12:55:20 -0000	1.3
  @@ -23,38 +23,50 @@
   
   import java.io.File;
   import java.io.IOException;
  +import java.util.HashMap;
  +import java.util.Map;
   
   import freemarker.template.Configuration;
   import freemarker.template.DefaultObjectWrapper;
   
   /**
    * @author <a href="mailto:theute at jboss.org">Thomas Heute</a>
  - * @version <tt>$Revision: 1.2 $</tt>
  + * @version <tt>$Revision: 1.3 $</tt>
    */
   public class ConfigurationFactory {
   
  -	private static Configuration configuration;
  +	private static Map<String, Configuration> configurations;
   	
   	public static final String TEMPLATE_DIRECTORY = "templates";
   	
  -	public static Configuration getConfiguration()
  +	
  +	
  +	public static Configuration getConfiguration(String prefix)
  +	{
  +		if (configurations == null)
   	{
  -		if (configuration == null)
  +			configurations = new HashMap();
  +		}
  +		
  +		if (configurations.get(prefix) == null)
   		{
   			Configuration cfg = new Configuration();
  +			cfg.setClassForTemplateLoading(ConfigurationFactory.class, TEMPLATE_DIRECTORY + File.separatorChar + prefix);
  +			/*
   			try {
   				cfg.setDirectoryForTemplateLoading(
   				        new File(TEMPLATE_DIRECTORY));
   			} catch (IOException e) {
   				e.printStackTrace();
   			}
  +			*/
   			cfg.setObjectWrapper(new DefaultObjectWrapper());  
  -			configuration = cfg;
  +			configurations.put(prefix, cfg);
   			return cfg;
   		}
   		else
   		{
  -			return configuration;
  +			return configurations.get(prefix);
   		}
   	}
   	
  
  
  



More information about the jboss-cvs-commits mailing list