You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tiles.apache.org by nl...@apache.org on 2014/12/07 07:48:00 UTC

svn commit: r1643653 [2/2] - in /tiles/autotag/trunk: maven-autotag-plugin/ maven-autotag-plugin/src/main/java/org/apache/tiles/autotag/plugin/ maven-autotag-plugin/src/main/resources/ maven-autotag-plugin/src/main/resources/META-INF/ maven-autotag-plu...

Modified: tiles/autotag/trunk/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/generate/AbstractTemplateSuiteGeneratorTest.java
URL: http://svn.apache.org/viewvc/tiles/autotag/trunk/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/generate/AbstractTemplateSuiteGeneratorTest.java?rev=1643653&r1=1643652&r2=1643653&view=diff
==============================================================================
--- tiles/autotag/trunk/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/generate/AbstractTemplateSuiteGeneratorTest.java (original)
+++ tiles/autotag/trunk/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/generate/AbstractTemplateSuiteGeneratorTest.java Sun Dec  7 06:47:59 2014
@@ -20,16 +20,24 @@
  */
 package org.apache.tiles.autotag.generate;
 
-import static org.easymock.EasyMock.*;
+import static org.easymock.EasyMock.createMock;
+import static org.easymock.EasyMock.createMockBuilder;
+import static org.easymock.EasyMock.expect;
+import static org.easymock.EasyMock.expectLastCall;
+import static org.easymock.EasyMock.isA;
+import static org.easymock.EasyMock.replay;
+import static org.easymock.EasyMock.verify;
 
 import java.io.File;
-import java.io.FileWriter;
 import java.io.IOException;
+import java.io.Writer;
 import java.util.Map;
 
 import org.apache.commons.io.FileUtils;
 import org.apache.tiles.autotag.core.AutotagRuntimeException;
 import org.apache.tiles.autotag.core.ClassParseException;
+import org.apache.tiles.autotag.core.OutputLocator;
+import org.apache.tiles.autotag.core.DirectoryOutputLocator;
 import org.apache.tiles.autotag.model.TemplateSuite;
 import org.apache.velocity.Template;
 import org.apache.velocity.VelocityContext;
@@ -93,22 +101,22 @@ public class AbstractTemplateSuiteGenera
     public void testGenerate() throws Exception {
         directory.delete();
         directory.mkdir();
+        OutputLocator locator = new DirectoryOutputLocator(directory);
         TemplateSuite suite = createMock(TemplateSuite.class);
         Template template = createMock(Template.class);
         @SuppressWarnings("unchecked")
         Map<String, String> parameters = createMock(Map.class);
         String packageName = "org.apache.tiles.autotag.test";
 
-        expect(generator.getDirectoryName(directory, packageName, suite, parameters)).andReturn("mydir");
-        File mydir = new File(directory, "mydir");
-        expect(generator.getFilename(mydir , packageName, suite, parameters)).andReturn("myfile.txt");
+        expect(generator.getDirectoryName(packageName, suite, parameters)).andReturn("mydir");
+        expect(generator.getFilename(packageName, suite, parameters)).andReturn("myfile.txt");
         String sampleVmPath = "/sample.vm";
-        expect(generator.getTemplatePath(mydir, packageName, suite, parameters)).andReturn(sampleVmPath);
+        expect(generator.getTemplatePath(packageName, suite, parameters)).andReturn(sampleVmPath);
         expect(velocityEngine.getTemplate("/sample.vm")).andReturn(template);
-        template.merge(isA(VelocityContext.class), isA(FileWriter.class));
+        template.merge(isA(VelocityContext.class), isA(Writer.class));
 
         replay(velocityEngine, generator, suite, template, parameters);
-        generator.generate(directory, packageName, suite, parameters);
+        generator.generate(locator, packageName, suite, parameters);
         verify(velocityEngine, generator, suite, template, parameters);
     }
 
@@ -122,21 +130,21 @@ public class AbstractTemplateSuiteGenera
     public void testGenerateException1() throws Exception {
         directory.delete();
         directory.mkdir();
+        OutputLocator locator = new DirectoryOutputLocator(directory);
         TemplateSuite suite = createMock(TemplateSuite.class);
         Template template = createMock(Template.class);
         @SuppressWarnings("unchecked")
         Map<String, String> parameters = createMock(Map.class);
         String packageName = "org.apache.tiles.autotag.test";
 
-        expect(generator.getDirectoryName(directory, packageName, suite, parameters)).andReturn("mydir");
-        File mydir = new File(directory, "mydir");
-        expect(generator.getFilename(mydir , packageName, suite, parameters)).andReturn("myfile.txt");
+        expect(generator.getDirectoryName(packageName, suite, parameters)).andReturn("mydir");
+        expect(generator.getFilename(packageName, suite, parameters)).andReturn("myfile.txt");
         String sampleVmPath = "/sample.vm";
-        expect(generator.getTemplatePath(mydir, packageName, suite, parameters)).andReturn(sampleVmPath);
+        expect(generator.getTemplatePath(packageName, suite, parameters)).andReturn(sampleVmPath);
         expect(velocityEngine.getTemplate("/sample.vm")).andThrow(new ResourceNotFoundException("hello"));
 
         replay(velocityEngine, generator, suite, template, parameters);
-        generator.generate(directory, packageName, suite, parameters);
+        generator.generate(locator, packageName, suite, parameters);
         verify(velocityEngine, generator, suite, template, parameters);
     }
 
@@ -150,21 +158,21 @@ public class AbstractTemplateSuiteGenera
     public void testGenerateException2() throws Exception {
         directory.delete();
         directory.mkdir();
+        OutputLocator locator = new DirectoryOutputLocator(directory);
         TemplateSuite suite = createMock(TemplateSuite.class);
         Template template = createMock(Template.class);
         @SuppressWarnings("unchecked")
         Map<String, String> parameters = createMock(Map.class);
         String packageName = "org.apache.tiles.autotag.test";
 
-        expect(generator.getDirectoryName(directory, packageName, suite, parameters)).andReturn("mydir");
-        File mydir = new File(directory, "mydir");
-        expect(generator.getFilename(mydir , packageName, suite, parameters)).andReturn("myfile.txt");
+        expect(generator.getDirectoryName(packageName, suite, parameters)).andReturn("mydir");
+        expect(generator.getFilename(packageName, suite, parameters)).andReturn("myfile.txt");
         String sampleVmPath = "/sample.vm";
-        expect(generator.getTemplatePath(mydir, packageName, suite, parameters)).andReturn(sampleVmPath);
+        expect(generator.getTemplatePath(packageName, suite, parameters)).andReturn(sampleVmPath);
         expect(velocityEngine.getTemplate("/sample.vm")).andThrow(new ParseErrorException("hello"));
 
         replay(velocityEngine, generator, suite, template, parameters);
-        generator.generate(directory, packageName, suite, parameters);
+        generator.generate(locator, packageName, suite, parameters);
         verify(velocityEngine, generator, suite, template, parameters);
     }
 
@@ -178,21 +186,21 @@ public class AbstractTemplateSuiteGenera
     public void testGenerateException3() throws Exception {
         directory.delete();
         directory.mkdir();
+        OutputLocator locator = new DirectoryOutputLocator(directory);
         TemplateSuite suite = createMock(TemplateSuite.class);
         Template template = createMock(Template.class);
         @SuppressWarnings("unchecked")
         Map<String, String> parameters = createMock(Map.class);
         String packageName = "org.apache.tiles.autotag.test";
 
-        expect(generator.getDirectoryName(directory, packageName, suite, parameters)).andReturn("mydir");
-        File mydir = new File(directory, "mydir");
-        expect(generator.getFilename(mydir , packageName, suite, parameters)).andReturn("myfile.txt");
+        expect(generator.getDirectoryName(packageName, suite, parameters)).andReturn("mydir");
+        expect(generator.getFilename(packageName, suite, parameters)).andReturn("myfile.txt");
         String sampleVmPath = "/sample.vm";
-        expect(generator.getTemplatePath(mydir, packageName, suite, parameters)).andReturn(sampleVmPath);
+        expect(generator.getTemplatePath(packageName, suite, parameters)).andReturn(sampleVmPath);
         expect(velocityEngine.getTemplate("/sample.vm")).andThrow(new Exception());
 
         replay(velocityEngine, generator, suite, template, parameters);
-        generator.generate(directory, packageName, suite, parameters);
+        generator.generate(locator, packageName, suite, parameters);
         verify(velocityEngine, generator, suite, template, parameters);
     }
 
@@ -206,23 +214,23 @@ public class AbstractTemplateSuiteGenera
     public void testGenerateException4() throws Exception {
         directory.delete();
         directory.mkdir();
+        OutputLocator locator = new DirectoryOutputLocator(directory);
         TemplateSuite suite = createMock(TemplateSuite.class);
         Template template = createMock(Template.class);
         @SuppressWarnings("unchecked")
         Map<String, String> parameters = createMock(Map.class);
         String packageName = "org.apache.tiles.autotag.test";
 
-        expect(generator.getDirectoryName(directory, packageName, suite, parameters)).andReturn("mydir");
-        File mydir = new File(directory, "mydir");
-        expect(generator.getFilename(mydir , packageName, suite, parameters)).andReturn("myfile.txt");
+        expect(generator.getDirectoryName(packageName, suite, parameters)).andReturn("mydir");
+        expect(generator.getFilename(packageName, suite, parameters)).andReturn("myfile.txt");
         String sampleVmPath = "/sample.vm";
-        expect(generator.getTemplatePath(mydir, packageName, suite, parameters)).andReturn(sampleVmPath);
+        expect(generator.getTemplatePath(packageName, suite, parameters)).andReturn(sampleVmPath);
         expect(velocityEngine.getTemplate("/sample.vm")).andReturn(template);
-        template.merge(isA(VelocityContext.class), isA(FileWriter.class));
+        template.merge(isA(VelocityContext.class), isA(Writer.class));
         expectLastCall().andThrow(new IOException());
 
         replay(velocityEngine, generator, suite, template, parameters);
-        generator.generate(directory, packageName, suite, parameters);
+        generator.generate(locator, packageName, suite, parameters);
         verify(velocityEngine, generator, suite, template, parameters);
     }
 
@@ -236,23 +244,23 @@ public class AbstractTemplateSuiteGenera
     public void testGenerateException5() throws Exception {
         directory.delete();
         directory.mkdir();
+        OutputLocator locator = new DirectoryOutputLocator(directory);
         TemplateSuite suite = createMock(TemplateSuite.class);
         Template template = createMock(Template.class);
         @SuppressWarnings("unchecked")
         Map<String, String> parameters = createMock(Map.class);
         String packageName = "org.apache.tiles.autotag.test";
 
-        expect(generator.getDirectoryName(directory, packageName, suite, parameters)).andReturn("mydir");
-        File mydir = new File(directory, "mydir");
-        expect(generator.getFilename(mydir , packageName, suite, parameters)).andReturn("myfile.txt");
+        expect(generator.getDirectoryName(packageName, suite, parameters)).andReturn("mydir");
+        expect(generator.getFilename(packageName, suite, parameters)).andReturn("myfile.txt");
         String sampleVmPath = "/sample.vm";
-        expect(generator.getTemplatePath(mydir, packageName, suite, parameters)).andReturn(sampleVmPath);
+        expect(generator.getTemplatePath(packageName, suite, parameters)).andReturn(sampleVmPath);
         expect(velocityEngine.getTemplate("/sample.vm")).andReturn(template);
-        template.merge(isA(VelocityContext.class), isA(FileWriter.class));
+        template.merge(isA(VelocityContext.class), isA(Writer.class));
         expectLastCall().andThrow(new ClassParseException());
 
         replay(velocityEngine, generator, suite, template, parameters);
-        generator.generate(directory, packageName, suite, parameters);
+        generator.generate(locator, packageName, suite, parameters);
         verify(velocityEngine, generator, suite, template, parameters);
     }
 

Modified: tiles/autotag/trunk/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/generate/BasicTemplateGeneratorTest.java
URL: http://svn.apache.org/viewvc/tiles/autotag/trunk/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/generate/BasicTemplateGeneratorTest.java?rev=1643653&r1=1643652&r2=1643653&view=diff
==============================================================================
--- tiles/autotag/trunk/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/generate/BasicTemplateGeneratorTest.java (original)
+++ tiles/autotag/trunk/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/generate/BasicTemplateGeneratorTest.java Sun Dec  7 06:47:59 2014
@@ -20,15 +20,19 @@
  */
 package org.apache.tiles.autotag.generate;
 
-import static org.easymock.EasyMock.*;
-import static org.junit.Assert.*;
+import static org.easymock.EasyMock.createMock;
+import static org.easymock.EasyMock.expect;
+import static org.easymock.EasyMock.replay;
+import static org.easymock.EasyMock.verify;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
 
-import java.io.File;
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
 
+import org.apache.tiles.autotag.core.OutputLocator;
 import org.apache.tiles.autotag.generate.BasicTemplateGenerator.TCGeneratorDirectoryPair;
 import org.apache.tiles.autotag.generate.BasicTemplateGenerator.TSGeneratorDirectoryPair;
 import org.apache.tiles.autotag.model.TemplateClass;
@@ -48,8 +52,7 @@ public class BasicTemplateGeneratorTest
      */
     @Test
     public void testGenerate() throws IOException {
-        File file = File.createTempFile("tiles", "template");
-        file.deleteOnExit();
+    	OutputLocator locator = createMock(OutputLocator.class);
         TemplateSuite suite = createMock(TemplateSuite.class);
         TemplateClass templateClass = createMock(TemplateClass.class);
         TemplateSuiteGenerator templateSuiteGenerator = createMock(TemplateSuiteGenerator.class);
@@ -61,12 +64,12 @@ public class BasicTemplateGeneratorTest
         templateClasses.add(templateClass);
 
         expect(suite.getTemplateClasses()).andReturn(templateClasses);
-        templateSuiteGenerator.generate(file, "my.package", suite, parameters);
-        templateClassGenerator.generate(file, "my.package", suite, templateClass, parameters, "my.Runtime", "my.Request");
+        templateSuiteGenerator.generate(locator, "my.package", suite, parameters);
+        templateClassGenerator.generate(locator, "my.package", suite, templateClass, parameters, "my.Runtime", "my.Request");
 
         replay(suite, templateClass, templateSuiteGenerator, templateClassGenerator, parameters);
-        TSGeneratorDirectoryPair tsPair = new TSGeneratorDirectoryPair(file, templateSuiteGenerator);
-        TCGeneratorDirectoryPair tcPair = new TCGeneratorDirectoryPair(file, templateClassGenerator);
+        TSGeneratorDirectoryPair tsPair = new TSGeneratorDirectoryPair(locator, templateSuiteGenerator);
+        TCGeneratorDirectoryPair tcPair = new TCGeneratorDirectoryPair(locator, templateClassGenerator);
         List<TSGeneratorDirectoryPair> tsList = new ArrayList<BasicTemplateGenerator.TSGeneratorDirectoryPair>();
         tsList.add(tsPair);
         List<TCGeneratorDirectoryPair> tcList = new ArrayList<BasicTemplateGenerator.TCGeneratorDirectoryPair>();

Modified: tiles/autotag/trunk/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/generate/TemplateGeneratorBuilderTest.java
URL: http://svn.apache.org/viewvc/tiles/autotag/trunk/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/generate/TemplateGeneratorBuilderTest.java?rev=1643653&r1=1643652&r2=1643653&view=diff
==============================================================================
--- tiles/autotag/trunk/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/generate/TemplateGeneratorBuilderTest.java (original)
+++ tiles/autotag/trunk/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/generate/TemplateGeneratorBuilderTest.java Sun Dec  7 06:47:59 2014
@@ -20,11 +20,13 @@
  */
 package org.apache.tiles.autotag.generate;
 
-import static org.easymock.EasyMock.*;
-import static org.junit.Assert.*;
-
-import java.io.File;
+import static org.easymock.EasyMock.createMock;
+import static org.easymock.EasyMock.replay;
+import static org.easymock.EasyMock.verify;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
 
+import org.apache.tiles.autotag.core.OutputLocator;
 import org.junit.Test;
 
 /**
@@ -39,16 +41,16 @@ public class TemplateGeneratorBuilderTes
      */
     @Test
     public void testAddClassesTemplateSuiteGenerator() {
-        File dir = createMock(File.class);
+        OutputLocator locator = createMock(OutputLocator.class);
         TemplateSuiteGenerator generator = createMock(TemplateSuiteGenerator.class);
 
-        replay(dir, generator);
+        replay(locator, generator);
         TemplateGenerator templateGenerator = TemplateGeneratorBuilder
-                .createNewInstance().setClassesOutputDirectory(dir)
+                .createNewInstance().setClassesOutputLocator(locator)
                 .addClassesTemplateSuiteGenerator(generator).build();
         assertTrue(templateGenerator.isGeneratingClasses());
         assertFalse(templateGenerator.isGeneratingResources());
-        verify(dir, generator);
+        verify(locator, generator);
     }
 
     /**
@@ -72,16 +74,16 @@ public class TemplateGeneratorBuilderTes
      */
     @Test
     public void testAddClassesTemplateClassGenerator() {
-        File dir = createMock(File.class);
+        OutputLocator locator = createMock(OutputLocator.class);
         TemplateClassGenerator generator = createMock(TemplateClassGenerator.class);
 
-        replay(dir, generator);
+        replay(locator, generator);
         TemplateGenerator templateGenerator = TemplateGeneratorBuilder
-                .createNewInstance().setClassesOutputDirectory(dir)
+                .createNewInstance().setClassesOutputLocator(locator)
                 .addClassesTemplateClassGenerator(generator).build();
         assertTrue(templateGenerator.isGeneratingClasses());
         assertFalse(templateGenerator.isGeneratingResources());
-        verify(dir, generator);
+        verify(locator, generator);
     }
 
     /**
@@ -105,16 +107,16 @@ public class TemplateGeneratorBuilderTes
      */
     @Test
     public void testAddResourcesTemplateSuiteGenerator() {
-        File dir = createMock(File.class);
+        OutputLocator locator = createMock(OutputLocator.class);
         TemplateSuiteGenerator generator = createMock(TemplateSuiteGenerator.class);
 
-        replay(dir, generator);
+        replay(locator, generator);
         TemplateGenerator templateGenerator = TemplateGeneratorBuilder
-                .createNewInstance().setResourcesOutputDirectory(dir)
+                .createNewInstance().setResourcesOutputLocator(locator)
                 .addResourcesTemplateSuiteGenerator(generator).build();
         assertFalse(templateGenerator.isGeneratingClasses());
         assertTrue(templateGenerator.isGeneratingResources());
-        verify(dir, generator);
+        verify(locator, generator);
     }
 
     /**
@@ -138,16 +140,16 @@ public class TemplateGeneratorBuilderTes
      */
     @Test
     public void testAddResourcesTemplateClassGenerator() {
-        File dir = createMock(File.class);
+        OutputLocator locator = createMock(OutputLocator.class);
         TemplateClassGenerator generator = createMock(TemplateClassGenerator.class);
 
-        replay(dir, generator);
+        replay(locator, generator);
         TemplateGenerator templateGenerator = TemplateGeneratorBuilder
-                .createNewInstance().setResourcesOutputDirectory(dir)
+                .createNewInstance().setResourcesOutputLocator(locator)
                 .addResourcesTemplateClassGenerator(generator).build();
         assertFalse(templateGenerator.isGeneratingClasses());
         assertTrue(templateGenerator.isGeneratingResources());
-        verify(dir, generator);
+        verify(locator, generator);
     }
 
     /**

Modified: tiles/autotag/trunk/tiles-autotag-freemarker/src/main/java/org/apache/tiles/autotag/freemarker/FMModelGenerator.java
URL: http://svn.apache.org/viewvc/tiles/autotag/trunk/tiles-autotag-freemarker/src/main/java/org/apache/tiles/autotag/freemarker/FMModelGenerator.java?rev=1643653&r1=1643652&r2=1643653&view=diff
==============================================================================
--- tiles/autotag/trunk/tiles-autotag-freemarker/src/main/java/org/apache/tiles/autotag/freemarker/FMModelGenerator.java (original)
+++ tiles/autotag/trunk/tiles-autotag-freemarker/src/main/java/org/apache/tiles/autotag/freemarker/FMModelGenerator.java Sun Dec  7 06:47:59 2014
@@ -20,7 +20,6 @@
  */
 package org.apache.tiles.autotag.freemarker;
 
-import java.io.File;
 import java.util.Map;
 
 import org.apache.tiles.autotag.generate.AbstractTemplateClassGenerator;
@@ -45,21 +44,21 @@ public class FMModelGenerator extends Ab
     }
 
     @Override
-    protected String getDirectoryName(File directory, String packageName,
+    protected String getDirectoryName(String packageName,
             TemplateSuite suite, TemplateClass clazz, Map<String, String> parameters,
             String runtimeClass, String requestClass) {
         return packageName.replaceAll("\\.", "/");
     }
 
     @Override
-    protected String getFilename(File directory, String packageName,
+    protected String getFilename(String packageName,
             TemplateSuite suite, TemplateClass clazz, Map<String, String> parameters,
             String runtimeClass, String requestClass) {
         return clazz.getTagClassPrefix() + "FMModel.java";
     }
 
     @Override
-    protected String getTemplatePath(File directory, String packageName,
+    protected String getTemplatePath(String packageName,
             TemplateSuite suite, TemplateClass clazz, Map<String, String> parameters,
             String runtimeClass, String requestClass) {
         return "/org/apache/tiles/autotag/freemarker/fmModel.vm";

Modified: tiles/autotag/trunk/tiles-autotag-freemarker/src/main/java/org/apache/tiles/autotag/freemarker/FMModelRepositoryGenerator.java
URL: http://svn.apache.org/viewvc/tiles/autotag/trunk/tiles-autotag-freemarker/src/main/java/org/apache/tiles/autotag/freemarker/FMModelRepositoryGenerator.java?rev=1643653&r1=1643652&r2=1643653&view=diff
==============================================================================
--- tiles/autotag/trunk/tiles-autotag-freemarker/src/main/java/org/apache/tiles/autotag/freemarker/FMModelRepositoryGenerator.java (original)
+++ tiles/autotag/trunk/tiles-autotag-freemarker/src/main/java/org/apache/tiles/autotag/freemarker/FMModelRepositoryGenerator.java Sun Dec  7 06:47:59 2014
@@ -20,7 +20,6 @@
  */
 package org.apache.tiles.autotag.freemarker;
 
-import java.io.File;
 import java.util.Map;
 
 import org.apache.tiles.autotag.generate.AbstractTemplateSuiteGenerator;
@@ -44,20 +43,20 @@ public class FMModelRepositoryGenerator
     }
 
     @Override
-    protected String getTemplatePath(File directory, String packageName,
+    protected String getTemplatePath(String packageName,
             TemplateSuite suite, Map<String, String> parameters) {
         return "/org/apache/tiles/autotag/freemarker/repository.vm";
     }
 
     @Override
-    protected String getFilename(File directory, String packageName,
+    protected String getFilename(String packageName,
             TemplateSuite suite, Map<String, String> parameters) {
         String name = suite.getName();
         return name.substring(0, 1).toUpperCase() + name.substring(1) + "FMModelRepository.java";
     }
 
     @Override
-    protected String getDirectoryName(File directory, String packageName,
+    protected String getDirectoryName(String packageName,
             TemplateSuite suite, Map<String, String> parameters) {
         return packageName.replaceAll("\\.", "/");
     }

Modified: tiles/autotag/trunk/tiles-autotag-freemarker/src/main/java/org/apache/tiles/autotag/freemarker/FMTemplateGeneratorFactory.java
URL: http://svn.apache.org/viewvc/tiles/autotag/trunk/tiles-autotag-freemarker/src/main/java/org/apache/tiles/autotag/freemarker/FMTemplateGeneratorFactory.java?rev=1643653&r1=1643652&r2=1643653&view=diff
==============================================================================
--- tiles/autotag/trunk/tiles-autotag-freemarker/src/main/java/org/apache/tiles/autotag/freemarker/FMTemplateGeneratorFactory.java (original)
+++ tiles/autotag/trunk/tiles-autotag-freemarker/src/main/java/org/apache/tiles/autotag/freemarker/FMTemplateGeneratorFactory.java Sun Dec  7 06:47:59 2014
@@ -20,8 +20,7 @@
  */
 package org.apache.tiles.autotag.freemarker;
 
-import java.io.File;
-
+import org.apache.tiles.autotag.core.OutputLocator;
 import org.apache.tiles.autotag.generate.TemplateGenerator;
 import org.apache.tiles.autotag.generate.TemplateGeneratorBuilder;
 import org.apache.tiles.autotag.generate.TemplateGeneratorFactory;
@@ -36,11 +35,8 @@ public class FMTemplateGeneratorFactory
 
     /**
      * Location of the file.
-     *
-     * @parameter expression="${project.build.directory}/autotag-jsp-classes"
-     * @required
      */
-    private File classesOutputDirectory;
+    private OutputLocator classesOutputLocator;
 
     /**
      * The Velocity engine.
@@ -59,9 +55,9 @@ public class FMTemplateGeneratorFactory
      * @param velocityEngine The Velocity engine.
      * @param templateGeneratorBuilder The template generator builder.
      */
-    public FMTemplateGeneratorFactory(File classesOutputDirectory,
+    public FMTemplateGeneratorFactory(OutputLocator classesOutputLocator,
             VelocityEngine velocityEngine, TemplateGeneratorBuilder templateGeneratorBuilder) {
-        this.classesOutputDirectory = classesOutputDirectory;
+        this.classesOutputLocator = classesOutputLocator;
         this.velocityEngine = velocityEngine;
         this.templateGeneratorBuilder = templateGeneratorBuilder;
     }
@@ -69,7 +65,7 @@ public class FMTemplateGeneratorFactory
     @Override
     public TemplateGenerator createTemplateGenerator() {
         return templateGeneratorBuilder
-                .setClassesOutputDirectory(classesOutputDirectory)
+                .setClassesOutputLocator(classesOutputLocator)
                 .addClassesTemplateSuiteGenerator(
                         new FMModelRepositoryGenerator(velocityEngine))
                 .addClassesTemplateClassGenerator(

Modified: tiles/autotag/trunk/tiles-autotag-freemarker/src/test/java/org/apache/tiles/autotag/freemarker/FMModelGeneratorTest.java
URL: http://svn.apache.org/viewvc/tiles/autotag/trunk/tiles-autotag-freemarker/src/test/java/org/apache/tiles/autotag/freemarker/FMModelGeneratorTest.java?rev=1643653&r1=1643652&r2=1643653&view=diff
==============================================================================
--- tiles/autotag/trunk/tiles-autotag-freemarker/src/test/java/org/apache/tiles/autotag/freemarker/FMModelGeneratorTest.java (original)
+++ tiles/autotag/trunk/tiles-autotag-freemarker/src/test/java/org/apache/tiles/autotag/freemarker/FMModelGeneratorTest.java Sun Dec  7 06:47:59 2014
@@ -31,6 +31,8 @@ import java.util.Properties;
 
 import org.apache.commons.io.FileUtils;
 import org.apache.commons.io.IOUtils;
+import org.apache.tiles.autotag.core.DirectoryOutputLocator;
+import org.apache.tiles.autotag.core.OutputLocator;
 import org.apache.tiles.autotag.core.runtime.ModelBody;
 import org.apache.tiles.autotag.model.TemplateClass;
 import org.apache.tiles.autotag.model.TemplateMethod;
@@ -61,10 +63,9 @@ public class FMModelGeneratorTest {
         VelocityEngine velocityEngine = new VelocityEngine(props);
 
         FMModelGenerator generator = new FMModelGenerator(velocityEngine);
-        File file = File.createTempFile("autotag", null);
-        file.delete();
-        file.mkdir();
-        file.deleteOnExit();
+        File tempDir = new File(System.getProperty("java.io.tmpdir"), "autotag");
+        OutputLocator locator = new DirectoryOutputLocator(tempDir);
+        tempDir.deleteOnExit();
         TemplateSuite suite = new TemplateSuite("tldtest", "Test for TLD docs.");
 
         List<TemplateParameter> params = new ArrayList<TemplateParameter>();
@@ -89,13 +90,13 @@ public class FMModelGeneratorTest {
                 "doStuff", "DoStuff", executeMethod);
         clazz.setDocumentation("Documentation of the DoStuff class.");
 
-        generator.generate(file, "org.apache.tiles.autotag.freemarker.test", suite, clazz, null,
+        generator.generate(locator, "org.apache.tiles.autotag.freemarker.test", suite, clazz, null,
                            "org.apache.tiles.autotag.freemarker.test.Runtime", REQUEST_CLASS);
 
         InputStream expected = getClass()
                 .getResourceAsStream(
                         "/org/apache/tiles/autotag/freemarker/test/DoStuffFMModel.javat");
-        File effectiveFile = new File(file, "/org/apache/tiles/autotag/freemarker/test/DoStuffFMModel.java");
+        File effectiveFile = new File(tempDir, "/org/apache/tiles/autotag/freemarker/test/DoStuffFMModel.java");
         assertTrue(effectiveFile.exists());
         InputStream effective = new FileInputStream(effectiveFile);
         assertTrue(IOUtils.contentEquals(effective, expected));
@@ -124,20 +125,20 @@ public class FMModelGeneratorTest {
 
         suite.addTemplateClass(clazz);
 
-        generator.generate(file, "org.apache.tiles.autotag.freemarker.test", suite, clazz, null,
+        generator.generate(locator, "org.apache.tiles.autotag.freemarker.test", suite, clazz, null,
                            "org.apache.tiles.autotag.freemarker.test.Runtime", REQUEST_CLASS);
 
         expected = getClass()
                 .getResourceAsStream(
                         "/org/apache/tiles/autotag/freemarker/test/DoStuffNoBodyFMModel.javat");
-        effectiveFile = new File(file, "/org/apache/tiles/autotag/freemarker/test/DoStuffNoBodyFMModel.java");
+        effectiveFile = new File(tempDir, "/org/apache/tiles/autotag/freemarker/test/DoStuffNoBodyFMModel.java");
         assertTrue(effectiveFile.exists());
         effective = new FileInputStream(effectiveFile);
         assertTrue(IOUtils.contentEquals(effective, expected));
         effective.close();
         expected.close();
 
-        FileUtils.deleteDirectory(file);
+        FileUtils.deleteDirectory(tempDir);
     }
 
 }

Modified: tiles/autotag/trunk/tiles-autotag-freemarker/src/test/java/org/apache/tiles/autotag/freemarker/FMModelRepositoryGeneratorTest.java
URL: http://svn.apache.org/viewvc/tiles/autotag/trunk/tiles-autotag-freemarker/src/test/java/org/apache/tiles/autotag/freemarker/FMModelRepositoryGeneratorTest.java?rev=1643653&r1=1643652&r2=1643653&view=diff
==============================================================================
--- tiles/autotag/trunk/tiles-autotag-freemarker/src/test/java/org/apache/tiles/autotag/freemarker/FMModelRepositoryGeneratorTest.java (original)
+++ tiles/autotag/trunk/tiles-autotag-freemarker/src/test/java/org/apache/tiles/autotag/freemarker/FMModelRepositoryGeneratorTest.java Sun Dec  7 06:47:59 2014
@@ -31,6 +31,8 @@ import java.util.Properties;
 
 import org.apache.commons.io.FileUtils;
 import org.apache.commons.io.IOUtils;
+import org.apache.tiles.autotag.core.DirectoryOutputLocator;
+import org.apache.tiles.autotag.core.OutputLocator;
 import org.apache.tiles.autotag.core.runtime.ModelBody;
 import org.apache.tiles.autotag.model.TemplateClass;
 import org.apache.tiles.autotag.model.TemplateMethod;
@@ -61,10 +63,9 @@ public class FMModelRepositoryGeneratorT
         VelocityEngine velocityEngine = new VelocityEngine(props);
 
         FMModelRepositoryGenerator generator = new FMModelRepositoryGenerator(velocityEngine);
-        File file = File.createTempFile("autotag", null);
-        file.delete();
-        file.mkdir();
-        file.deleteOnExit();
+        File tempDir = new File(System.getProperty("java.io.tmpdir"), "autotag");
+        OutputLocator locator = new DirectoryOutputLocator(tempDir);
+        tempDir.deleteOnExit();
         TemplateSuite suite = new TemplateSuite("tldtest", "Test for TLD docs.");
 
         List<TemplateParameter> params = new ArrayList<TemplateParameter>();
@@ -111,19 +112,19 @@ public class FMModelRepositoryGeneratorT
 
         suite.addTemplateClass(clazz);
 
-        generator.generate(file, "org.apache.tiles.autotag.freemarker.test", suite, null);
+        generator.generate(locator, "org.apache.tiles.autotag.freemarker.test", suite, null);
 
         InputStream expected = getClass()
                 .getResourceAsStream(
                         "/org/apache/tiles/autotag/freemarker/test/TldtestFMModelRepository.javat");
-        File effectiveFile = new File(file, "/org/apache/tiles/autotag/freemarker/test/TldtestFMModelRepository.java");
+        File effectiveFile = new File(tempDir, "/org/apache/tiles/autotag/freemarker/test/TldtestFMModelRepository.java");
         assertTrue(effectiveFile.exists());
         InputStream effective = new FileInputStream(effectiveFile);
         assertTrue(IOUtils.contentEquals(effective, expected));
         effective.close();
         expected.close();
 
-        FileUtils.deleteDirectory(file);
+        FileUtils.deleteDirectory(tempDir);
     }
 
 }

Modified: tiles/autotag/trunk/tiles-autotag-freemarker/src/test/java/org/apache/tiles/autotag/freemarker/FMTemplateGeneratorFactoryTest.java
URL: http://svn.apache.org/viewvc/tiles/autotag/trunk/tiles-autotag-freemarker/src/test/java/org/apache/tiles/autotag/freemarker/FMTemplateGeneratorFactoryTest.java?rev=1643653&r1=1643652&r2=1643653&view=diff
==============================================================================
--- tiles/autotag/trunk/tiles-autotag-freemarker/src/test/java/org/apache/tiles/autotag/freemarker/FMTemplateGeneratorFactoryTest.java (original)
+++ tiles/autotag/trunk/tiles-autotag-freemarker/src/test/java/org/apache/tiles/autotag/freemarker/FMTemplateGeneratorFactoryTest.java Sun Dec  7 06:47:59 2014
@@ -20,11 +20,14 @@
  */
 package org.apache.tiles.autotag.freemarker;
 
-import static org.easymock.EasyMock.*;
-import static org.junit.Assert.*;
-
-import java.io.File;
+import static org.easymock.EasyMock.createMock;
+import static org.easymock.EasyMock.expect;
+import static org.easymock.EasyMock.isA;
+import static org.easymock.EasyMock.replay;
+import static org.easymock.EasyMock.verify;
+import static org.junit.Assert.assertSame;
 
+import org.apache.tiles.autotag.core.OutputLocator;
 import org.apache.tiles.autotag.generate.TemplateGenerator;
 import org.apache.tiles.autotag.generate.TemplateGeneratorBuilder;
 import org.apache.velocity.app.VelocityEngine;
@@ -42,21 +45,21 @@ public class FMTemplateGeneratorFactoryT
      */
     @Test
     public void testCreateTemplateGenerator() {
-        File classesOutputDirectory = createMock(File.class);
+        OutputLocator classesOutputLocator = createMock(OutputLocator.class);
         VelocityEngine velocityEngine = createMock(VelocityEngine.class);
         TemplateGeneratorBuilder builder = createMock(TemplateGeneratorBuilder.class);
         TemplateGenerator generator = createMock(TemplateGenerator.class);
 
-        expect(builder.setClassesOutputDirectory(classesOutputDirectory)).andReturn(builder);
+        expect(builder.setClassesOutputLocator(classesOutputLocator)).andReturn(builder);
         expect(builder.addClassesTemplateSuiteGenerator(isA(FMModelRepositoryGenerator.class))).andReturn(builder);
         expect(builder.addClassesTemplateClassGenerator(isA(FMModelGenerator.class))).andReturn(builder);
         expect(builder.build()).andReturn(generator);
 
-        replay(classesOutputDirectory, velocityEngine, builder, generator);
+        replay(classesOutputLocator, velocityEngine, builder, generator);
         FMTemplateGeneratorFactory factory = new FMTemplateGeneratorFactory(
-                classesOutputDirectory, velocityEngine, builder);
+        		classesOutputLocator, velocityEngine, builder);
         assertSame(generator, factory.createTemplateGenerator());
-        verify(classesOutputDirectory, velocityEngine, builder, generator);
+        verify(classesOutputLocator, velocityEngine, builder, generator);
     }
 
 }

Modified: tiles/autotag/trunk/tiles-autotag-jsp/src/main/java/org/apache/tiles/autotag/jsp/JspTemplateGeneratorFactory.java
URL: http://svn.apache.org/viewvc/tiles/autotag/trunk/tiles-autotag-jsp/src/main/java/org/apache/tiles/autotag/jsp/JspTemplateGeneratorFactory.java?rev=1643653&r1=1643652&r2=1643653&view=diff
==============================================================================
--- tiles/autotag/trunk/tiles-autotag-jsp/src/main/java/org/apache/tiles/autotag/jsp/JspTemplateGeneratorFactory.java (original)
+++ tiles/autotag/trunk/tiles-autotag-jsp/src/main/java/org/apache/tiles/autotag/jsp/JspTemplateGeneratorFactory.java Sun Dec  7 06:47:59 2014
@@ -20,8 +20,7 @@
  */
 package org.apache.tiles.autotag.jsp;
 
-import java.io.File;
-
+import org.apache.tiles.autotag.core.OutputLocator;
 import org.apache.tiles.autotag.generate.TemplateGenerator;
 import org.apache.tiles.autotag.generate.TemplateGeneratorBuilder;
 import org.apache.tiles.autotag.generate.TemplateGeneratorFactory;
@@ -37,12 +36,12 @@ public class JspTemplateGeneratorFactory
     /**
      * Location of the file.
      */
-    private File classesOutputDirectory;
+    private OutputLocator classesOutputLocator;
 
     /**
      * Location of the file.
      */
-    private File resourcesOutputDirectory;
+    private OutputLocator resourcesOutputLocator;
 
     /**
      * The Velocity engine.
@@ -57,16 +56,16 @@ public class JspTemplateGeneratorFactory
     /**
      * Constructor.
      *
-     * @param classesOutputDirectory The directory where classes will be generated.
-     * @param resourcesOutputDirectory The directory where the TLD file will be generated.
+     * @param classesOutputLocator The directory where classes will be generated.
+     * @param resourcesOutputLocator The directory where the TLD file will be generated.
      * @param velocityEngine The Velocity engine.
      * @param templateGeneratorBuilder The template generator builder.
      */
-    public JspTemplateGeneratorFactory(File classesOutputDirectory,
-            File resourcesOutputDirectory, VelocityEngine velocityEngine,
+    public JspTemplateGeneratorFactory(OutputLocator classesOutputLocator,
+    		OutputLocator resourcesOutputLocator, VelocityEngine velocityEngine,
             TemplateGeneratorBuilder templateGeneratorBuilder) {
-        this.classesOutputDirectory = classesOutputDirectory;
-        this.resourcesOutputDirectory = resourcesOutputDirectory;
+        this.classesOutputLocator = classesOutputLocator;
+        this.resourcesOutputLocator = resourcesOutputLocator;
         this.velocityEngine = velocityEngine;
         this.templateGeneratorBuilder = templateGeneratorBuilder;
     }
@@ -74,8 +73,8 @@ public class JspTemplateGeneratorFactory
     @Override
     public TemplateGenerator createTemplateGenerator() {
         return templateGeneratorBuilder
-                .setClassesOutputDirectory(classesOutputDirectory)
-                .setResourcesOutputDirectory(resourcesOutputDirectory)
+                .setClassesOutputLocator(classesOutputLocator)
+                .setResourcesOutputLocator(resourcesOutputLocator)
                 .addResourcesTemplateSuiteGenerator(
                         new TLDGenerator(velocityEngine))
                 .addClassesTemplateClassGenerator(

Modified: tiles/autotag/trunk/tiles-autotag-jsp/src/main/java/org/apache/tiles/autotag/jsp/TLDGenerator.java
URL: http://svn.apache.org/viewvc/tiles/autotag/trunk/tiles-autotag-jsp/src/main/java/org/apache/tiles/autotag/jsp/TLDGenerator.java?rev=1643653&r1=1643652&r2=1643653&view=diff
==============================================================================
--- tiles/autotag/trunk/tiles-autotag-jsp/src/main/java/org/apache/tiles/autotag/jsp/TLDGenerator.java (original)
+++ tiles/autotag/trunk/tiles-autotag-jsp/src/main/java/org/apache/tiles/autotag/jsp/TLDGenerator.java Sun Dec  7 06:47:59 2014
@@ -20,7 +20,6 @@
  */
 package org.apache.tiles.autotag.jsp;
 
-import java.io.File;
 import java.util.Map;
 
 import org.apache.tiles.autotag.generate.AbstractTemplateSuiteGenerator;
@@ -44,19 +43,19 @@ public class TLDGenerator extends Abstra
     }
 
     @Override
-    protected String getTemplatePath(File directory, String packageName,
+    protected String getTemplatePath(String packageName,
             TemplateSuite suite, Map<String, String> parameters) {
         return "/org/apache/tiles/autotag/jsp/tld.vm";
     }
 
     @Override
-    protected String getFilename(File directory, String packageName,
+    protected String getFilename(String packageName,
             TemplateSuite suite, Map<String, String> parameters) {
         return suite.getName() + "-jsp.tld";
     }
 
     @Override
-    protected String getDirectoryName(File directory, String packageName,
+    protected String getDirectoryName(String packageName,
             TemplateSuite suite, Map<String, String> parameters) {
         return "META-INF/tld/";
     }

Modified: tiles/autotag/trunk/tiles-autotag-jsp/src/main/java/org/apache/tiles/autotag/jsp/TagClassGenerator.java
URL: http://svn.apache.org/viewvc/tiles/autotag/trunk/tiles-autotag-jsp/src/main/java/org/apache/tiles/autotag/jsp/TagClassGenerator.java?rev=1643653&r1=1643652&r2=1643653&view=diff
==============================================================================
--- tiles/autotag/trunk/tiles-autotag-jsp/src/main/java/org/apache/tiles/autotag/jsp/TagClassGenerator.java (original)
+++ tiles/autotag/trunk/tiles-autotag-jsp/src/main/java/org/apache/tiles/autotag/jsp/TagClassGenerator.java Sun Dec  7 06:47:59 2014
@@ -20,7 +20,6 @@
  */
 package org.apache.tiles.autotag.jsp;
 
-import java.io.File;
 import java.util.Map;
 
 import org.apache.tiles.autotag.generate.AbstractTemplateClassGenerator;
@@ -45,21 +44,21 @@ public class TagClassGenerator extends A
     }
 
     @Override
-    protected String getDirectoryName(File directory, String packageName,
+    protected String getDirectoryName(String packageName,
             TemplateSuite suite, TemplateClass clazz, Map<String, String> parameters,
             String runtimeClass, String requestClass) {
         return packageName.replaceAll("\\.", "/");
     }
 
     @Override
-    protected String getFilename(File directory, String packageName,
+    protected String getFilename(String packageName,
             TemplateSuite suite, TemplateClass clazz, Map<String, String> parameters,
             String runtimeClass, String requestClass) {
         return clazz.getTagClassPrefix() + "Tag.java";
     }
 
     @Override
-    protected String getTemplatePath(File directory, String packageName,
+    protected String getTemplatePath(String packageName,
             TemplateSuite suite, TemplateClass clazz, Map<String, String> parameters,
             String runtimeClass, String requestClass) {
         return "/org/apache/tiles/autotag/jsp/bodyTag.vm";

Modified: tiles/autotag/trunk/tiles-autotag-jsp/src/test/java/org/apache/tiles/autotag/jsp/JspTemplateGeneratorFactoryTest.java
URL: http://svn.apache.org/viewvc/tiles/autotag/trunk/tiles-autotag-jsp/src/test/java/org/apache/tiles/autotag/jsp/JspTemplateGeneratorFactoryTest.java?rev=1643653&r1=1643652&r2=1643653&view=diff
==============================================================================
--- tiles/autotag/trunk/tiles-autotag-jsp/src/test/java/org/apache/tiles/autotag/jsp/JspTemplateGeneratorFactoryTest.java (original)
+++ tiles/autotag/trunk/tiles-autotag-jsp/src/test/java/org/apache/tiles/autotag/jsp/JspTemplateGeneratorFactoryTest.java Sun Dec  7 06:47:59 2014
@@ -20,11 +20,14 @@
  */
 package org.apache.tiles.autotag.jsp;
 
-import static org.easymock.EasyMock.*;
-import static org.junit.Assert.*;
-
-import java.io.File;
+import static org.easymock.EasyMock.createMock;
+import static org.easymock.EasyMock.expect;
+import static org.easymock.EasyMock.isA;
+import static org.easymock.EasyMock.replay;
+import static org.easymock.EasyMock.verify;
+import static org.junit.Assert.assertSame;
 
+import org.apache.tiles.autotag.core.OutputLocator;
 import org.apache.tiles.autotag.generate.TemplateGenerator;
 import org.apache.tiles.autotag.generate.TemplateGeneratorBuilder;
 import org.apache.velocity.app.VelocityEngine;
@@ -42,24 +45,24 @@ public class JspTemplateGeneratorFactory
      */
     @Test
     public void testCreateTemplateGenerator() {
-        File classesOutputDirectory = createMock(File.class);
-        File resourcesOutputDirectory = createMock(File.class);
+    	OutputLocator classesOutputLocator = createMock(OutputLocator.class);
+    	OutputLocator resourcesOutputLocator = createMock(OutputLocator.class);
         VelocityEngine velocityEngine = createMock(VelocityEngine.class);
         TemplateGeneratorBuilder builder = createMock(TemplateGeneratorBuilder.class);
         TemplateGenerator generator = createMock(TemplateGenerator.class);
 
-        expect(builder.setClassesOutputDirectory(classesOutputDirectory)).andReturn(builder);
-        expect(builder.setResourcesOutputDirectory(resourcesOutputDirectory)).andReturn(builder);
+        expect(builder.setClassesOutputLocator(classesOutputLocator)).andReturn(builder);
+        expect(builder.setResourcesOutputLocator(resourcesOutputLocator)).andReturn(builder);
         expect(builder.addResourcesTemplateSuiteGenerator(isA(TLDGenerator.class))).andReturn(builder);
         expect(builder.addClassesTemplateClassGenerator(isA(TagClassGenerator.class))).andReturn(builder);
         expect(builder.build()).andReturn(generator);
 
-        replay(classesOutputDirectory, resourcesOutputDirectory, velocityEngine, builder, generator);
+        replay(classesOutputLocator, resourcesOutputLocator, velocityEngine, builder, generator);
         JspTemplateGeneratorFactory factory = new JspTemplateGeneratorFactory(
-                classesOutputDirectory, resourcesOutputDirectory,
+                classesOutputLocator, resourcesOutputLocator,
                 velocityEngine, builder);
         assertSame(generator, factory.createTemplateGenerator());
-        verify(classesOutputDirectory, resourcesOutputDirectory, velocityEngine, builder, generator);
+        verify(classesOutputLocator, resourcesOutputLocator, velocityEngine, builder, generator);
     }
 
 }

Modified: tiles/autotag/trunk/tiles-autotag-jsp/src/test/java/org/apache/tiles/autotag/jsp/TLDGeneratorTest.java
URL: http://svn.apache.org/viewvc/tiles/autotag/trunk/tiles-autotag-jsp/src/test/java/org/apache/tiles/autotag/jsp/TLDGeneratorTest.java?rev=1643653&r1=1643652&r2=1643653&view=diff
==============================================================================
--- tiles/autotag/trunk/tiles-autotag-jsp/src/test/java/org/apache/tiles/autotag/jsp/TLDGeneratorTest.java (original)
+++ tiles/autotag/trunk/tiles-autotag-jsp/src/test/java/org/apache/tiles/autotag/jsp/TLDGeneratorTest.java Sun Dec  7 06:47:59 2014
@@ -33,6 +33,8 @@ import java.util.Properties;
 
 import org.apache.commons.io.FileUtils;
 import org.apache.commons.io.IOUtils;
+import org.apache.tiles.autotag.core.DirectoryOutputLocator;
+import org.apache.tiles.autotag.core.OutputLocator;
 import org.apache.tiles.autotag.core.runtime.ModelBody;
 import org.apache.tiles.autotag.model.TemplateClass;
 import org.apache.tiles.autotag.model.TemplateMethod;
@@ -63,10 +65,9 @@ public class TLDGeneratorTest {
         VelocityEngine velocityEngine = new VelocityEngine(props);
 
         TLDGenerator generator = new TLDGenerator(velocityEngine);
-        File file = File.createTempFile("autotag", null);
-        file.delete();
-        file.mkdir();
-        file.deleteOnExit();
+        File tempDir = new File(System.getProperty("java.io.tmpdir"), "autotag");
+        OutputLocator locator = new DirectoryOutputLocator(tempDir);
+        tempDir.deleteOnExit();
         TemplateSuite suite = new TemplateSuite("tldtest", "Test for TLD docs.");
         Map<String, String> parameters = new HashMap<String, String>();
         parameters.put("taglibURI", "http://www.initrode.net/tags/test");
@@ -115,17 +116,17 @@ public class TLDGeneratorTest {
 
         suite.addTemplateClass(clazz);
 
-        generator.generate(file, "org.apache.tiles.autotag.jsp.test", suite, parameters);
+        generator.generate(locator, "org.apache.tiles.autotag.jsp.test", suite, parameters);
 
         InputStream expected = getClass().getResourceAsStream("/tldtest-jsp.tld");
-        File effectiveFile = new File(file, "META-INF/tld/tldtest-jsp.tld");
+        File effectiveFile = new File(tempDir, "META-INF/tld/tldtest-jsp.tld");
         assertTrue(effectiveFile.exists());
         InputStream effective = new FileInputStream(effectiveFile);
         assertTrue(IOUtils.contentEquals(effective, expected));
         effective.close();
         expected.close();
 
-        FileUtils.deleteDirectory(file);
+        FileUtils.deleteDirectory(tempDir);
     }
 
 }

Modified: tiles/autotag/trunk/tiles-autotag-jsp/src/test/java/org/apache/tiles/autotag/jsp/TagClassGeneratorTest.java
URL: http://svn.apache.org/viewvc/tiles/autotag/trunk/tiles-autotag-jsp/src/test/java/org/apache/tiles/autotag/jsp/TagClassGeneratorTest.java?rev=1643653&r1=1643652&r2=1643653&view=diff
==============================================================================
--- tiles/autotag/trunk/tiles-autotag-jsp/src/test/java/org/apache/tiles/autotag/jsp/TagClassGeneratorTest.java (original)
+++ tiles/autotag/trunk/tiles-autotag-jsp/src/test/java/org/apache/tiles/autotag/jsp/TagClassGeneratorTest.java Sun Dec  7 06:47:59 2014
@@ -33,6 +33,8 @@ import java.util.Properties;
 
 import org.apache.commons.io.FileUtils;
 import org.apache.commons.io.IOUtils;
+import org.apache.tiles.autotag.core.DirectoryOutputLocator;
+import org.apache.tiles.autotag.core.OutputLocator;
 import org.apache.tiles.autotag.core.runtime.ModelBody;
 import org.apache.tiles.autotag.model.TemplateClass;
 import org.apache.tiles.autotag.model.TemplateMethod;
@@ -63,10 +65,9 @@ public class TagClassGeneratorTest {
         VelocityEngine velocityEngine = new VelocityEngine(props);
 
         TagClassGenerator generator = new TagClassGenerator(velocityEngine);
-        File file = File.createTempFile("autotag", null);
-        file.delete();
-        file.mkdir();
-        file.deleteOnExit();
+        File tempDir = new File(System.getProperty("java.io.tmpdir"), "autotag");
+        OutputLocator locator = new DirectoryOutputLocator(tempDir);
+        tempDir.deleteOnExit();
         TemplateSuite suite = new TemplateSuite("tldtest", "Test for TLD docs.");
         Map<String, String> parameters = new HashMap<String, String>();
         parameters.put("taglibURI", "http://www.initrode.net/tags/test");
@@ -93,11 +94,11 @@ public class TagClassGeneratorTest {
                 "doStuff", "DoStuff", executeMethod);
         clazz.setDocumentation("Documentation of the DoStuff class.");
 
-        generator.generate(file, "org.apache.tiles.autotag.jsp.test", suite, clazz, parameters,
+        generator.generate(locator, "org.apache.tiles.autotag.jsp.test", suite, clazz, parameters,
                            "org.apache.tiles.autotag.jsp.test.Runtime", REQUEST_CLASS);
 
         InputStream expected = getClass().getResourceAsStream("/org/apache/tiles/autotag/jsp/test/DoStuffTag.java");
-        File effectiveFile = new File(file, "/org/apache/tiles/autotag/jsp/test/DoStuffTag.java");
+        File effectiveFile = new File(tempDir, "/org/apache/tiles/autotag/jsp/test/DoStuffTag.java");
         assertTrue(effectiveFile.exists());
         InputStream effective = new FileInputStream(effectiveFile);
         assertTrue(IOUtils.contentEquals(effective, expected));
@@ -126,18 +127,18 @@ public class TagClassGeneratorTest {
 
         suite.addTemplateClass(clazz);
 
-        generator.generate(file, "org.apache.tiles.autotag.jsp.test", suite, clazz, parameters,
+        generator.generate(locator, "org.apache.tiles.autotag.jsp.test", suite, clazz, parameters,
                            "org.apache.tiles.autotag.jsp.test.Runtime", REQUEST_CLASS);
 
         expected = getClass().getResourceAsStream("/org/apache/tiles/autotag/jsp/test/DoStuffNoBodyTag.java");
-        effectiveFile = new File(file, "/org/apache/tiles/autotag/jsp/test/DoStuffNoBodyTag.java");
+        effectiveFile = new File(tempDir, "/org/apache/tiles/autotag/jsp/test/DoStuffNoBodyTag.java");
         assertTrue(effectiveFile.exists());
         effective = new FileInputStream(effectiveFile);
         assertTrue(IOUtils.contentEquals(effective, expected));
         effective.close();
         expected.close();
 
-        FileUtils.deleteDirectory(file);
+        FileUtils.deleteDirectory(tempDir);
     }
 
 }

Modified: tiles/autotag/trunk/tiles-autotag-velocity/src/main/java/org/apache/tiles/autotag/velocity/VelocityDirectiveGenerator.java
URL: http://svn.apache.org/viewvc/tiles/autotag/trunk/tiles-autotag-velocity/src/main/java/org/apache/tiles/autotag/velocity/VelocityDirectiveGenerator.java?rev=1643653&r1=1643652&r2=1643653&view=diff
==============================================================================
--- tiles/autotag/trunk/tiles-autotag-velocity/src/main/java/org/apache/tiles/autotag/velocity/VelocityDirectiveGenerator.java (original)
+++ tiles/autotag/trunk/tiles-autotag-velocity/src/main/java/org/apache/tiles/autotag/velocity/VelocityDirectiveGenerator.java Sun Dec  7 06:47:59 2014
@@ -20,7 +20,6 @@
  */
 package org.apache.tiles.autotag.velocity;
 
-import java.io.File;
 import java.util.Map;
 
 import org.apache.tiles.autotag.generate.AbstractTemplateClassGenerator;
@@ -45,21 +44,21 @@ public class VelocityDirectiveGenerator
     }
 
     @Override
-    protected String getDirectoryName(File directory, String packageName,
+    protected String getDirectoryName(String packageName,
             TemplateSuite suite, TemplateClass clazz, Map<String, String> parameters,
             String runtimeClass, String requestClass) {
         return packageName.replaceAll("\\.", "/");
     }
 
     @Override
-    protected String getFilename(File directory, String packageName,
+    protected String getFilename(String packageName,
             TemplateSuite suite, TemplateClass clazz, Map<String, String> parameters,
             String runtimeClass, String requestClass) {
         return clazz.getTagClassPrefix() + "Directive.java";
     }
 
     @Override
-    protected String getTemplatePath(File directory, String packageName,
+    protected String getTemplatePath(String packageName,
             TemplateSuite suite, TemplateClass clazz, Map<String, String> parameters,
             String runtimeClass, String requestClass) {
         return "/org/apache/tiles/autotag/velocity/velocityDirective.vm";

Modified: tiles/autotag/trunk/tiles-autotag-velocity/src/main/java/org/apache/tiles/autotag/velocity/VelocityPropertiesGenerator.java
URL: http://svn.apache.org/viewvc/tiles/autotag/trunk/tiles-autotag-velocity/src/main/java/org/apache/tiles/autotag/velocity/VelocityPropertiesGenerator.java?rev=1643653&r1=1643652&r2=1643653&view=diff
==============================================================================
--- tiles/autotag/trunk/tiles-autotag-velocity/src/main/java/org/apache/tiles/autotag/velocity/VelocityPropertiesGenerator.java (original)
+++ tiles/autotag/trunk/tiles-autotag-velocity/src/main/java/org/apache/tiles/autotag/velocity/VelocityPropertiesGenerator.java Sun Dec  7 06:47:59 2014
@@ -20,7 +20,6 @@
  */
 package org.apache.tiles.autotag.velocity;
 
-import java.io.File;
 import java.util.Map;
 
 import org.apache.tiles.autotag.generate.AbstractTemplateSuiteGenerator;
@@ -44,19 +43,19 @@ public class VelocityPropertiesGenerator
     }
 
     @Override
-    protected String getTemplatePath(File directory, String packageName,
+    protected String getTemplatePath(String packageName,
             TemplateSuite suite, Map<String, String> parameters) {
         return "/org/apache/tiles/autotag/velocity/velocityProperties.vm";
     }
 
     @Override
-    protected String getFilename(File directory, String packageName,
+    protected String getFilename(String packageName,
             TemplateSuite suite, Map<String, String> parameters) {
         return "velocity.properties";
     }
 
     @Override
-    protected String getDirectoryName(File directory, String packageName,
+    protected String getDirectoryName(String packageName,
             TemplateSuite suite, Map<String, String> parameters) {
         return "META-INF/";
     }

Modified: tiles/autotag/trunk/tiles-autotag-velocity/src/main/java/org/apache/tiles/autotag/velocity/VelocityTemplateGeneratorFactory.java
URL: http://svn.apache.org/viewvc/tiles/autotag/trunk/tiles-autotag-velocity/src/main/java/org/apache/tiles/autotag/velocity/VelocityTemplateGeneratorFactory.java?rev=1643653&r1=1643652&r2=1643653&view=diff
==============================================================================
--- tiles/autotag/trunk/tiles-autotag-velocity/src/main/java/org/apache/tiles/autotag/velocity/VelocityTemplateGeneratorFactory.java (original)
+++ tiles/autotag/trunk/tiles-autotag-velocity/src/main/java/org/apache/tiles/autotag/velocity/VelocityTemplateGeneratorFactory.java Sun Dec  7 06:47:59 2014
@@ -20,8 +20,7 @@
  */
 package org.apache.tiles.autotag.velocity;
 
-import java.io.File;
-
+import org.apache.tiles.autotag.core.OutputLocator;
 import org.apache.tiles.autotag.generate.TemplateGenerator;
 import org.apache.tiles.autotag.generate.TemplateGeneratorBuilder;
 import org.apache.tiles.autotag.generate.TemplateGeneratorFactory;
@@ -39,12 +38,12 @@ public class VelocityTemplateGeneratorFa
     /**
      * Location of the file.
      */
-    private File classesOutputDirectory;
+    private OutputLocator classesOutputLocator;
 
     /**
      * Location of the file.
      */
-    private File resourcesOutputDirectory;
+    private OutputLocator resourcesOutputLocator;
 
     /**
      * The Velocity engine.
@@ -59,16 +58,16 @@ public class VelocityTemplateGeneratorFa
     /**
      * Constructor.
      *
-     * @param classesOutputDirectory The directory where classes will be generated.
-     * @param resourcesOutputDirectory The directory where velocity.properties will be written.
+     * @param classesOutputLocator The directory where classes will be generated.
+     * @param resourcesOutputLocator The directory where velocity.properties will be written.
      * @param velocityEngine The Velocity engine.
      * @param templateGeneratorBuilder The template generator builder.
      */
-    public VelocityTemplateGeneratorFactory(File classesOutputDirectory,
-            File resourcesOutputDirectory, VelocityEngine velocityEngine,
+    public VelocityTemplateGeneratorFactory(OutputLocator classesOutputLocator,
+    		OutputLocator resourcesOutputLocator, VelocityEngine velocityEngine,
             TemplateGeneratorBuilder templateGeneratorBuilder) {
-        this.classesOutputDirectory = classesOutputDirectory;
-        this.resourcesOutputDirectory = resourcesOutputDirectory;
+        this.classesOutputLocator = classesOutputLocator;
+        this.resourcesOutputLocator = resourcesOutputLocator;
         this.velocityEngine = velocityEngine;
         this.templateGeneratorBuilder = templateGeneratorBuilder;
     }
@@ -76,8 +75,8 @@ public class VelocityTemplateGeneratorFa
     @Override
     public TemplateGenerator createTemplateGenerator() {
         return templateGeneratorBuilder
-                .setClassesOutputDirectory(classesOutputDirectory)
-                .setResourcesOutputDirectory(resourcesOutputDirectory)
+                .setClassesOutputLocator(classesOutputLocator)
+                .setResourcesOutputLocator(resourcesOutputLocator)
                 .addResourcesTemplateSuiteGenerator(
                         new VelocityPropertiesGenerator(velocityEngine))
                 .addClassesTemplateClassGenerator(

Modified: tiles/autotag/trunk/tiles-autotag-velocity/src/test/java/org/apache/tiles/autotag/velocity/VelocityDirectiveGeneratorTest.java
URL: http://svn.apache.org/viewvc/tiles/autotag/trunk/tiles-autotag-velocity/src/test/java/org/apache/tiles/autotag/velocity/VelocityDirectiveGeneratorTest.java?rev=1643653&r1=1643652&r2=1643653&view=diff
==============================================================================
--- tiles/autotag/trunk/tiles-autotag-velocity/src/test/java/org/apache/tiles/autotag/velocity/VelocityDirectiveGeneratorTest.java (original)
+++ tiles/autotag/trunk/tiles-autotag-velocity/src/test/java/org/apache/tiles/autotag/velocity/VelocityDirectiveGeneratorTest.java Sun Dec  7 06:47:59 2014
@@ -31,6 +31,8 @@ import java.util.Properties;
 
 import org.apache.commons.io.FileUtils;
 import org.apache.commons.io.IOUtils;
+import org.apache.tiles.autotag.core.DirectoryOutputLocator;
+import org.apache.tiles.autotag.core.OutputLocator;
 import org.apache.tiles.autotag.core.runtime.ModelBody;
 import org.apache.tiles.autotag.model.TemplateClass;
 import org.apache.tiles.autotag.model.TemplateMethod;
@@ -62,10 +64,9 @@ public class VelocityDirectiveGeneratorT
         VelocityEngine velocityEngine = new VelocityEngine(props);
 
         VelocityDirectiveGenerator generator = new VelocityDirectiveGenerator(velocityEngine);
-        File file = File.createTempFile("autotag", null);
-        file.delete();
-        file.mkdir();
-        file.deleteOnExit();
+        File tempDir = new File(System.getProperty("java.io.tmpdir"), "autotag");
+        OutputLocator locator = new DirectoryOutputLocator(tempDir);
+        tempDir.deleteOnExit();
         TemplateSuite suite = new TemplateSuite("tldtest", "Test for TLD docs.");
 
         List<TemplateParameter> params = new ArrayList<TemplateParameter>();
@@ -90,13 +91,13 @@ public class VelocityDirectiveGeneratorT
                 "doStuff", "DoStuff", executeMethod);
         clazz.setDocumentation("Documentation of the DoStuff class.");
 
-        generator.generate(file, "org.apache.tiles.autotag.velocity.test", suite, clazz, null,
+        generator.generate(locator, "org.apache.tiles.autotag.velocity.test", suite, clazz, null,
                            "org.apache.tiles.autotag.velocity.test.Runtime", REQUEST_CLASS);
 
         InputStream expected = getClass()
                 .getResourceAsStream(
                         "/org/apache/tiles/autotag/velocity/test/DoStuffDirective.javat");
-        File effectiveFile = new File(file, "/org/apache/tiles/autotag/velocity/test/DoStuffDirective.java");
+        File effectiveFile = new File(tempDir, "/org/apache/tiles/autotag/velocity/test/DoStuffDirective.java");
         assertTrue(effectiveFile.exists());
         InputStream effective = new FileInputStream(effectiveFile);
         assertTrue(IOUtils.contentEquals(effective, expected));
@@ -125,20 +126,20 @@ public class VelocityDirectiveGeneratorT
 
         suite.addTemplateClass(clazz);
 
-        generator.generate(file, "org.apache.tiles.autotag.velocity.test", suite, clazz, null,
+        generator.generate(locator, "org.apache.tiles.autotag.velocity.test", suite, clazz, null,
                            "org.apache.tiles.autotag.velocity.test.Runtime", REQUEST_CLASS);
 
         expected = getClass()
                 .getResourceAsStream(
                         "/org/apache/tiles/autotag/velocity/test/DoStuffNoBodyDirective.javat");
-        effectiveFile = new File(file, "/org/apache/tiles/autotag/velocity/test/DoStuffNoBodyDirective.java");
+        effectiveFile = new File(tempDir, "/org/apache/tiles/autotag/velocity/test/DoStuffNoBodyDirective.java");
         assertTrue(effectiveFile.exists());
         effective = new FileInputStream(effectiveFile);
         assertTrue(IOUtils.contentEquals(effective, expected));
         effective.close();
         expected.close();
 
-        FileUtils.deleteDirectory(file);
+        FileUtils.deleteDirectory(tempDir);
     }
 
 }

Modified: tiles/autotag/trunk/tiles-autotag-velocity/src/test/java/org/apache/tiles/autotag/velocity/VelocityPropertiesGeneratorTest.java
URL: http://svn.apache.org/viewvc/tiles/autotag/trunk/tiles-autotag-velocity/src/test/java/org/apache/tiles/autotag/velocity/VelocityPropertiesGeneratorTest.java?rev=1643653&r1=1643652&r2=1643653&view=diff
==============================================================================
--- tiles/autotag/trunk/tiles-autotag-velocity/src/test/java/org/apache/tiles/autotag/velocity/VelocityPropertiesGeneratorTest.java (original)
+++ tiles/autotag/trunk/tiles-autotag-velocity/src/test/java/org/apache/tiles/autotag/velocity/VelocityPropertiesGeneratorTest.java Sun Dec  7 06:47:59 2014
@@ -31,6 +31,8 @@ import java.util.Properties;
 
 import org.apache.commons.io.FileUtils;
 import org.apache.commons.io.IOUtils;
+import org.apache.tiles.autotag.core.DirectoryOutputLocator;
+import org.apache.tiles.autotag.core.OutputLocator;
 import org.apache.tiles.autotag.core.runtime.ModelBody;
 import org.apache.tiles.autotag.model.TemplateClass;
 import org.apache.tiles.autotag.model.TemplateMethod;
@@ -63,10 +65,9 @@ public class VelocityPropertiesGenerator
         VelocityEngine velocityEngine = new VelocityEngine(props);
 
         VelocityPropertiesGenerator generator = new VelocityPropertiesGenerator(velocityEngine);
-        File file = File.createTempFile("autotag", null);
-        file.delete();
-        file.mkdir();
-        file.deleteOnExit();
+        File tempDir = new File(System.getProperty("java.io.tmpdir"), "autotag");
+        OutputLocator locator = new DirectoryOutputLocator(tempDir);
+        tempDir.deleteOnExit();
         TemplateSuite suite = new TemplateSuite("tldtest", "Test for TLD docs.");
 
         List<TemplateParameter> params = new ArrayList<TemplateParameter>();
@@ -113,17 +114,17 @@ public class VelocityPropertiesGenerator
 
         suite.addTemplateClass(clazz);
 
-        generator.generate(file, "org.apache.tiles.autotag.velocity.test", suite, null);
+        generator.generate(locator, "org.apache.tiles.autotag.velocity.test", suite, null);
 
         InputStream expected = getClass().getResourceAsStream("/velocity.properties.test");
-        File effectiveFile = new File(file, "META-INF/velocity.properties");
+        File effectiveFile = new File(tempDir, "META-INF/velocity.properties");
         assertTrue(effectiveFile.exists());
         InputStream effective = new FileInputStream(effectiveFile);
         assertTrue(IOUtils.contentEquals(effective, expected));
         effective.close();
         expected.close();
 
-        FileUtils.deleteDirectory(file);
+        FileUtils.deleteDirectory(tempDir);
     }
 
 }

Modified: tiles/autotag/trunk/tiles-autotag-velocity/src/test/java/org/apache/tiles/autotag/velocity/VelocityTemplateGeneratorFactoryTest.java
URL: http://svn.apache.org/viewvc/tiles/autotag/trunk/tiles-autotag-velocity/src/test/java/org/apache/tiles/autotag/velocity/VelocityTemplateGeneratorFactoryTest.java?rev=1643653&r1=1643652&r2=1643653&view=diff
==============================================================================
--- tiles/autotag/trunk/tiles-autotag-velocity/src/test/java/org/apache/tiles/autotag/velocity/VelocityTemplateGeneratorFactoryTest.java (original)
+++ tiles/autotag/trunk/tiles-autotag-velocity/src/test/java/org/apache/tiles/autotag/velocity/VelocityTemplateGeneratorFactoryTest.java Sun Dec  7 06:47:59 2014
@@ -20,11 +20,14 @@
  */
 package org.apache.tiles.autotag.velocity;
 
-import static org.easymock.EasyMock.*;
-import static org.junit.Assert.*;
-
-import java.io.File;
+import static org.easymock.EasyMock.createMock;
+import static org.easymock.EasyMock.expect;
+import static org.easymock.EasyMock.isA;
+import static org.easymock.EasyMock.replay;
+import static org.easymock.EasyMock.verify;
+import static org.junit.Assert.assertSame;
 
+import org.apache.tiles.autotag.core.OutputLocator;
 import org.apache.tiles.autotag.generate.TemplateGenerator;
 import org.apache.tiles.autotag.generate.TemplateGeneratorBuilder;
 import org.apache.velocity.app.VelocityEngine;
@@ -42,24 +45,24 @@ public class VelocityTemplateGeneratorFa
      */
     @Test
     public void testCreateTemplateGenerator() {
-        File classesOutputDirectory = createMock(File.class);
-        File resourcesOutputDirectory = createMock(File.class);
+        OutputLocator classesOutputLocator = createMock(OutputLocator.class);
+        OutputLocator resourcesOutputLocator = createMock(OutputLocator.class);
         VelocityEngine velocityEngine = createMock(VelocityEngine.class);
         TemplateGeneratorBuilder builder = createMock(TemplateGeneratorBuilder.class);
         TemplateGenerator generator = createMock(TemplateGenerator.class);
 
-        expect(builder.setClassesOutputDirectory(classesOutputDirectory)).andReturn(builder);
-        expect(builder.setResourcesOutputDirectory(resourcesOutputDirectory)).andReturn(builder);
+        expect(builder.setClassesOutputLocator(classesOutputLocator)).andReturn(builder);
+        expect(builder.setResourcesOutputLocator(resourcesOutputLocator)).andReturn(builder);
         expect(builder.addResourcesTemplateSuiteGenerator(isA(VelocityPropertiesGenerator.class))).andReturn(builder);
         expect(builder.addClassesTemplateClassGenerator(isA(VelocityDirectiveGenerator.class))).andReturn(builder);
         expect(builder.build()).andReturn(generator);
 
-        replay(classesOutputDirectory, resourcesOutputDirectory, velocityEngine, builder, generator);
+        replay(classesOutputLocator, resourcesOutputLocator, velocityEngine, builder, generator);
         VelocityTemplateGeneratorFactory factory = new VelocityTemplateGeneratorFactory(
-                classesOutputDirectory, resourcesOutputDirectory,
+                classesOutputLocator, resourcesOutputLocator,
                 velocityEngine, builder);
         assertSame(generator, factory.createTemplateGenerator());
-        verify(classesOutputDirectory, resourcesOutputDirectory, velocityEngine, builder, generator);
+        verify(classesOutputLocator, resourcesOutputLocator, velocityEngine, builder, generator);
     }
 
 }