Revision: 14771
          http://gate.svn.sourceforge.net/gate/?rev=14771&view=rev
Author:   ian_roberts
Date:     2011-12-15 14:01:29 +0000 (Thu, 15 Dec 2011)
Log Message:
-----------
- Use the new GWT plugin mechanism to download GWT JARs using Ivy, so it is no
  longer necessary to install a standalone GWT SDK and set the GWT_HOME env var.
- Add a warning header to .groovy and .xml files that are generated from a
  .template to make it clearer that they are generated and you should edit the
  template rather than the target file.

Modified Paths:
--------------
    mimir/trunk/build.properties
    mimir/trunk/build.xml
    mimir/trunk/plugins/db-h2/build.xml
    mimir/trunk/plugins/measurements/build.xml
    mimir/trunk/plugins/sesame/build.xml
    mimir/trunk/plugins/sparql/build.xml

Added Paths:
-----------
    mimir/trunk/etc/
    mimir/trunk/etc/generated-header.java
    mimir/trunk/etc/generated-header.xml
    mimir/trunk/mimir-cloud/grails-app/conf/BuildConfig.groovy.template
    mimir/trunk/mimir-web/grails-app/conf/BuildConfig.groovy.template

Removed Paths:
-------------
    mimir/trunk/mimir-cloud/grails-app/conf/BuildConfig.groovy
    mimir/trunk/mimir-web/grails-app/conf/BuildConfig.groovy

Property Changed:
----------------
    mimir/trunk/mimir-cloud/grails-app/conf/
    mimir/trunk/mimir-web/grails-app/conf/

Modified: mimir/trunk/build.properties
===================================================================
--- mimir/trunk/build.properties        2011-12-15 13:17:27 UTC (rev 14770)
+++ mimir/trunk/build.properties        2011-12-15 14:01:29 UTC (rev 14771)
@@ -6,5 +6,6 @@
 grails-plugin.dirname=${grails-plugin.name}
 grails-demo-webapp.name=mimir-demo
 grails-demo-webapp.dirname=${grails-demo-webapp.name}
-
-
+grails-cloud-webapp.name=mimir-cloud
+grails-cloud-webapp.dirname=${grails-cloud-webapp.name}
+gwt.version=2.4.0

Modified: mimir/trunk/build.xml
===================================================================
--- mimir/trunk/build.xml       2011-12-15 13:17:27 UTC (rev 14770)
+++ mimir/trunk/build.xml       2011-12-15 14:01:29 UTC (rev 14771)
@@ -7,9 +7,13 @@
   <property name="grails-plugin.dir" location="${grails-plugin.dirname}" />
   <property name="grails-demo-webapp.dir"
             location="${grails-demo-webapp.dirname}" />
+  <property name="grails-cloud-webapp.dir"
+            location="${grails-cloud-webapp.dirname}" />
   
   <property file="mimir-web/application.properties"  prefix="mimir.web." />
 
+  <property name="generated-header.java" location="etc/generated-header.java" 
/>
+
   <!-- Load the AntContrib tasks -->
   <taskdef resource="net/sf/antcontrib/antcontrib.properties">
   <classpath>
@@ -60,6 +64,23 @@
 
   <target name="grails.command" depends="detect.os, grails.command.win, 
grails.command.notwin" />
 
+  <macrodef name="resolve-groovy-templates">
+    <attribute name="dir" />
+    <sequential>
+      <copy todir="@{dir}" overwrite="true">
+        <fileset dir="@{dir}" includes="**/*.groovy.template" />
+        <globmapper from="*.template" to="*" />
+        <filterset>
+          <filter token="version" value="${app.version}" />
+          <filter token="gwtversion" value="${gwt.version}" />
+        </filterset>
+        <filterchain>
+          <concatfilter prepend="${generated-header.java}" />
+        </filterchain>
+      </copy>
+    </sequential>
+  </macrodef>
+
   <target name="core">
     <ant dir="${mimir-core.dir}" target="publish" />
     <ant dir="${mimir-client.dir}" target="publish" />
@@ -73,15 +94,10 @@
   </target>
 
   <target name="grails-plugin" depends="grails.command">
-       <!-- Update the version for the mimir-web plugin -->
-       <delete file="${grails-plugin.dir}/plugin.xml" />
-    <copy file="${grails-plugin.dir}/MimirWebGrailsPlugin.groovy.template" 
-           tofile="${grails-plugin.dir}/MimirWebGrailsPlugin.groovy"
-          overwrite="true" >
-      <filterset>
-        <filter token="version" value="${app.version}" />
-      </filterset>
-    </copy>
+    <!-- Update the version for the mimir-web plugin -->
+    <delete file="${grails-plugin.dir}/plugin.xml" />
+
+    <resolve-groovy-templates dir="${grails-plugin.dir}" />
     
     <grails dir="${grails-plugin.dir}">
       <arg value="package-plugin" />
@@ -89,6 +105,10 @@
     
   </target>
 
+  <target name="prepare-cloud-app">
+    <resolve-groovy-templates dir="${grails-cloud-webapp.dir}" />
+  </target>
+
   <target name="check-demo-app">
     <!-- If the directory already exists, exit -->
     <available property="app-exists" file="${grails-demo-webapp.dir}" />  
@@ -119,10 +139,16 @@
       <arg value="${grails-demo-webapp.name}" />
     </grails>
     
-       <echo 
file="${grails-demo-webapp.dir}/grails-app/conf/UrlMappings.groovy"
-           >class UrlMappings { static mappings = {} }</echo>
+    <echo file="${grails-demo-webapp.dir}/grails-app/conf/UrlMappings.groovy"
+      >class UrlMappings { static mappings = {} }</echo>
+    <echo file="${grails-demo-webapp.dir}/grails-app/conf/BuildConfig.groovy"
+      append="true">
+
+// version of GWT to use - this will be downloaded automatically using ivy
+gwt.version = "${gwt.version}"
+</echo>
        
-       <grails dir="${grails-demo-webapp.dir}">
+    <grails dir="${grails-demo-webapp.dir}">
       <arg value="clean" />
     </grails>
     
@@ -161,7 +187,7 @@
     mean.</echo>
   </target>  
   
-  <target name="all" depends="core, plugins, grails-plugin" />
+  <target name="all" depends="core, plugins, grails-plugin, prepare-cloud-app" 
/>
 
   <target name="clean" depends="grails.command">
     <ant dir="${mimir-core.dir}" target="clean" />

Added: mimir/trunk/etc/generated-header.java
===================================================================
--- mimir/trunk/etc/generated-header.java                               (rev 0)
+++ mimir/trunk/etc/generated-header.java       2011-12-15 14:01:29 UTC (rev 
14771)
@@ -0,0 +1,8 @@
+/*
+ * This is a generated file - do not edit!  
+ * =======================================
+ *
+ * To make changes to this file, edit the corresponding .template file and then
+ * re-generate using the relevant ant target.
+ */
+


Property changes on: mimir/trunk/etc/generated-header.java
___________________________________________________________________
Added: svn:keywords
   + Id
Added: svn:eol-style
   + native

Added: mimir/trunk/etc/generated-header.xml
===================================================================
--- mimir/trunk/etc/generated-header.xml                                (rev 0)
+++ mimir/trunk/etc/generated-header.xml        2011-12-15 14:01:29 UTC (rev 
14771)
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+This is a generated file - do not edit!
+=======================================
+
+To make changes to this file, edit the corresponding .template file and then
+re-generate using the relevant ant target.
+-->


Property changes on: mimir/trunk/mimir-cloud/grails-app/conf
___________________________________________________________________
Added: svn:ignore
   + BuildConfig.groovy


Deleted: mimir/trunk/mimir-cloud/grails-app/conf/BuildConfig.groovy
===================================================================
--- mimir/trunk/mimir-cloud/grails-app/conf/BuildConfig.groovy  2011-12-15 
13:17:27 UTC (rev 14770)
+++ mimir/trunk/mimir-cloud/grails-app/conf/BuildConfig.groovy  2011-12-15 
14:01:29 UTC (rev 14771)
@@ -1,34 +0,0 @@
-grails.project.class.dir = "target/classes"
-grails.project.test.class.dir = "target/test-classes"
-grails.project.test.reports.dir = "target/test-reports"
-//grails.project.war.file = "target/${appName}-${appVersion}.war"
-grails.project.dependency.resolution = {
-    // inherit Grails' default dependencies
-    inherits("global") {
-        // uncomment to disable ehcache
-        // excludes 'ehcache'
-    }
-    log "warn" // log level of Ivy resolver, either 'error', 'warn', 'info', 
'debug' or 'verbose'
-    repositories {
-        grailsPlugins()
-        grailsHome()
-        grailsCentral()
-
-        // uncomment the below to enable remote dependency resolution
-        // from public Maven repositories
-        //mavenLocal()
-        mavenCentral()
-        //mavenRepo "http://snapshots.repository.codehaus.org";
-        //mavenRepo "http://repository.codehaus.org";
-        //mavenRepo "http://download.java.net/maven/2/";
-        //mavenRepo "http://repository.jboss.com/maven2/";
-    }
-    dependencies {
-        // specify dependencies here under either 'build', 'compile', 
'runtime', 'test' or 'provided' scopes eg.
-        // runtime 'mysql:mysql-connector-java:5.1.5'
-      compile('org.apache.commons:commons-compress:1.1')
-    }
-}
-
-// mimir-web inline plugin
-grails.plugin.location.'mimir-web' = '../mimir-web'

Copied: mimir/trunk/mimir-cloud/grails-app/conf/BuildConfig.groovy.template 
(from rev 14767, mimir/trunk/mimir-cloud/grails-app/conf/BuildConfig.groovy)
===================================================================
--- mimir/trunk/mimir-cloud/grails-app/conf/BuildConfig.groovy.template         
                (rev 0)
+++ mimir/trunk/mimir-cloud/grails-app/conf/BuildConfig.groovy.template 
2011-12-15 14:01:29 UTC (rev 14771)
@@ -0,0 +1,39 @@
+grails.project.class.dir = "target/classes"
+grails.project.test.class.dir = "target/test-classes"
+grails.project.test.reports.dir = "target/test-reports"
+//grails.project.war.file = "target/${appName}-${appVersion}.war"
+grails.project.dependency.resolution = {
+    // inherit Grails' default dependencies
+    inherits("global") {
+        // uncomment to disable ehcache
+        // excludes 'ehcache'
+    }
+    log "warn" // log level of Ivy resolver, either 'error', 'warn', 'info', 
'debug' or 'verbose'
+    repositories {
+        grailsPlugins()
+        grailsHome()
+        grailsCentral()
+
+        // uncomment the below to enable remote dependency resolution
+        // from public Maven repositories
+        //mavenLocal()
+        mavenCentral()
+        //mavenRepo "http://snapshots.repository.codehaus.org";
+        //mavenRepo "http://repository.codehaus.org";
+        //mavenRepo "http://download.java.net/maven/2/";
+        //mavenRepo "http://repository.jboss.com/maven2/";
+    }
+    dependencies {
+        // specify dependencies here under either 'build', 'compile', 
'runtime', 'test' or 'provided' scopes eg.
+        // runtime 'mysql:mysql-connector-java:5.1.5'
+      compile('org.apache.commons:commons-compress:1.1')
+    }
+}
+
+// mimir-web inline plugin
+grails.plugin.location.'mimir-web' = '../mimir-web'
+
+// Version of GWT to use - this will be downloaded automatically using Ivy
+gwt {
+  version = "@gwtversion@"
+}


Property changes on: mimir/trunk/mimir-web/grails-app/conf
___________________________________________________________________
Added: svn:ignore
   + BuildConfig.groovy


Deleted: mimir/trunk/mimir-web/grails-app/conf/BuildConfig.groovy
===================================================================
--- mimir/trunk/mimir-web/grails-app/conf/BuildConfig.groovy    2011-12-15 
13:17:27 UTC (rev 14770)
+++ mimir/trunk/mimir-web/grails-app/conf/BuildConfig.groovy    2011-12-15 
14:01:29 UTC (rev 14771)
@@ -1,48 +0,0 @@
-/*
- *  BuildConfig.groovy
- *
- *  Copyright (c) 2007-2011, The University of Sheffield.
- *
- *  This file is part of GATE Mímir (see http://gate.ac.uk/family/mimir.html), 
- *  and is free software, licenced under the GNU Lesser General Public License,
- *  Version 3, June 2007 (also included with this distribution as file
- *  LICENCE-LGPL3.html).
- *
- *  $Id$
- */
-
-grails.project.class.dir = "target/classes"
-grails.project.test.class.dir = "target/test-classes"
-grails.project.test.reports.dir        = "target/test-reports"
-//grails.project.war.file = "target/${appName}-${appVersion}.war"
-grails.project.dependency.resolution = {
-    // inherit Grails' default dependencies
-    inherits( "global" ) {
-        // uncomment to disable ehcache
-        // excludes 'ehcache'
-    }
-    log "warn" // log level of Ivy resolver, either 'error', 'warn', 'info', 
'debug' or 'verbose'
-    repositories {        
-        grailsPlugins()
-        grailsHome()
-       grailsCentral()
-
-        // uncomment the below to enable remote dependency resolution
-        // from public Maven repositories
-        //mavenLocal()
-        //mavenCentral()
-        //mavenRepo "http://snapshots.repository.codehaus.org";
-        //mavenRepo "http://repository.codehaus.org";
-        //mavenRepo "http://download.java.net/maven/2/";
-        //mavenRepo "http://repository.jboss.com/maven2/";
-    }
-    dependencies {
-        // specify dependencies here under either 'build', 'compile', 
'runtime', 'test' or 'provided' scopes eg.
-
-        // runtime 'mysql:mysql-connector-java:5.1.5'
-    }
-    plugins {
-      compile ':gwt:0.6.1'
-      runtime ":webflow:$grailsVersion"
-    }
-}

Copied: mimir/trunk/mimir-web/grails-app/conf/BuildConfig.groovy.template (from 
rev 14767, mimir/trunk/mimir-web/grails-app/conf/BuildConfig.groovy)
===================================================================
--- mimir/trunk/mimir-web/grails-app/conf/BuildConfig.groovy.template           
                (rev 0)
+++ mimir/trunk/mimir-web/grails-app/conf/BuildConfig.groovy.template   
2011-12-15 14:01:29 UTC (rev 14771)
@@ -0,0 +1,52 @@
+/*
+ *  BuildConfig.groovy
+ *
+ *  Copyright (c) 2007-2011, The University of Sheffield.
+ *
+ *  This file is part of GATE Mímir (see http://gate.ac.uk/family/mimir.html), 
+ *  and is free software, licenced under the GNU Lesser General Public License,
+ *  Version 3, June 2007 (also included with this distribution as file
+ *  LICENCE-LGPL3.html).
+ *
+ *  $Id$
+ */
+
+grails.project.class.dir = "target/classes"
+grails.project.test.class.dir = "target/test-classes"
+grails.project.test.reports.dir        = "target/test-reports"
+//grails.project.war.file = "target/${appName}-${appVersion}.war"
+grails.project.dependency.resolution = {
+    // inherit Grails' default dependencies
+    inherits( "global" ) {
+        // uncomment to disable ehcache
+        // excludes 'ehcache'
+    }
+    log "warn" // log level of Ivy resolver, either 'error', 'warn', 'info', 
'debug' or 'verbose'
+    repositories {        
+        grailsPlugins()
+        grailsHome()
+       grailsCentral()
+
+        // uncomment the below to enable remote dependency resolution
+        // from public Maven repositories
+        //mavenLocal()
+        //mavenCentral()
+        //mavenRepo "http://snapshots.repository.codehaus.org";
+        //mavenRepo "http://repository.codehaus.org";
+        //mavenRepo "http://download.java.net/maven/2/";
+        //mavenRepo "http://repository.jboss.com/maven2/";
+    }
+    dependencies {
+        // specify dependencies here under either 'build', 'compile', 
'runtime', 'test' or 'provided' scopes eg.
+
+        // runtime 'mysql:mysql-connector-java:5.1.5'
+    }
+    plugins {
+      compile ':gwt:0.6.1'
+      runtime ":webflow:$grailsVersion"
+    }
+}
+
+gwt {
+  version = "@gwtversion@"
+}

Modified: mimir/trunk/plugins/db-h2/build.xml
===================================================================
--- mimir/trunk/plugins/db-h2/build.xml 2011-12-15 13:17:27 UTC (rev 14770)
+++ mimir/trunk/plugins/db-h2/build.xml 2011-12-15 14:01:29 UTC (rev 14771)
@@ -5,6 +5,7 @@
   <!-- Common Properties -->
   <property environment="env" />
   <property file="../../build.properties" />
+  <property name="generated-header.xml" 
location="../../etc/generated-header.xml" />
 
        <property name="core-home" location="../../${mimir-core.dirname}"/>
        
@@ -90,6 +91,12 @@
       <filterset>
         <filter token="jar" value="${jar.name}" />
       </filterset>
+      <filterchain>
+        <linecontainsregexp negate="true">
+          <regexp pattern="^&lt;\?xml" />
+        </linecontainsregexp>
+        <concatfilter prepend="${generated-header.xml}" />
+      </filterchain>
     </copy>
   </target>
 </project>

Modified: mimir/trunk/plugins/measurements/build.xml
===================================================================
--- mimir/trunk/plugins/measurements/build.xml  2011-12-15 13:17:27 UTC (rev 
14770)
+++ mimir/trunk/plugins/measurements/build.xml  2011-12-15 14:01:29 UTC (rev 
14771)
@@ -5,6 +5,7 @@
   <!-- Common Properties -->
   <property environment="env" />
   <property file="../../build.properties" />
+  <property name="generated-header.xml" 
location="../../etc/generated-header.xml" />
 
   <property name="core-home" location="../../${mimir-core.dirname}"/>
   
@@ -63,6 +64,12 @@
       <filterset>
         <filter token="jar" value="${jar.name}" />
       </filterset>
+      <filterchain>
+        <linecontainsregexp negate="true">
+          <regexp pattern="^&lt;\?xml" />
+        </linecontainsregexp>
+        <concatfilter prepend="${generated-header.xml}" />
+      </filterchain>
     </copy>
   </target>
   

Modified: mimir/trunk/plugins/sesame/build.xml
===================================================================
--- mimir/trunk/plugins/sesame/build.xml        2011-12-15 13:17:27 UTC (rev 
14770)
+++ mimir/trunk/plugins/sesame/build.xml        2011-12-15 14:01:29 UTC (rev 
14771)
@@ -5,6 +5,7 @@
   <!-- Common Properties -->
   <property environment="env" />
   <property file="../../build.properties" />
+  <property name="generated-header.xml" 
location="../../etc/generated-header.xml" />
 
   <property name="core-home" location="../../${mimir-core.dirname}"/>
        
@@ -62,12 +63,18 @@
   </target>
   
   <target name="creole.xml">
-       <copy overwrite="true" file="creole.xml.template" tofile="creole.xml">
-        <filterset>
-          <filter token="jar" value="${jar.name}" />
-        </filterset>
-      </copy>
-    </target>
+    <copy overwrite="true" file="creole.xml.template" tofile="creole.xml">
+      <filterset>
+        <filter token="jar" value="${jar.name}" />
+      </filterset>
+      <filterchain>
+        <linecontainsregexp negate="true">
+          <regexp pattern="^&lt;\?xml" />
+        </linecontainsregexp>
+        <concatfilter prepend="${generated-header.xml}" />
+      </filterchain>
+    </copy>
+  </target>
   
   
   <target name="distro" depends="jar, javadoc" />

Modified: mimir/trunk/plugins/sparql/build.xml
===================================================================
--- mimir/trunk/plugins/sparql/build.xml        2011-12-15 13:17:27 UTC (rev 
14770)
+++ mimir/trunk/plugins/sparql/build.xml        2011-12-15 14:01:29 UTC (rev 
14771)
@@ -5,6 +5,7 @@
   <!-- Common Properties -->
   <property environment="env" />
   <property file="../../build.properties" />
+  <property name="generated-header.xml" 
location="../../etc/generated-header.xml" />
 
   <property name="core-home" location="../../${mimir-core.dirname}"/>
        
@@ -47,12 +48,18 @@
   </target>  
   
   <target name="creole.xml">
-       <copy overwrite="true" file="creole.xml.template" tofile="creole.xml">
-        <filterset>
-          <filter token="jar" value="${jar.name}" />
-        </filterset>
-      </copy>
-    </target>  
+    <copy overwrite="true" file="creole.xml.template" tofile="creole.xml">
+      <filterset>
+        <filter token="jar" value="${jar.name}" />
+      </filterset>
+      <filterchain>
+        <linecontainsregexp negate="true">
+          <regexp pattern="^&lt;\?xml" />
+        </linecontainsregexp>
+        <concatfilter prepend="${generated-header.xml}" />
+      </filterchain>
+    </copy>
+  </target>  
   
   <target name="distro" depends="jar, javadoc" />
   

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


------------------------------------------------------------------------------
10 Tips for Better Server Consolidation
Server virtualization is being driven by many needs.  
But none more important than the need to reduce IT complexity 
while improving strategic productivity.  Learn More! 
http://www.accelacomm.com/jaw/sdnl/114/51507609/
_______________________________________________
GATE-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/gate-cvs

Reply via email to