You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2010/02/02 12:42:40 UTC

svn commit: r905588 - in /camel/branches/camel-1.x: ./ components/camel-freemarker/src/main/java/org/apache/camel/component/freemarker/FreemarkerComponent.java

Author: davsclaus
Date: Tue Feb  2 11:42:39 2010
New Revision: 905588

URL: http://svn.apache.org/viewvc?rev=905588&view=rev
Log:
Merged revisions 905585 via svnmerge from 
https://svn.apache.org/repos/asf/camel/trunk

........
  r905585 | davsclaus | 2010-02-02 12:35:06 +0100 (Tue, 02 Feb 2010) | 1 line
  
  CAMEL-2423: Applied 2nd patch. Thanks to Frank Schwartz.
........

Modified:
    camel/branches/camel-1.x/   (props changed)
    camel/branches/camel-1.x/components/camel-freemarker/src/main/java/org/apache/camel/component/freemarker/FreemarkerComponent.java

Propchange: camel/branches/camel-1.x/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Feb  2 11:42:39 2010
@@ -1 +1 @@
-/camel/trunk:736980,739733,739904,740251,740295,740306,740596,740663,741848,742231,742705,742739,742854,742856,742898,742906,743613,743762,743773,743920,743959-743960,744123,745105,745367,745541,745751,745826,745978,746269,746872,746895,746962,747258,747678-747704,748392,748436,748821,749563-749564,749574,749628-749629,749936,749956,750017,750334,750396,750761,750796,752068,752117,752418,752751-752755,752764-752773,752956,753087,753101,753175,755136,755487,756313,756348,756870,756939,757636,757693,757743,757865,758539,758563,758600,758617,758692,758990,759362,759453,759887,759931,760003,760890,760909,760937,761194,761536,761583,761607,762047,762633,762650,762935,763095,763484,763551,765154,765686,765729,765743,765824,766016,766289,766584,766588,766590,766602,766673,767403,767824,768342,769239,769346,769368,769434,770172,770906,771303,773193,773446,773781,774192,774383,774658-774659,776198,776289,776504,776975,778102,778689-778701,779121,779143,779489,781314-781349,781775,781
 923,781974,781993,782557,782594,782681,782886,782918-782923,783204,783248,783363,783639,783704,785564,785584,785599,787206,787581,787598,787605,787928,788393,789121,789703,790560,790936,791379,791476,791767,792038,792381,792398,792899,793359,793518,793547-793555,793862,793935,794237,794368,794550,794967,795790,798027,798052,798063,798489,798864,799252,800340,800785,800797,801084,801196,801960,802307,802478,803559,807476,810751,812937,814493,816105,817654,818063,818182-818354,818744,818747,819475,819956,820152,820168,821272,821290,822655,823013,823018,823031,823102,823177,823575,824218,824721,825760,825765,828288,828333,832647,833285,833289,833350,833370,833381,833419,835511,880655,880667,883713,884525,884750,885876,887196,895119,896772,898201,901634,902688,903638,903970,904365,904440,904442,905171,905241
+/camel/trunk:736980,739733,739904,740251,740295,740306,740596,740663,741848,742231,742705,742739,742854,742856,742898,742906,743613,743762,743773,743920,743959-743960,744123,745105,745367,745541,745751,745826,745978,746269,746872,746895,746962,747258,747678-747704,748392,748436,748821,749563-749564,749574,749628-749629,749936,749956,750017,750334,750396,750761,750796,752068,752117,752418,752751-752755,752764-752773,752956,753087,753101,753175,755136,755487,756313,756348,756870,756939,757636,757693,757743,757865,758539,758563,758600,758617,758692,758990,759362,759453,759887,759931,760003,760890,760909,760937,761194,761536,761583,761607,762047,762633,762650,762935,763095,763484,763551,765154,765686,765729,765743,765824,766016,766289,766584,766588,766590,766602,766673,767403,767824,768342,769239,769346,769368,769434,770172,770906,771303,773193,773446,773781,774192,774383,774658-774659,776198,776289,776504,776975,778102,778689-778701,779121,779143,779489,781314-781349,781775,781
 923,781974,781993,782557,782594,782681,782886,782918-782923,783204,783248,783363,783639,783704,785564,785584,785599,787206,787581,787598,787605,787928,788393,789121,789703,790560,790936,791379,791476,791767,792038,792381,792398,792899,793359,793518,793547-793555,793862,793935,794237,794368,794550,794967,795790,798027,798052,798063,798489,798864,799252,800340,800785,800797,801084,801196,801960,802307,802478,803559,807476,810751,812937,814493,816105,817654,818063,818182-818354,818744,818747,819475,819956,820152,820168,821272,821290,822655,823013,823018,823031,823102,823177,823575,824218,824721,825760,825765,828288,828333,832647,833285,833289,833350,833370,833381,833419,835511,880655,880667,883713,884525,884750,885876,887196,895119,896772,898201,901634,902688,903638,903970,904365,904440,904442,905171,905241,905585

Propchange: camel/branches/camel-1.x/
------------------------------------------------------------------------------
Binary property 'svnmerge-integrated' - no diff available.

Modified: camel/branches/camel-1.x/components/camel-freemarker/src/main/java/org/apache/camel/component/freemarker/FreemarkerComponent.java
URL: http://svn.apache.org/viewvc/camel/branches/camel-1.x/components/camel-freemarker/src/main/java/org/apache/camel/component/freemarker/FreemarkerComponent.java?rev=905588&r1=905587&r2=905588&view=diff
==============================================================================
--- camel/branches/camel-1.x/components/camel-freemarker/src/main/java/org/apache/camel/component/freemarker/FreemarkerComponent.java (original)
+++ camel/branches/camel-1.x/components/camel-freemarker/src/main/java/org/apache/camel/component/freemarker/FreemarkerComponent.java Tue Feb  2 11:42:39 2010
@@ -21,27 +21,16 @@
 
 import freemarker.cache.URLTemplateLoader;
 import freemarker.template.Configuration;
-
 import org.apache.camel.Endpoint;
-import org.apache.camel.impl.DefaultComponent;
-import org.springframework.beans.factory.BeanClassLoaderAware;
+import org.apache.camel.component.ResourceBasedComponent;
 
 /**
  * Freemarker component.
  */
-public class FreemarkerComponent extends DefaultComponent implements BeanClassLoaderAware {
+public class FreemarkerComponent extends ResourceBasedComponent {
 
     private Configuration configuration;
     private Configuration noCacheConfiguration;
-    private ClassLoader beanClassLoader;
-
-    public void setBeanClassLoader(ClassLoader classLoader) {
-        this.beanClassLoader = classLoader;
-    }
-
-    public ClassLoader getBeanClassLoader() {
-        return beanClassLoader;
-    }
 
     protected Endpoint createEndpoint(String uri, String remaining, Map parameters) throws Exception {
         FreemarkerEndpoint endpoint = new FreemarkerEndpoint(uri, this, remaining, parameters);
@@ -50,7 +39,7 @@
         Configuration config;
         boolean cache = (Boolean) getAndRemoveParameter(parameters, "contentCache", Boolean.class, Boolean.TRUE);
         if (cache) {
-            config = getConfiguraiton();
+            config = getConfiguration();
         } else {
             config = getNoCacheConfiguration();
         }
@@ -59,40 +48,27 @@
         return endpoint;
     }
 
-    public synchronized Configuration getConfiguraiton() {
+    public synchronized Configuration getConfiguration() {
         if (configuration == null) {
             configuration = new Configuration();
             configuration.setTemplateLoader(new URLTemplateLoader() {
                 @Override
                 protected URL getURL(String name) {
-                    ClassLoader[] loaders = {
-                        beanClassLoader, 
-                        Thread.currentThread().getContextClassLoader(), 
-                        this.getClass().getClassLoader()
-                    };
-                    for (ClassLoader classLoader : loaders) {
-                        if (classLoader != null) {
-                            URL resource = classLoader.getResource(name);
-                            if (resource != null) {
-                                return resource;
-                            }
-                        }
-                    }
-                    return null;
+                    return getResourceLoader().getClassLoader().getResource(name);
                 }
             });
         }
         return (Configuration) configuration.clone();
     }
 
-    public void setConfiguraiton(Configuration configuraiton) {
-        this.configuration = configuraiton;
+    public void setConfiguration(Configuration configuration) {
+        this.configuration = configuration;
     }
 
     private synchronized Configuration getNoCacheConfiguration() {
         if (noCacheConfiguration == null) {
             // create a clone of the regular configuration
-            noCacheConfiguration = (Configuration) getConfiguraiton().clone();
+            noCacheConfiguration = (Configuration) getConfiguration().clone();
             // set this one to not use cache
             noCacheConfiguration.setCacheStorage(new NoCacheStorage());
         }