Author: antonio
Date: Thu Dec 30 22:15:59 2004
New Revision: 123772

URL: http://svn.apache.org/viewcvs?view=rev&rev=123772
Log:
Use macrodef
Modified:
   cocoon/branches/BRANCH_2_1_X/tools/ide/eclipse/blocks-classpath.xsl

Modified: cocoon/branches/BRANCH_2_1_X/tools/ide/eclipse/blocks-classpath.xsl
Url: 
http://svn.apache.org/viewcvs/cocoon/branches/BRANCH_2_1_X/tools/ide/eclipse/blocks-classpath.xsl?view=diff&rev=123772&p1=cocoon/branches/BRANCH_2_1_X/tools/ide/eclipse/blocks-classpath.xsl&r1=123771&p2=cocoon/branches/BRANCH_2_1_X/tools/ide/eclipse/blocks-classpath.xsl&r2=123772
==============================================================================
--- cocoon/branches/BRANCH_2_1_X/tools/ide/eclipse/blocks-classpath.xsl 
(original)
+++ cocoon/branches/BRANCH_2_1_X/tools/ide/eclipse/blocks-classpath.xsl Thu Dec 
30 22:15:59 2004
@@ -23,6 +23,101 @@
     <xsl:template match="/">
         <project default="generate-customized-eclipse-project" basedir="." 
name="blocks-eclipse">
             <description>Autogenerated Ant build file that builds customized 
eclipse project for selected blocks.</description>
+
+            <macrodef name="test-include-block">
+                <attribute name="name"/>
+                <sequential>
+                   <condition property="[EMAIL PROTECTED]">
+                  <not>
+                    <istrue value="[EMAIL PROTECTED]"/>
+                  </not>
+                </condition>
+                <condition property="[EMAIL PROTECTED]">
+                  <isfalse value="[EMAIL PROTECTED]"/>
+                </condition>
+                </sequential>
+            </macrodef>
+
+            <macrodef name="eclipseclasspath-block">
+                <attribute name="name"/>
+                <sequential>
+                    <!-- block src and test directory -->
+                    <if>
+                        <available file="${{blocks}}/@{{name}}/java" 
type="dir"/>
+                        <then>
+                            <path id="[EMAIL PROTECTED]">
+                                <dirset dir="${{blocks}}/@{{name}}">
+                                    <include name="java"/>
+                                    <include name="test"/>
+                                </dirset>
+                            </path>
+                            <property name="[EMAIL PROTECTED]" refid="[EMAIL 
PROTECTED]"/>
+                            <replace file="${{build.temp}}/classpath-temp.xml"
+                                    token="@eclipse-src@" value="[EMAIL 
PROTECTED]@eclipse-src@"/>
+                        </then>
+                    </if>
+                    <!-- block mocks directory -->
+                    <if>
+                        <available file="${{blocks}}/@{{name}}/mocks" 
type="dir"/>
+                        <then>
+                            <path id="[EMAIL PROTECTED]">
+                                <dirset dir="${{blocks}}/@{{name}}">
+                                    <include name="**/mocks"/>
+                                </dirset>
+                            </path>
+                            <property name="[EMAIL PROTECTED]" refid="[EMAIL 
PROTECTED]"/>
+                            <replace file="${{build.temp}}/classpath-temp.xml"
+                                    token="@eclipse-mocks@" value="[EMAIL 
PROTECTED]@eclipse-mocks@"/>
+                        </then>
+                    </if>
+                    <!-- block lib directory (deprecated) -->
+                    <if>
+                        <available file="${{blocks}}/@{{name}}/lib" 
type="dir"/>
+                        <then>
+                            <path id="[EMAIL PROTECTED]">
+                                <fileset dir="${{blocks}}/@{{name}}">
+                                    <include name="**/*.jar"/>
+                                </fileset>
+                            </path>
+                            <property name="[EMAIL PROTECTED]" refid="[EMAIL 
PROTECTED]"/>
+                            <replace file="${{build.temp}}/classpath-temp.xml"
+                                    token="@eclipse-libs@" value="[EMAIL 
PROTECTED]@eclipse-libs@"/>
+                        </then>
+                    </if>
+                </sequential>
+            </macrodef>
+
+            <macrodef name="include-lib-block">
+                <attribute name="name"/>
+                <attribute name="lib-name"/>
+                <sequential>
+                    <if>
+                        <not>
+                            <istrue value="[EMAIL PROTECTED]"/>
+                        </not>
+                        <then>
+                            <property name="[EMAIL PROTECTED]" value="true"/>
+                            <path id="[EMAIL PROTECTED]@{{lib-name}}">
+                                <fileset dir="${{lib.optional}}">
+                                    <include name="@{{lib-name}}*.jar"/>
+                                </fileset>
+                            </path>
+                            <property name="[EMAIL PROTECTED]@{{lib-name}}" 
refid="[EMAIL PROTECTED]@{{lib-name}}"/>
+                            <!-- The new lib cannot be empty -->
+                            <if>
+                                <not>
+                                    <equals arg1="[EMAIL 
PROTECTED]@{{lib-name}}}}" arg2=""/>
+                                </not>
+                                <then>
+                                    <replace 
file="${{build.temp}}/classpath-temp.xml"
+                                            token="@eclipse-libs@" 
value="[EMAIL PROTECTED]@[EMAIL PROTECTED]@"/>
+                                </then>
+                            </if>
+                        </then>
+                    </if>
+                </sequential>
+            </macrodef>
+
             <xsl:apply-templates select="module"/>
         </project>
     </xsl:template>
@@ -34,14 +129,7 @@
         <target name="init">
             <xsl:for-each select="$cocoon-blocks">
                 <xsl:variable name="block-name" 
select="substring-after(@name,'cocoon-block-')"/>
-                <condition property="include.block.{$block-name}">
-                    <not>
-                        <istrue value="${{exclude.block.{$block-name}}}"/>
-                    </not>
-                </condition>
-                <condition property="internal.exclude.block.{$block-name}">
-                    <isfalse value="${{include.block.{$block-name}}}"/>
-                </condition>
+                <test-include-block name="{$block-name}"/>
             </xsl:for-each>
 
             <!-- prepare the various paths that will form the project -->
@@ -156,77 +244,11 @@
         <xsl:variable name="cocoon-block-dependencies" 
select="depend[starts-with(@project,'cocoon-block-')]"/>
 
         <target name="[EMAIL PROTECTED]" 
unless="internal.exclude.block.{$block-name}">
-            <!-- block src and test directory -->
-            <if>
-                <available file="${{blocks}}/{$block-name}/java" type="dir"/>
-                <then>
-                    <path id="src-{$block-name}">
-                        <dirset dir="${{blocks}}/{$block-name}">
-                            <include name="java"/>
-                            <include name="test"/>
-                        </dirset>
-                    </path>
-                    <property name="src-{$block-name}" 
refid="src-{$block-name}"/>
-                    <replace file="${{build.temp}}/classpath-temp.xml"
-                            token="@eclipse-src@" value="[EMAIL PROTECTED]@"/>
-                </then>
-            </if>
-            <!-- block mocks directory -->
-            <if>
-                <available file="${{blocks}}/{$block-name}/mocks" type="dir"/>
-                <then>
-                    <path id="mocks-{$block-name}">
-                        <dirset dir="${{blocks}}/{$block-name}">
-                            <include name="**/mocks"/>
-                        </dirset>
-                    </path>
-                    <property name="mocks-{$block-name}" 
refid="mocks-{$block-name}"/>
-                    <replace file="${{build.temp}}/classpath-temp.xml"
-                            token="@eclipse-mocks@" value="[EMAIL 
PROTECTED]@"/>
-                </then>
-            </if>
-
-            <!-- block lib directory (deprecated) -->
-            <if>
-                <available file="${{blocks}}/{$block-name}/lib" type="dir"/>
-                <then>
-                    <path id="lib-{$block-name}">
-                        <fileset dir="${{blocks}}/{$block-name}">
-                            <include name="**/*.jar"/>
-                        </fileset>
-                    </path>
-                    <property name="lib-{$block-name}" 
refid="lib-{$block-name}"/>
-                    <replace file="${{build.temp}}/classpath-temp.xml"
-                            token="@eclipse-libs@" value="[EMAIL PROTECTED]@"/>
-                </then>
-            </if>
+            <eclipseclasspath-block name="{$block-name}"/>
             <!-- Add optional libraries used by this block -->
             <xsl:if test="library[not(@bundle='false')]">
                 <xsl:for-each select="library[not(@bundle='false')]">
-                    <if>
-                        <not>
-                            <istrue value="[EMAIL PROTECTED]"/>
-                        </not>
-                        <then>
-                            <property name="[EMAIL PROTECTED]" value="true"/>
-                            <path id="[EMAIL PROTECTED]">
-                                <fileset dir="${{lib.optional}}">
-                                    <include name="[EMAIL PROTECTED]"/>
-                                </fileset>
-                            </path>
-                            <property name="[EMAIL PROTECTED]" refid="[EMAIL 
PROTECTED]"/>
-                            <!-- The new lib cannot be empty -->
-                            <if>
-                                <not>
-                                    <equals arg1="[EMAIL PROTECTED]" arg2=""/>
-                                </not>
-                                <then>
-                                    <replace 
file="${{build.temp}}/classpath-temp.xml"
-                                            token="@eclipse-libs@" 
value="[EMAIL PROTECTED]@eclipse-libs@"/>
-                                </then>
-                            </if>
-                        </then>
-                    </if>
+                    <include-lib-block name="{$block-name}" lib-name="[EMAIL 
PROTECTED]"/>
                 </xsl:for-each>
             </xsl:if>
         </target>

Reply via email to