]> _ Git - cubeextranet.git/commitdiff
(no commit message)
authorvincent@cubedesigners.com <vincent@cubedesigners.com@f5622870-0f3c-0410-866d-9cb505b7a8ef>
Fri, 24 Jan 2014 15:53:54 +0000 (15:53 +0000)
committervincent@cubedesigners.com <vincent@cubedesigners.com@f5622870-0f3c-0410-866d-9cb505b7a8ef>
Fri, 24 Jan 2014 15:53:54 +0000 (15:53 +0000)
13 files changed:
fluidbook/tools/FWSTK_Resources/build.xml
fluidbook/tools/FWSTK_Resources/nbproject/build-impl.xml
fluidbook/tools/FWSTK_Resources/nbproject/genfiles.properties
fluidbook/tools/FWSTK_Resources/nbproject/private/private.properties
fluidbook/tools/FWSTK_Resources/nbproject/private/private.xml
fluidbook/tools/fwstk/nbproject/build-impl.xml
fluidbook/tools/fwstk/nbproject/genfiles.properties
fluidbook/tools/fwstk/nbproject/private/config.properties
fluidbook/tools/fwstk/nbproject/private/configs/Extract_texts.properties
fluidbook/tools/fwstk/nbproject/private/private.xml
inc/ws/Controlleur/class.ws.maintenance.php
inc/ws/DAO/class.ws.dao.book.php
inc/ws/Metier/class.ws.document.php

index 9491597e015d71daa9b466bcafc1b2ad20bffc04..f12672826a3cc2b74476fc8766d50351a5a56ede 100644 (file)
@@ -51,8 +51,7 @@
       -init-macrodef-junit:     defines macro for junit execution\r
       -init-macrodef-debug:     defines macro for class debugging\r
       -init-macrodef-java:      defines macro for class execution\r
-      -do-jar-with-manifest:    JAR building (if you are using a manifest)\r
-      -do-jar-without-manifest: JAR building (if you are not using a manifest)\r
+      -do-jar:                  JAR building\r
       run:                      execution of project \r
       -javadoc-build:           Javadoc generation\r
       test-report:              JUnit report generation\r
index 1683df74b23593f115e937221ec27fb20e9da3ea..aa5c322c10b3414283352e1bc2a6d35f6179c881 100644 (file)
@@ -12,18 +12,18 @@ is divided into following sections:
   - execution\r
   - debugging\r
   - javadoc\r
-  - junit compilation\r
-  - junit execution\r
-  - junit debugging\r
+  - test compilation\r
+  - test execution\r
+  - test debugging\r
   - applet\r
   - cleanup\r
 \r
         -->\r
 <project xmlns:j2seproject1="http://www.netbeans.org/ns/j2se-project/1" xmlns:j2seproject3="http://www.netbeans.org/ns/j2se-project/3" xmlns:jaxrpc="http://www.netbeans.org/ns/j2se-project/jax-rpc" basedir=".." default="default" name="FWSTK_Resources-impl">\r
-    <fail message="Please build using Ant 1.7.1 or higher.">\r
+    <fail message="Please build using Ant 1.8.0 or higher.">\r
         <condition>\r
             <not>\r
-                <antversion atleast="1.7.1"/>\r
+                <antversion atleast="1.8.0"/>\r
             </not>\r
         </condition>\r
     </fail>\r
@@ -79,6 +79,7 @@ is divided into following sections:
         <property file="nbproject/project.properties"/>\r
     </target>\r
     <target depends="-pre-init,-init-private,-init-libraries,-init-user,-init-project,-init-macrodef-property" name="-do-init">\r
+        <property name="platform.java" value="${java.home}/bin/java"/>\r
         <available file="${manifest.file}" property="manifest.available"/>\r
         <condition property="splashscreen.available">\r
             <and>\r
@@ -96,10 +97,11 @@ is divided into following sections:
                 </not>\r
             </and>\r
         </condition>\r
-        <condition property="manifest.available+main.class">\r
+        <condition property="profile.available">\r
             <and>\r
-                <isset property="manifest.available"/>\r
-                <isset property="main.class.available"/>\r
+                <isset property="javac.profile"/>\r
+                <length length="0" string="${javac.profile}" when="greater"/>\r
+                <matches pattern="1\.[89](\..*)?" string="${javac.source}"/>\r
             </and>\r
         </condition>\r
         <condition property="do.archive">\r
@@ -116,12 +118,6 @@ is divided into following sections:
                 </not>\r
             </and>\r
         </condition>\r
-        <condition property="manifest.available+main.class+mkdist.available">\r
-            <and>\r
-                <istrue value="${manifest.available+main.class}"/>\r
-                <isset property="do.mkdist"/>\r
-            </and>\r
-        </condition>\r
         <condition property="do.archive+manifest.available">\r
             <and>\r
                 <isset property="manifest.available"/>\r
@@ -140,24 +136,12 @@ is divided into following sections:
                 <istrue value="${do.archive}"/>\r
             </and>\r
         </condition>\r
-        <condition property="do.archive+manifest.available+main.class">\r
+        <condition property="do.archive+profile.available">\r
             <and>\r
-                <istrue value="${manifest.available+main.class}"/>\r
+                <isset property="profile.available"/>\r
                 <istrue value="${do.archive}"/>\r
             </and>\r
         </condition>\r
-        <condition property="manifest.available-mkdist.available">\r
-            <or>\r
-                <istrue value="${manifest.available}"/>\r
-                <isset property="do.mkdist"/>\r
-            </or>\r
-        </condition>\r
-        <condition property="manifest.available+main.class-mkdist.available">\r
-            <or>\r
-                <istrue value="${manifest.available+main.class}"/>\r
-                <isset property="do.mkdist"/>\r
-            </or>\r
-        </condition>\r
         <condition property="have.tests">\r
             <or>\r
                 <available file="${test.src.dir}"/>\r
@@ -181,6 +165,7 @@ is divided into following sections:
             </and>\r
         </condition>\r
         <property name="run.jvmargs" value=""/>\r
+        <property name="run.jvmargs.ide" value=""/>\r
         <property name="javac.compilerargs" value=""/>\r
         <property name="work.dir" value="${basedir}"/>\r
         <condition property="no.deps">\r
@@ -210,7 +195,15 @@ is divided into following sections:
         </condition>\r
         <path id="endorsed.classpath.path" path="${endorsed.classpath}"/>\r
         <condition else="" property="endorsed.classpath.cmd.line.arg" value="-Xbootclasspath/p:'${toString:endorsed.classpath.path}'">\r
-            <length length="0" string="${endorsed.classpath}" when="greater"/>\r
+            <and>\r
+                <isset property="endorsed.classpath"/>\r
+                <not>\r
+                    <equals arg1="${endorsed.classpath}" arg2="" trim="true"/>\r
+                </not>\r
+            </and>\r
+        </condition>\r
+        <condition else="" property="javac.profile.cmd.line.arg" value="-profile ${javac.profile}">\r
+            <isset property="profile.available"/>\r
         </condition>\r
         <condition else="false" property="jdkBug6558476">\r
             <and>\r
@@ -223,7 +216,29 @@ is divided into following sections:
         <property name="javac.fork" value="${jdkBug6558476}"/>\r
         <property name="jar.index" value="false"/>\r
         <property name="jar.index.metainf" value="${jar.index}"/>\r
+        <property name="copylibs.rebase" value="true"/>\r
         <available file="${meta.inf.dir}/persistence.xml" property="has.persistence.xml"/>\r
+        <condition property="junit.available">\r
+            <or>\r
+                <available classname="org.junit.Test" classpath="${run.test.classpath}"/>\r
+                <available classname="junit.framework.Test" classpath="${run.test.classpath}"/>\r
+            </or>\r
+        </condition>\r
+        <condition property="testng.available">\r
+            <available classname="org.testng.annotations.Test" classpath="${run.test.classpath}"/>\r
+        </condition>\r
+        <condition property="junit+testng.available">\r
+            <and>\r
+                <istrue value="${junit.available}"/>\r
+                <istrue value="${testng.available}"/>\r
+            </and>\r
+        </condition>\r
+        <condition else="testng" property="testng.mode" value="mixed">\r
+            <istrue value="${junit+testng.available}"/>\r
+        </condition>\r
+        <condition else="" property="testng.debug.mode" value="-mixed">\r
+            <istrue value="${junit+testng.available}"/>\r
+        </condition>\r
     </target>\r
     <target name="-post-init">\r
         <!-- Empty placeholder for easier customization. -->\r
@@ -277,6 +292,7 @@ is divided into following sections:
                         <path path="@{classpath}"/>\r
                     </classpath>\r
                     <compilerarg line="${endorsed.classpath.cmd.line.arg}"/>\r
+                    <compilerarg line="${javac.profile.cmd.line.arg}"/>\r
                     <compilerarg line="${javac.compilerargs}"/>\r
                     <compilerarg value="-processorpath"/>\r
                     <compilerarg path="@{processorpath}:${empty.dir}"/>\r
@@ -316,6 +332,7 @@ is divided into following sections:
                         <path path="@{classpath}"/>\r
                     </classpath>\r
                     <compilerarg line="${endorsed.classpath.cmd.line.arg}"/>\r
+                    <compilerarg line="${javac.profile.cmd.line.arg}"/>\r
                     <compilerarg line="${javac.compilerargs}"/>\r
                     <customize/>\r
                 </javac>\r
@@ -356,11 +373,57 @@ is divided into following sections:
             </sequential>\r
         </macrodef>\r
     </target>\r
-    <target name="-init-macrodef-junit">\r
+    <target if="${junit.available}" name="-init-macrodef-junit-init">\r
+        <condition else="false" property="nb.junit.batch" value="true">\r
+            <and>\r
+                <istrue value="${junit.available}"/>\r
+                <not>\r
+                    <isset property="test.method"/>\r
+                </not>\r
+            </and>\r
+        </condition>\r
+        <condition else="false" property="nb.junit.single" value="true">\r
+            <and>\r
+                <istrue value="${junit.available}"/>\r
+                <isset property="test.method"/>\r
+            </and>\r
+        </condition>\r
+    </target>\r
+    <target name="-init-test-properties">\r
+        <property name="test.binaryincludes" value="&lt;nothing&gt;"/>\r
+        <property name="test.binarytestincludes" value=""/>\r
+        <property name="test.binaryexcludes" value=""/>\r
+    </target>\r
+    <target if="${nb.junit.single}" name="-init-macrodef-junit-single" unless="${nb.junit.batch}">\r
+        <macrodef name="junit" uri="http://www.netbeans.org/ns/j2se-project/3">\r
+            <attribute default="${includes}" name="includes"/>\r
+            <attribute default="${excludes}" name="excludes"/>\r
+            <attribute default="**" name="testincludes"/>\r
+            <attribute default="" name="testmethods"/>\r
+            <element name="customize" optional="true"/>\r
+            <sequential>\r
+                <property name="junit.forkmode" value="perTest"/>\r
+                <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" showoutput="true" tempdir="${build.dir}">\r
+                    <test methods="@{testmethods}" name="@{testincludes}" todir="${build.test.results.dir}"/>\r
+                    <syspropertyset>\r
+                        <propertyref prefix="test-sys-prop."/>\r
+                        <mapper from="test-sys-prop.*" to="*" type="glob"/>\r
+                    </syspropertyset>\r
+                    <formatter type="brief" usefile="false"/>\r
+                    <formatter type="xml"/>\r
+                    <jvmarg value="-ea"/>\r
+                    <customize/>\r
+                </junit>\r
+            </sequential>\r
+        </macrodef>\r
+    </target>\r
+    <target depends="-init-test-properties" if="${nb.junit.batch}" name="-init-macrodef-junit-batch" unless="${nb.junit.single}">\r
         <macrodef name="junit" uri="http://www.netbeans.org/ns/j2se-project/3">\r
             <attribute default="${includes}" name="includes"/>\r
             <attribute default="${excludes}" name="excludes"/>\r
             <attribute default="**" name="testincludes"/>\r
+            <attribute default="" name="testmethods"/>\r
+            <element name="customize" optional="true"/>\r
             <sequential>\r
                 <property name="junit.forkmode" value="perTest"/>\r
                 <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" showoutput="true" tempdir="${build.dir}">\r
@@ -368,33 +431,277 @@ is divided into following sections:
                         <fileset dir="${test.src.dir}" excludes="@{excludes},${excludes}" includes="@{includes}">\r
                             <filename name="@{testincludes}"/>\r
                         </fileset>\r
+                        <fileset dir="${build.test.classes.dir}" excludes="@{excludes},${excludes},${test.binaryexcludes}" includes="${test.binaryincludes}">\r
+                            <filename name="${test.binarytestincludes}"/>\r
+                        </fileset>\r
                     </batchtest>\r
-                    <classpath>\r
-                        <path path="${run.test.classpath}"/>\r
-                    </classpath>\r
                     <syspropertyset>\r
                         <propertyref prefix="test-sys-prop."/>\r
                         <mapper from="test-sys-prop.*" to="*" type="glob"/>\r
                     </syspropertyset>\r
                     <formatter type="brief" usefile="false"/>\r
                     <formatter type="xml"/>\r
-                    <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>\r
                     <jvmarg value="-ea"/>\r
-                    <jvmarg line="${run.jvmargs}"/>\r
+                    <customize/>\r
+                </junit>\r
+            </sequential>\r
+        </macrodef>\r
+    </target>\r
+    <target depends="-init-macrodef-junit-init,-init-macrodef-junit-single, -init-macrodef-junit-batch" if="${junit.available}" name="-init-macrodef-junit"/>\r
+    <target if="${testng.available}" name="-init-macrodef-testng">\r
+        <macrodef name="testng" uri="http://www.netbeans.org/ns/j2se-project/3">\r
+            <attribute default="${includes}" name="includes"/>\r
+            <attribute default="${excludes}" name="excludes"/>\r
+            <attribute default="**" name="testincludes"/>\r
+            <attribute default="" name="testmethods"/>\r
+            <element name="customize" optional="true"/>\r
+            <sequential>\r
+                <condition else="" property="testng.methods.arg" value="@{testincludes}.@{testmethods}">\r
+                    <isset property="test.method"/>\r
+                </condition>\r
+                <union id="test.set">\r
+                    <fileset dir="${test.src.dir}" excludes="@{excludes},**/*.xml,${excludes}" includes="@{includes}">\r
+                        <filename name="@{testincludes}"/>\r
+                    </fileset>\r
+                </union>\r
+                <taskdef classname="org.testng.TestNGAntTask" classpath="${run.test.classpath}" name="testng"/>\r
+                <testng classfilesetref="test.set" failureProperty="tests.failed" listeners="org.testng.reporters.VerboseReporter" methods="${testng.methods.arg}" mode="${testng.mode}" outputdir="${build.test.results.dir}" suitename="FWSTK_Resources" testname="TestNG tests" workingDir="${work.dir}">\r
+                    <xmlfileset dir="${build.test.classes.dir}" includes="@{testincludes}"/>\r
+                    <propertyset>\r
+                        <propertyref prefix="test-sys-prop."/>\r
+                        <mapper from="test-sys-prop.*" to="*" type="glob"/>\r
+                    </propertyset>\r
+                    <customize/>\r
+                </testng>\r
+            </sequential>\r
+        </macrodef>\r
+    </target>\r
+    <target name="-init-macrodef-test-impl">\r
+        <macrodef name="test-impl" uri="http://www.netbeans.org/ns/j2se-project/3">\r
+            <attribute default="${includes}" name="includes"/>\r
+            <attribute default="${excludes}" name="excludes"/>\r
+            <attribute default="**" name="testincludes"/>\r
+            <attribute default="" name="testmethods"/>\r
+            <element implicit="true" name="customize" optional="true"/>\r
+            <sequential>\r
+                <echo>No tests executed.</echo>\r
+            </sequential>\r
+        </macrodef>\r
+    </target>\r
+    <target depends="-init-macrodef-junit" if="${junit.available}" name="-init-macrodef-junit-impl">\r
+        <macrodef name="test-impl" uri="http://www.netbeans.org/ns/j2se-project/3">\r
+            <attribute default="${includes}" name="includes"/>\r
+            <attribute default="${excludes}" name="excludes"/>\r
+            <attribute default="**" name="testincludes"/>\r
+            <attribute default="" name="testmethods"/>\r
+            <element implicit="true" name="customize" optional="true"/>\r
+            <sequential>\r
+                <j2seproject3:junit excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">\r
+                    <customize/>\r
+                </j2seproject3:junit>\r
+            </sequential>\r
+        </macrodef>\r
+    </target>\r
+    <target depends="-init-macrodef-testng" if="${testng.available}" name="-init-macrodef-testng-impl">\r
+        <macrodef name="test-impl" uri="http://www.netbeans.org/ns/j2se-project/3">\r
+            <attribute default="${includes}" name="includes"/>\r
+            <attribute default="${excludes}" name="excludes"/>\r
+            <attribute default="**" name="testincludes"/>\r
+            <attribute default="" name="testmethods"/>\r
+            <element implicit="true" name="customize" optional="true"/>\r
+            <sequential>\r
+                <j2seproject3:testng excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">\r
+                    <customize/>\r
+                </j2seproject3:testng>\r
+            </sequential>\r
+        </macrodef>\r
+    </target>\r
+    <target depends="-init-macrodef-test-impl,-init-macrodef-junit-impl,-init-macrodef-testng-impl" name="-init-macrodef-test">\r
+        <macrodef name="test" uri="http://www.netbeans.org/ns/j2se-project/3">\r
+            <attribute default="${includes}" name="includes"/>\r
+            <attribute default="${excludes}" name="excludes"/>\r
+            <attribute default="**" name="testincludes"/>\r
+            <attribute default="" name="testmethods"/>\r
+            <sequential>\r
+                <j2seproject3:test-impl excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">\r
+                    <customize>\r
+                        <classpath>\r
+                            <path path="${run.test.classpath}"/>\r
+                        </classpath>\r
+                        <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>\r
+                        <jvmarg line="${run.jvmargs}"/>\r
+                        <jvmarg line="${run.jvmargs.ide}"/>\r
+                    </customize>\r
+                </j2seproject3:test-impl>\r
+            </sequential>\r
+        </macrodef>\r
+    </target>\r
+    <target if="${junit.available}" name="-init-macrodef-junit-debug" unless="${nb.junit.batch}">\r
+        <macrodef name="junit-debug" uri="http://www.netbeans.org/ns/j2se-project/3">\r
+            <attribute default="${includes}" name="includes"/>\r
+            <attribute default="${excludes}" name="excludes"/>\r
+            <attribute default="**" name="testincludes"/>\r
+            <attribute default="" name="testmethods"/>\r
+            <element name="customize" optional="true"/>\r
+            <sequential>\r
+                <property name="junit.forkmode" value="perTest"/>\r
+                <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" showoutput="true" tempdir="${build.dir}">\r
+                    <test methods="@{testmethods}" name="@{testincludes}" todir="${build.test.results.dir}"/>\r
+                    <syspropertyset>\r
+                        <propertyref prefix="test-sys-prop."/>\r
+                        <mapper from="test-sys-prop.*" to="*" type="glob"/>\r
+                    </syspropertyset>\r
+                    <formatter type="brief" usefile="false"/>\r
+                    <formatter type="xml"/>\r
+                    <jvmarg value="-ea"/>\r
+                    <jvmarg line="${debug-args-line}"/>\r
+                    <jvmarg value="-Xrunjdwp:transport=${debug-transport},address=${jpda.address}"/>\r
+                    <customize/>\r
+                </junit>\r
+            </sequential>\r
+        </macrodef>\r
+    </target>\r
+    <target depends="-init-test-properties" if="${nb.junit.batch}" name="-init-macrodef-junit-debug-batch">\r
+        <macrodef name="junit-debug" uri="http://www.netbeans.org/ns/j2se-project/3">\r
+            <attribute default="${includes}" name="includes"/>\r
+            <attribute default="${excludes}" name="excludes"/>\r
+            <attribute default="**" name="testincludes"/>\r
+            <attribute default="" name="testmethods"/>\r
+            <element name="customize" optional="true"/>\r
+            <sequential>\r
+                <property name="junit.forkmode" value="perTest"/>\r
+                <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" showoutput="true" tempdir="${build.dir}">\r
+                    <batchtest todir="${build.test.results.dir}">\r
+                        <fileset dir="${test.src.dir}" excludes="@{excludes},${excludes}" includes="@{includes}">\r
+                            <filename name="@{testincludes}"/>\r
+                        </fileset>\r
+                        <fileset dir="${build.test.classes.dir}" excludes="@{excludes},${excludes},${test.binaryexcludes}" includes="${test.binaryincludes}">\r
+                            <filename name="${test.binarytestincludes}"/>\r
+                        </fileset>\r
+                    </batchtest>\r
+                    <syspropertyset>\r
+                        <propertyref prefix="test-sys-prop."/>\r
+                        <mapper from="test-sys-prop.*" to="*" type="glob"/>\r
+                    </syspropertyset>\r
+                    <formatter type="brief" usefile="false"/>\r
+                    <formatter type="xml"/>\r
+                    <jvmarg value="-ea"/>\r
+                    <jvmarg line="${debug-args-line}"/>\r
+                    <jvmarg value="-Xrunjdwp:transport=${debug-transport},address=${jpda.address}"/>\r
+                    <customize/>\r
                 </junit>\r
             </sequential>\r
         </macrodef>\r
     </target>\r
-    <target depends="-profile-pre-init, init, -profile-post-init, -profile-init-macrodef-profile, -profile-init-check" name="profile-init"/>\r
-    <target name="-profile-pre-init">\r
+    <target depends="-init-macrodef-junit-debug,-init-macrodef-junit-debug-batch" if="${junit.available}" name="-init-macrodef-junit-debug-impl">\r
+        <macrodef name="test-debug-impl" uri="http://www.netbeans.org/ns/j2se-project/3">\r
+            <attribute default="${includes}" name="includes"/>\r
+            <attribute default="${excludes}" name="excludes"/>\r
+            <attribute default="**" name="testincludes"/>\r
+            <attribute default="" name="testmethods"/>\r
+            <element implicit="true" name="customize" optional="true"/>\r
+            <sequential>\r
+                <j2seproject3:junit-debug excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">\r
+                    <customize/>\r
+                </j2seproject3:junit-debug>\r
+            </sequential>\r
+        </macrodef>\r
+    </target>\r
+    <target if="${testng.available}" name="-init-macrodef-testng-debug">\r
+        <macrodef name="testng-debug" uri="http://www.netbeans.org/ns/j2se-project/3">\r
+            <attribute default="${main.class}" name="testClass"/>\r
+            <attribute default="" name="testMethod"/>\r
+            <element name="customize2" optional="true"/>\r
+            <sequential>\r
+                <condition else="-testclass @{testClass}" property="test.class.or.method" value="-methods @{testClass}.@{testMethod}">\r
+                    <isset property="test.method"/>\r
+                </condition>\r
+                <condition else="-suitename FWSTK_Resources -testname @{testClass} ${test.class.or.method}" property="testng.cmd.args" value="@{testClass}">\r
+                    <matches pattern=".*\.xml" string="@{testClass}"/>\r
+                </condition>\r
+                <delete dir="${build.test.results.dir}" quiet="true"/>\r
+                <mkdir dir="${build.test.results.dir}"/>\r
+                <j2seproject3:debug classname="org.testng.TestNG" classpath="${debug.test.classpath}">\r
+                    <customize>\r
+                        <customize2/>\r
+                        <jvmarg value="-ea"/>\r
+                        <arg line="${testng.debug.mode}"/>\r
+                        <arg line="-d ${build.test.results.dir}"/>\r
+                        <arg line="-listener org.testng.reporters.VerboseReporter"/>\r
+                        <arg line="${testng.cmd.args}"/>\r
+                    </customize>\r
+                </j2seproject3:debug>\r
+            </sequential>\r
+        </macrodef>\r
+    </target>\r
+    <target depends="-init-macrodef-testng-debug" if="${testng.available}" name="-init-macrodef-testng-debug-impl">\r
+        <macrodef name="testng-debug-impl" uri="http://www.netbeans.org/ns/j2se-project/3">\r
+            <attribute default="${main.class}" name="testClass"/>\r
+            <attribute default="" name="testMethod"/>\r
+            <element implicit="true" name="customize2" optional="true"/>\r
+            <sequential>\r
+                <j2seproject3:testng-debug testClass="@{testClass}" testMethod="@{testMethod}">\r
+                    <customize2/>\r
+                </j2seproject3:testng-debug>\r
+            </sequential>\r
+        </macrodef>\r
+    </target>\r
+    <target depends="-init-macrodef-junit-debug-impl" if="${junit.available}" name="-init-macrodef-test-debug-junit">\r
+        <macrodef name="test-debug" uri="http://www.netbeans.org/ns/j2se-project/3">\r
+            <attribute default="${includes}" name="includes"/>\r
+            <attribute default="${excludes}" name="excludes"/>\r
+            <attribute default="**" name="testincludes"/>\r
+            <attribute default="" name="testmethods"/>\r
+            <attribute default="${main.class}" name="testClass"/>\r
+            <attribute default="" name="testMethod"/>\r
+            <sequential>\r
+                <j2seproject3:test-debug-impl excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">\r
+                    <customize>\r
+                        <classpath>\r
+                            <path path="${run.test.classpath}"/>\r
+                        </classpath>\r
+                        <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>\r
+                        <jvmarg line="${run.jvmargs}"/>\r
+                        <jvmarg line="${run.jvmargs.ide}"/>\r
+                    </customize>\r
+                </j2seproject3:test-debug-impl>\r
+            </sequential>\r
+        </macrodef>\r
+    </target>\r
+    <target depends="-init-macrodef-testng-debug-impl" if="${testng.available}" name="-init-macrodef-test-debug-testng">\r
+        <macrodef name="test-debug" uri="http://www.netbeans.org/ns/j2se-project/3">\r
+            <attribute default="${includes}" name="includes"/>\r
+            <attribute default="${excludes}" name="excludes"/>\r
+            <attribute default="**" name="testincludes"/>\r
+            <attribute default="" name="testmethods"/>\r
+            <attribute default="${main.class}" name="testClass"/>\r
+            <attribute default="" name="testMethod"/>\r
+            <sequential>\r
+                <j2seproject3:testng-debug-impl testClass="@{testClass}" testMethod="@{testMethod}">\r
+                    <customize2>\r
+                        <syspropertyset>\r
+                            <propertyref prefix="test-sys-prop."/>\r
+                            <mapper from="test-sys-prop.*" to="*" type="glob"/>\r
+                        </syspropertyset>\r
+                    </customize2>\r
+                </j2seproject3:testng-debug-impl>\r
+            </sequential>\r
+        </macrodef>\r
+    </target>\r
+    <target depends="-init-macrodef-test-debug-junit,-init-macrodef-test-debug-testng" name="-init-macrodef-test-debug"/>\r
+    <!--\r
+                pre NB7.2 profiling section; consider it deprecated\r
+            -->\r
+    <target depends="-profile-pre-init, init, -profile-post-init, -profile-init-macrodef-profile, -profile-init-check" if="profiler.info.jvmargs.agent" name="profile-init"/>\r
+    <target if="profiler.info.jvmargs.agent" name="-profile-pre-init">\r
         <!-- Empty placeholder for easier customization. -->\r
         <!-- You can override this target in the ../build.xml file. -->\r
     </target>\r
-    <target name="-profile-post-init">\r
+    <target if="profiler.info.jvmargs.agent" name="-profile-post-init">\r
         <!-- Empty placeholder for easier customization. -->\r
         <!-- You can override this target in the ../build.xml file. -->\r
     </target>\r
-    <target name="-profile-init-macrodef-profile">\r
+    <target if="profiler.info.jvmargs.agent" name="-profile-init-macrodef-profile">\r
         <macrodef name="resolve">\r
             <attribute name="name"/>\r
             <attribute name="value"/>\r
@@ -409,6 +716,7 @@ is divided into following sections:
                 <property environment="env"/>\r
                 <resolve name="profiler.current.path" value="${profiler.info.pathvar}"/>\r
                 <java classname="@{classname}" dir="${profiler.info.dir}" fork="true" jvm="${profiler.info.jvm}">\r
+                    <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>\r
                     <jvmarg value="${profiler.info.jvmargs.agent}"/>\r
                     <jvmarg line="${profiler.info.jvmargs}"/>\r
                     <env key="${profiler.info.pathvar}" path="${profiler.info.agentpath}:${profiler.current.path}"/>\r
@@ -425,10 +733,13 @@ is divided into following sections:
             </sequential>\r
         </macrodef>\r
     </target>\r
-    <target depends="-profile-pre-init, init, -profile-post-init, -profile-init-macrodef-profile" name="-profile-init-check">\r
+    <target depends="-profile-pre-init, init, -profile-post-init, -profile-init-macrodef-profile" if="profiler.info.jvmargs.agent" name="-profile-init-check">\r
         <fail unless="profiler.info.jvm">Must set JVM to use for profiling in profiler.info.jvm</fail>\r
         <fail unless="profiler.info.jvmargs.agent">Must set profiler agent JVM arguments in profiler.info.jvmargs.agent</fail>\r
     </target>\r
+    <!--\r
+                end of pre NB7.2 profiling section\r
+            -->\r
     <target depends="-init-debug-args" name="-init-macrodef-nbjpda">\r
         <macrodef name="nbjpdastart" uri="http://www.netbeans.org/ns/j2se-project/1">\r
             <attribute default="${main.class}" name="name"/>\r
@@ -486,6 +797,7 @@ is divided into following sections:
                     <jvmarg value="-Dfile.encoding=${runtime.encoding}"/>\r
                     <redirector errorencoding="${runtime.encoding}" inputencoding="${runtime.encoding}" outputencoding="${runtime.encoding}"/>\r
                     <jvmarg line="${run.jvmargs}"/>\r
+                    <jvmarg line="${run.jvmargs.ide}"/>\r
                     <classpath>\r
                         <path path="@{classpath}"/>\r
                     </classpath>\r
@@ -502,6 +814,7 @@ is divided into following sections:
         <macrodef name="java" uri="http://www.netbeans.org/ns/j2se-project/1">\r
             <attribute default="${main.class}" name="classname"/>\r
             <attribute default="${run.classpath}" name="classpath"/>\r
+            <attribute default="jvm" name="jvm"/>\r
             <element name="customize" optional="true"/>\r
             <sequential>\r
                 <java classname="@{classname}" dir="${work.dir}" fork="true">\r
@@ -509,6 +822,7 @@ is divided into following sections:
                     <jvmarg value="-Dfile.encoding=${runtime.encoding}"/>\r
                     <redirector errorencoding="${runtime.encoding}" inputencoding="${runtime.encoding}" outputencoding="${runtime.encoding}"/>\r
                     <jvmarg line="${run.jvmargs}"/>\r
+                    <jvmarg line="${run.jvmargs.ide}"/>\r
                     <classpath>\r
                         <path path="@{classpath}"/>\r
                     </classpath>\r
@@ -535,12 +849,15 @@ is divided into following sections:
                     <path path="${run.classpath.without.build.classes.dir}"/>\r
                     <chainedmapper>\r
                         <flattenmapper/>\r
+                        <filtermapper>\r
+                            <replacestring from=" " to="%20"/>\r
+                        </filtermapper>\r
                         <globmapper from="*" to="lib/*"/>\r
                     </chainedmapper>\r
                 </pathconvert>\r
                 <taskdef classname="org.netbeans.modules.java.j2seproject.copylibstask.CopyLibs" classpath="${libs.CopyLibs.classpath}" name="copylibs"/>\r
-                <copylibs compress="${jar.compress}" index="${jar.index}" indexMetaInf="${jar.index.metainf}" jarfile="${dist.jar}" manifest="@{manifest}" runtimeclasspath="${run.classpath.without.build.classes.dir}">\r
-                    <fileset dir="${build.classes.dir}"/>\r
+                <copylibs compress="${jar.compress}" excludeFromCopy="${copylibs.excludes}" index="${jar.index}" indexMetaInf="${jar.index.metainf}" jarfile="${dist.jar}" manifest="@{manifest}" rebase="${copylibs.rebase}" runtimeclasspath="${run.classpath.without.build.classes.dir}">\r
+                    <fileset dir="${build.classes.dir}" excludes="${dist.archive.excludes}"/>\r
                     <manifest>\r
                         <attribute name="Class-Path" value="${jar.classpath}"/>\r
                         <customize/>\r
@@ -552,7 +869,7 @@ is divided into following sections:
     <target name="-init-presetdef-jar">\r
         <presetdef name="jar" uri="http://www.netbeans.org/ns/j2se-project/1">\r
             <jar compress="${jar.compress}" index="${jar.index}" jarfile="${dist.jar}">\r
-                <j2seproject1:fileset dir="${build.classes.dir}"/>\r
+                <j2seproject1:fileset dir="${build.classes.dir}" excludes="${dist.archive.excludes}"/>\r
             </jar>\r
         </presetdef>\r
     </target>\r
@@ -580,7 +897,7 @@ is divided into following sections:
     <target depends="-init-ap-cmdline-properties,-init-ap-cmdline-supported" name="-init-ap-cmdline">\r
         <property name="ap.cmd.line.internal" value=""/>\r
     </target>\r
-    <target depends="-pre-init,-init-private,-init-libraries,-init-user,-init-project,-do-init,-post-init,-init-check,-init-macrodef-property,-init-macrodef-javac,-init-macrodef-junit,-init-macrodef-nbjpda,-init-macrodef-debug,-init-macrodef-java,-init-presetdef-jar,-init-ap-cmdline" name="init"/>\r
+    <target depends="-pre-init,-init-private,-init-libraries,-init-user,-init-project,-do-init,-post-init,-init-check,-init-macrodef-property,-init-macrodef-javac,-init-macrodef-test,-init-macrodef-test-debug,-init-macrodef-nbjpda,-init-macrodef-debug,-init-macrodef-java,-init-presetdef-jar,-init-ap-cmdline" name="init"/>\r
     <!--\r
                 ===================\r
                 COMPILATION SECTION\r
@@ -633,7 +950,7 @@ is divided into following sections:
     <target if="has.persistence.xml" name="-copy-persistence-xml">\r
         <mkdir dir="${build.classes.dir}/META-INF"/>\r
         <copy todir="${build.classes.dir}/META-INF">\r
-            <fileset dir="${meta.inf.dir}" includes="persistence.xml"/>\r
+            <fileset dir="${meta.inf.dir}" includes="persistence.xml orm.xml"/>\r
         </copy>\r
     </target>\r
     <target name="-post-compile">\r
@@ -668,41 +985,25 @@ is divided into following sections:
         <!-- Empty placeholder for easier customization. -->\r
         <!-- You can override this target in the ../build.xml file. -->\r
     </target>\r
-    <target depends="init,compile,-pre-pre-jar,-pre-jar" if="do.archive" name="-do-jar-without-manifest" unless="manifest.available-mkdist.available">\r
-        <j2seproject1:jar/>\r
-    </target>\r
-    <target depends="init,compile,-pre-pre-jar,-pre-jar" if="do.archive+manifest.available" name="-do-jar-with-manifest" unless="manifest.available+main.class-mkdist.available">\r
-        <j2seproject1:jar manifest="${manifest.file}"/>\r
-    </target>\r
-    <target depends="init,compile,-pre-pre-jar,-pre-jar" if="do.archive+manifest.available+main.class" name="-do-jar-with-mainclass" unless="manifest.available+main.class+mkdist.available">\r
-        <j2seproject1:jar manifest="${manifest.file}">\r
-            <j2seproject1:manifest>\r
-                <j2seproject1:attribute name="Main-Class" value="${main.class}"/>\r
-            </j2seproject1:manifest>\r
-        </j2seproject1:jar>\r
-        <echo level="info">To run this application from the command line without Ant, try:</echo>\r
-        <property location="${build.classes.dir}" name="build.classes.dir.resolved"/>\r
-        <property location="${dist.jar}" name="dist.jar.resolved"/>\r
-        <pathconvert property="run.classpath.with.dist.jar">\r
-            <path path="${run.classpath}"/>\r
-            <map from="${build.classes.dir.resolved}" to="${dist.jar.resolved}"/>\r
-        </pathconvert>\r
-        <echo level="info">java -cp "${run.classpath.with.dist.jar}" ${main.class}</echo>\r
-    </target>\r
-    <target depends="init" if="do.archive" name="-do-jar-with-libraries-create-manifest" unless="manifest.available">\r
+    <target depends="init" if="do.archive" name="-do-jar-create-manifest" unless="manifest.available">\r
         <tempfile deleteonexit="true" destdir="${build.dir}" property="tmp.manifest.file"/>\r
         <touch file="${tmp.manifest.file}" verbose="false"/>\r
     </target>\r
-    <target depends="init" if="do.archive+manifest.available" name="-do-jar-with-libraries-copy-manifest">\r
+    <target depends="init" if="do.archive+manifest.available" name="-do-jar-copy-manifest">\r
         <tempfile deleteonexit="true" destdir="${build.dir}" property="tmp.manifest.file"/>\r
         <copy file="${manifest.file}" tofile="${tmp.manifest.file}"/>\r
     </target>\r
-    <target depends="init,-do-jar-with-libraries-create-manifest,-do-jar-with-libraries-copy-manifest" if="do.archive+main.class.available" name="-do-jar-with-libraries-set-main">\r
+    <target depends="init,-do-jar-create-manifest,-do-jar-copy-manifest" if="do.archive+main.class.available" name="-do-jar-set-mainclass">\r
         <manifest file="${tmp.manifest.file}" mode="update">\r
             <attribute name="Main-Class" value="${main.class}"/>\r
         </manifest>\r
     </target>\r
-    <target depends="init,-do-jar-with-libraries-create-manifest,-do-jar-with-libraries-copy-manifest" if="do.archive+splashscreen.available" name="-do-jar-with-libraries-set-splashscreen">\r
+    <target depends="init,-do-jar-create-manifest,-do-jar-copy-manifest" if="do.archive+profile.available" name="-do-jar-set-profile">\r
+        <manifest file="${tmp.manifest.file}" mode="update">\r
+            <attribute name="Profile" value="${javac.profile}"/>\r
+        </manifest>\r
+    </target>\r
+    <target depends="init,-do-jar-create-manifest,-do-jar-copy-manifest" if="do.archive+splashscreen.available" name="-do-jar-set-splashscreen">\r
         <basename file="${application.splash}" property="splashscreen.basename"/>\r
         <mkdir dir="${build.classes.dir}/META-INF"/>\r
         <copy failonerror="false" file="${application.splash}" todir="${build.classes.dir}/META-INF"/>\r
@@ -710,23 +1011,41 @@ is divided into following sections:
             <attribute name="SplashScreen-Image" value="META-INF/${splashscreen.basename}"/>\r
         </manifest>\r
     </target>\r
-    <target depends="init,-init-macrodef-copylibs,compile,-pre-pre-jar,-pre-jar,-do-jar-with-libraries-create-manifest,-do-jar-with-libraries-copy-manifest,-do-jar-with-libraries-set-main,-do-jar-with-libraries-set-splashscreen" if="do.mkdist" name="-do-jar-with-libraries-pack">\r
+    <target depends="init,-init-macrodef-copylibs,compile,-pre-pre-jar,-pre-jar,-do-jar-create-manifest,-do-jar-copy-manifest,-do-jar-set-mainclass,-do-jar-set-profile,-do-jar-set-splashscreen" if="do.mkdist" name="-do-jar-copylibs">\r
         <j2seproject3:copylibs manifest="${tmp.manifest.file}"/>\r
         <echo level="info">To run this application from the command line without Ant, try:</echo>\r
         <property location="${dist.jar}" name="dist.jar.resolved"/>\r
         <echo level="info">java -jar "${dist.jar.resolved}"</echo>\r
     </target>\r
-    <target depends="-do-jar-with-libraries-pack" if="do.archive" name="-do-jar-with-libraries-delete-manifest">\r
+    <target depends="init,compile,-pre-pre-jar,-pre-jar,-do-jar-create-manifest,-do-jar-copy-manifest,-do-jar-set-mainclass,-do-jar-set-profile,-do-jar-set-splashscreen" if="do.archive" name="-do-jar-jar" unless="do.mkdist">\r
+        <j2seproject1:jar manifest="${tmp.manifest.file}"/>\r
+        <property location="${build.classes.dir}" name="build.classes.dir.resolved"/>\r
+        <property location="${dist.jar}" name="dist.jar.resolved"/>\r
+        <pathconvert property="run.classpath.with.dist.jar">\r
+            <path path="${run.classpath}"/>\r
+            <map from="${build.classes.dir.resolved}" to="${dist.jar.resolved}"/>\r
+        </pathconvert>\r
+        <condition else="" property="jar.usage.message" value="To run this application from the command line without Ant, try:${line.separator}${platform.java} -cp ${run.classpath.with.dist.jar} ${main.class}">\r
+            <isset property="main.class.available"/>\r
+        </condition>\r
+        <condition else="debug" property="jar.usage.level" value="info">\r
+            <isset property="main.class.available"/>\r
+        </condition>\r
+        <echo level="${jar.usage.level}" message="${jar.usage.message}"/>\r
+    </target>\r
+    <target depends="-do-jar-copylibs" if="do.archive" name="-do-jar-delete-manifest">\r
         <delete>\r
             <fileset file="${tmp.manifest.file}"/>\r
         </delete>\r
     </target>\r
-    <target depends="init,compile,-pre-pre-jar,-pre-jar,-do-jar-with-libraries-create-manifest,-do-jar-with-libraries-copy-manifest,-do-jar-with-libraries-set-main,-do-jar-with-libraries-set-splashscreen,-do-jar-with-libraries-pack,-do-jar-with-libraries-delete-manifest" name="-do-jar-with-libraries"/>\r
+    <target depends="init,compile,-pre-pre-jar,-pre-jar,-do-jar-create-manifest,-do-jar-copy-manifest,-do-jar-set-mainclass,-do-jar-set-profile,-do-jar-set-splashscreen,-do-jar-jar,-do-jar-delete-manifest" name="-do-jar-without-libraries"/>\r
+    <target depends="init,compile,-pre-pre-jar,-pre-jar,-do-jar-create-manifest,-do-jar-copy-manifest,-do-jar-set-mainclass,-do-jar-set-profile,-do-jar-set-splashscreen,-do-jar-copylibs,-do-jar-delete-manifest" name="-do-jar-with-libraries"/>\r
     <target name="-post-jar">\r
         <!-- Empty placeholder for easier customization. -->\r
         <!-- You can override this target in the ../build.xml file. -->\r
     </target>\r
-    <target depends="init,compile,-pre-jar,-do-jar-with-manifest,-do-jar-without-manifest,-do-jar-with-mainclass,-do-jar-with-libraries,-post-jar" description="Build JAR." name="jar"/>\r
+    <target depends="init,compile,-pre-jar,-do-jar-without-libraries,-do-jar-with-libraries,-post-jar" name="-do-jar"/>\r
+    <target depends="init,compile,-pre-jar,-do-jar,-post-jar" description="Build JAR." name="jar"/>\r
     <!--\r
                 =================\r
                 EXECUTION SECTION\r
@@ -796,7 +1115,11 @@ is divided into following sections:
                 PROFILING SECTION\r
                 =================\r
             -->\r
-    <target depends="profile-init,compile" description="Profile a project in the IDE." if="netbeans.home" name="profile">\r
+    <!--\r
+                pre NB7.2 profiler integration\r
+            -->\r
+    <target depends="profile-init,compile" description="Profile a project in the IDE." if="profiler.info.jvmargs.agent" name="-profile-pre72">\r
+        <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail>\r
         <nbprofiledirect>\r
             <classpath>\r
                 <path path="${run.classpath}"/>\r
@@ -804,8 +1127,9 @@ is divided into following sections:
         </nbprofiledirect>\r
         <profile/>\r
     </target>\r
-    <target depends="profile-init,compile-single" description="Profile a selected class in the IDE." if="netbeans.home" name="profile-single">\r
+    <target depends="profile-init,compile-single" description="Profile a selected class in the IDE." if="profiler.info.jvmargs.agent" name="-profile-single-pre72">\r
         <fail unless="profile.class">Must select one file in the IDE or set profile.class</fail>\r
+        <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail>\r
         <nbprofiledirect>\r
             <classpath>\r
                 <path path="${run.classpath}"/>\r
@@ -813,12 +1137,8 @@ is divided into following sections:
         </nbprofiledirect>\r
         <profile classname="${profile.class}"/>\r
     </target>\r
-    <!--\r
-                =========================\r
-                APPLET PROFILING  SECTION\r
-                =========================\r
-            -->\r
-    <target depends="profile-init,compile-single" if="netbeans.home" name="profile-applet">\r
+    <target depends="profile-init,compile-single" if="profiler.info.jvmargs.agent" name="-profile-applet-pre72">\r
+        <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail>\r
         <nbprofiledirect>\r
             <classpath>\r
                 <path path="${run.classpath}"/>\r
@@ -830,12 +1150,8 @@ is divided into following sections:
             </customize>\r
         </profile>\r
     </target>\r
-    <!--\r
-                =========================\r
-                TESTS PROFILING  SECTION\r
-                =========================\r
-            -->\r
-    <target depends="profile-init,compile-test-single" if="netbeans.home" name="profile-test-single">\r
+    <target depends="profile-init,compile-test-single" if="profiler.info.jvmargs.agent" name="-profile-test-single-pre72">\r
+        <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail>\r
         <nbprofiledirect>\r
             <classpath>\r
                 <path path="${run.test.classpath}"/>\r
@@ -857,6 +1173,42 @@ is divided into following sections:
             <formatter type="xml"/>\r
         </junit>\r
     </target>\r
+    <!--\r
+                end of pre NB72 profiling section\r
+            -->\r
+    <target if="netbeans.home" name="-profile-check">\r
+        <condition property="profiler.configured">\r
+            <or>\r
+                <contains casesensitive="true" string="${run.jvmargs.ide}" substring="-agentpath:"/>\r
+                <contains casesensitive="true" string="${run.jvmargs.ide}" substring="-javaagent:"/>\r
+            </or>\r
+        </condition>\r
+    </target>\r
+    <target depends="-profile-check,-profile-pre72" description="Profile a project in the IDE." if="profiler.configured" name="profile" unless="profiler.info.jvmargs.agent">\r
+        <startprofiler/>\r
+        <antcall target="run"/>\r
+    </target>\r
+    <target depends="-profile-check,-profile-single-pre72" description="Profile a selected class in the IDE." if="profiler.configured" name="profile-single" unless="profiler.info.jvmargs.agent">\r
+        <fail unless="run.class">Must select one file in the IDE or set run.class</fail>\r
+        <startprofiler/>\r
+        <antcall target="run-single"/>\r
+    </target>\r
+    <target depends="-profile-test-single-pre72" description="Profile a selected test in the IDE." name="profile-test-single"/>\r
+    <target depends="-profile-check" description="Profile a selected test in the IDE." if="profiler.configured" name="profile-test" unless="profiler.info.jvmargs">\r
+        <fail unless="test.includes">Must select some files in the IDE or set test.includes</fail>\r
+        <startprofiler/>\r
+        <antcall target="test-single"/>\r
+    </target>\r
+    <target depends="-profile-check" description="Profile a selected class in the IDE." if="profiler.configured" name="profile-test-with-main">\r
+        <fail unless="run.class">Must select one file in the IDE or set run.class</fail>\r
+        <startprofiler/>\r
+        <antcal target="run-test-with-main"/>\r
+    </target>\r
+    <target depends="-profile-check,-profile-applet-pre72" if="profiler.configured" name="profile-applet" unless="profiler.info.jvmargs.agent">\r
+        <fail unless="applet.url">Must select one file in the IDE or set applet.url</fail>\r
+        <startprofiler/>\r
+        <antcall target="run-applet"/>\r
+    </target>\r
     <!--\r
                 ===============\r
                 JAVADOC SECTION\r
@@ -864,6 +1216,14 @@ is divided into following sections:
             -->\r
     <target depends="init" if="have.sources" name="-javadoc-build">\r
         <mkdir dir="${dist.javadoc.dir}"/>\r
+        <condition else="" property="javadoc.endorsed.classpath.cmd.line.arg" value="-J${endorsed.classpath.cmd.line.arg}">\r
+            <and>\r
+                <isset property="endorsed.classpath.cmd.line.arg"/>\r
+                <not>\r
+                    <equals arg1="${endorsed.classpath.cmd.line.arg}" arg2=""/>\r
+                </not>\r
+            </and>\r
+        </condition>\r
         <javadoc additionalparam="${javadoc.additionalparam}" author="${javadoc.author}" charset="UTF-8" destdir="${dist.javadoc.dir}" docencoding="UTF-8" encoding="${javadoc.encoding.used}" failonerror="true" noindex="${javadoc.noindex}" nonavbar="${javadoc.nonavbar}" notree="${javadoc.notree}" private="${javadoc.private}" source="${javac.source}" splitindex="${javadoc.splitindex}" use="${javadoc.use}" useexternalfile="true" version="${javadoc.version}" windowtitle="${javadoc.windowtitle}">\r
             <classpath>\r
                 <path path="${javac.classpath}"/>\r
@@ -875,6 +1235,7 @@ is divided into following sections:
                 <include name="**/*.java"/>\r
                 <exclude name="*.java"/>\r
             </fileset>\r
+            <arg line="${javadoc.endorsed.classpath.cmd.line.arg}"/>\r
         </javadoc>\r
         <copy todir="${dist.javadoc.dir}">\r
             <fileset dir="${src.dir}" excludes="${excludes}" includes="${includes}">\r
@@ -891,7 +1252,7 @@ is divided into following sections:
     <target depends="init,-javadoc-build,-javadoc-browse" description="Build Javadoc." name="javadoc"/>\r
     <!--\r
                 =========================\r
-                JUNIT COMPILATION SECTION\r
+                TEST COMPILATION SECTION\r
                 =========================\r
             -->\r
     <target depends="init,compile" if="have.tests" name="-pre-pre-compile-test">\r
@@ -934,14 +1295,14 @@ is divided into following sections:
     <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test-single,-do-compile-test-single,-post-compile-test-single" name="compile-test-single"/>\r
     <!--\r
                 =======================\r
-                JUNIT EXECUTION SECTION\r
+                TEST EXECUTION SECTION\r
                 =======================\r
             -->\r
     <target depends="init" if="have.tests" name="-pre-test-run">\r
         <mkdir dir="${build.test.results.dir}"/>\r
     </target>\r
     <target depends="init,compile-test,-pre-test-run" if="have.tests" name="-do-test-run">\r
-        <j2seproject3:junit testincludes="**/*Test.java"/>\r
+        <j2seproject3:test testincludes="**/*Test.java"/>\r
     </target>\r
     <target depends="init,compile-test,-pre-test-run,-do-test-run" if="have.tests" name="-post-test-run">\r
         <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail>\r
@@ -954,39 +1315,40 @@ is divided into following sections:
     </target>\r
     <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-do-test-run-single">\r
         <fail unless="test.includes">Must select some files in the IDE or set test.includes</fail>\r
-        <j2seproject3:junit excludes="" includes="${test.includes}"/>\r
+        <j2seproject3:test excludes="" includes="${test.includes}" testincludes="${test.includes}"/>\r
     </target>\r
     <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single" if="have.tests" name="-post-test-run-single">\r
         <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail>\r
     </target>\r
     <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single,-post-test-run-single" description="Run single unit test." name="test-single"/>\r
+    <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-do-test-run-single-method">\r
+        <fail unless="test.class">Must select some files in the IDE or set test.class</fail>\r
+        <fail unless="test.method">Must select some method in the IDE or set test.method</fail>\r
+        <j2seproject3:test excludes="" includes="${javac.includes}" testincludes="${test.class}" testmethods="${test.method}"/>\r
+    </target>\r
+    <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single-method" if="have.tests" name="-post-test-run-single-method">\r
+        <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail>\r
+    </target>\r
+    <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single-method,-post-test-run-single-method" description="Run single unit test." name="test-single-method"/>\r
     <!--\r
                 =======================\r
-                JUNIT DEBUGGING SECTION\r
+                TEST DEBUGGING SECTION\r
                 =======================\r
             -->\r
-    <target depends="init,compile-test" if="have.tests" name="-debug-start-debuggee-test">\r
+    <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-debug-start-debuggee-test">\r
         <fail unless="test.class">Must select one file in the IDE or set test.class</fail>\r
-        <property location="${build.test.results.dir}/TEST-${test.class}.xml" name="test.report.file"/>\r
-        <delete file="${test.report.file}"/>\r
-        <mkdir dir="${build.test.results.dir}"/>\r
-        <j2seproject3:debug classname="org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner" classpath="${ant.home}/lib/ant.jar:${ant.home}/lib/ant-junit.jar:${debug.test.classpath}">\r
-            <customize>\r
-                <syspropertyset>\r
-                    <propertyref prefix="test-sys-prop."/>\r
-                    <mapper from="test-sys-prop.*" to="*" type="glob"/>\r
-                </syspropertyset>\r
-                <arg value="${test.class}"/>\r
-                <arg value="showoutput=true"/>\r
-                <arg value="formatter=org.apache.tools.ant.taskdefs.optional.junit.BriefJUnitResultFormatter"/>\r
-                <arg value="formatter=org.apache.tools.ant.taskdefs.optional.junit.XMLJUnitResultFormatter,${test.report.file}"/>\r
-            </customize>\r
-        </j2seproject3:debug>\r
+        <j2seproject3:test-debug excludes="" includes="${javac.includes}" testClass="${test.class}" testincludes="${javac.includes}"/>\r
+    </target>\r
+    <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-debug-start-debuggee-test-method">\r
+        <fail unless="test.class">Must select one file in the IDE or set test.class</fail>\r
+        <fail unless="test.method">Must select some method in the IDE or set test.method</fail>\r
+        <j2seproject3:test-debug excludes="" includes="${javac.includes}" testClass="${test.class}" testMethod="${test.method}" testincludes="${test.class}" testmethods="${test.method}"/>\r
     </target>\r
     <target depends="init,compile-test" if="netbeans.home+have.tests" name="-debug-start-debugger-test">\r
         <j2seproject1:nbjpdastart classpath="${debug.test.classpath}" name="${test.class}"/>\r
     </target>\r
     <target depends="init,compile-test-single,-debug-start-debugger-test,-debug-start-debuggee-test" name="debug-test"/>\r
+    <target depends="init,compile-test-single,-debug-start-debugger-test,-debug-start-debuggee-test-method" name="debug-test-method"/>\r
     <target depends="init,-pre-debug-fix,compile-test-single" if="netbeans.home" name="-do-debug-fix-test">\r
         <j2seproject1:nbjpdareload dir="${build.test.classes.dir}"/>\r
     </target>\r
@@ -1051,9 +1413,12 @@ is divided into following sections:
     <target name="-check-call-dep">\r
         <property file="${call.built.properties}" prefix="already.built."/>\r
         <condition property="should.call.dep">\r
-            <not>\r
-                <isset property="already.built.${call.subproject}"/>\r
-            </not>\r
+            <and>\r
+                <not>\r
+                    <isset property="already.built.${call.subproject}"/>\r
+                </not>\r
+                <available file="${call.script}"/>\r
+            </and>\r
         </condition>\r
     </target>\r
     <target depends="-check-call-dep" if="should.call.dep" name="-maybe-call-dep">\r
index 6242e3a15cda5de61961a72743fa1d90f690c053..08b596a727c9051673708a8023cc7311a33889f8 100644 (file)
@@ -1,8 +1,8 @@
 build.xml.data.CRC32=2ca38d56\r
-build.xml.script.CRC32=a4d12ab0\r
-build.xml.stylesheet.CRC32=28e38971@1.44.1.45\r
+build.xml.script.CRC32=36c3b32a\r
+build.xml.stylesheet.CRC32=8064a381@1.68.1.46\r
 # This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml.\r
 # Do not edit this file. You may delete it but then the IDE will never regenerate such files for you.\r
 nbproject/build-impl.xml.data.CRC32=2ca38d56\r
-nbproject/build-impl.xml.script.CRC32=accc921f\r
-nbproject/build-impl.xml.stylesheet.CRC32=0ae3a408@1.44.1.45\r
+nbproject/build-impl.xml.script.CRC32=54d9b89d\r
+nbproject/build-impl.xml.stylesheet.CRC32=5a01deb7@1.68.1.46\r
index 5b986322ccca40c8f75781af8cfd250627244e53..54afe752e80775e66eddb664a4fd4577874d60d2 100644 (file)
@@ -1,2 +1,2 @@
 compile.on.save=true\r
-user.properties.file=C:\\Users\\Cube\\.netbeans\\7.0\\build.properties\r
+user.properties.file=H:\\Applications\\Roaming\\Netbeans\\7.4\\user\\build.properties\r
index 6c4cdc21b589d32c3ec9c4f477977d14b5e9109a..dcca50e20c45cb2f808477d671c87a30b8c0ff43 100644 (file)
@@ -2,9 +2,7 @@
 <project-private xmlns="http://www.netbeans.org/ns/project-private/1">\r
     <editor-bookmarks xmlns="http://www.netbeans.org/ns/editor-bookmarks/1"/>\r
     <editor-bookmarks xmlns="http://www.netbeans.org/ns/editor-bookmarks/2" lastBookmarkId="0"/>\r
-    <open-files xmlns="http://www.netbeans.org/ns/projectui-open-files/1">\r
-        <file>file:/H:/Works/extranet/fluidbook/tools/FWSTK_Resources/src/org/apache/pdfbox/resources/cmap/Add-RKSJ-V</file>\r
-        <file>file:/H:/Works/extranet/fluidbook/tools/FWSTK_Resources/src/org/apache/pdfbox/resources/cmap/Identity-H</file>\r
-        <file>file:/H:/Works/extranet/fluidbook/tools/FWSTK_Resources/src/org/apache/pdfbox/resources/cmap/UniKS-UCS2-V</file>\r
+    <open-files xmlns="http://www.netbeans.org/ns/projectui-open-files/2">\r
+        <group/>\r
     </open-files>\r
 </project-private>\r
index bc9e7a52c377fef649ed4bb2c90494186c9ef124..3ce365776b72e03c32815e44487a590197cbfbcb 100644 (file)
@@ -193,7 +193,12 @@ is divided into following sections:
         </condition>\r
         <path id="endorsed.classpath.path" path="${endorsed.classpath}"/>\r
         <condition else="" property="endorsed.classpath.cmd.line.arg" value="-Xbootclasspath/p:'${toString:endorsed.classpath.path}'">\r
-            <length length="0" string="${endorsed.classpath}" when="greater"/>\r
+            <and>\r
+                <isset property="endorsed.classpath"/>\r
+                <not>\r
+                    <equals arg1="${endorsed.classpath}" arg2="" trim="true"/>\r
+                </not>\r
+            </and>\r
         </condition>\r
         <condition else="" property="javac.profile.cmd.line.arg" value="-profile ${javac.profile}">\r
             <isset property="profile.available"/>\r
@@ -839,7 +844,7 @@ is divided into following sections:
                 </pathconvert>\r
                 <taskdef classname="org.netbeans.modules.java.j2seproject.copylibstask.CopyLibs" classpath="${libs.CopyLibs.classpath}" name="copylibs"/>\r
                 <copylibs compress="${jar.compress}" excludeFromCopy="${copylibs.excludes}" index="${jar.index}" indexMetaInf="${jar.index.metainf}" jarfile="${dist.jar}" manifest="@{manifest}" rebase="${copylibs.rebase}" runtimeclasspath="${run.classpath.without.build.classes.dir}">\r
-                    <fileset dir="${build.classes.dir}"/>\r
+                    <fileset dir="${build.classes.dir}" excludes="${dist.archive.excludes}"/>\r
                     <manifest>\r
                         <attribute name="Class-Path" value="${jar.classpath}"/>\r
                         <customize/>\r
@@ -851,7 +856,7 @@ is divided into following sections:
     <target name="-init-presetdef-jar">\r
         <presetdef name="jar" uri="http://www.netbeans.org/ns/j2se-project/1">\r
             <jar compress="${jar.compress}" index="${jar.index}" jarfile="${dist.jar}">\r
-                <j2seproject1:fileset dir="${build.classes.dir}"/>\r
+                <j2seproject1:fileset dir="${build.classes.dir}" excludes="${dist.archive.excludes}"/>\r
             </jar>\r
         </presetdef>\r
     </target>\r
index 0b4dfa4d027d4e19c7a9f45a9283e6e389ec22c1..111fd3fa11978eafe17839cb78d67e978b3a316a 100644 (file)
@@ -4,5 +4,5 @@ build.xml.stylesheet.CRC32=8064a381@1.68.1.46
 # This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml.\r
 # Do not edit this file. You may delete it but then the IDE will never regenerate such files for you.\r
 nbproject/build-impl.xml.data.CRC32=75d32fc3\r
-nbproject/build-impl.xml.script.CRC32=e1985bd5\r
-nbproject/build-impl.xml.stylesheet.CRC32=cdba79fa@1.68.1.46\r
+nbproject/build-impl.xml.script.CRC32=773be4cd\r
+nbproject/build-impl.xml.stylesheet.CRC32=5a01deb7@1.68.1.46\r
index 5aa2fea7bf417086c81ccabfe06cb2d78e4134e3..9d6df0f95eac7e0bed4af6b3fca67bc21f4bef06 100644 (file)
@@ -1 +1 @@
-config=Extract_Links\r
+config=Extract_texts\r
index 1d3c1d34ee60f162462b862b797d02265d5a8ae5..ffa17a7145c9984070526a8ecc927718b809f865 100644 (file)
@@ -1 +1 @@
-application.args=--input H:\\Documents\\fwstk\\texts\\document.pdf --extractTexts H:\\Documents\\fwstk\\texts\\%s%d.txt\r
+application.args=--input H:\\Documents\\fwstk\\texts\\document.pdf --extractTexts H:\\Documents\\fwstk\\texts\\%s%d.txt --threads 1\r
index dcca50e20c45cb2f808477d671c87a30b8c0ff43..226920c84ef266e37b5f332f805de2102f9c49a1 100644 (file)
@@ -3,6 +3,9 @@
     <editor-bookmarks xmlns="http://www.netbeans.org/ns/editor-bookmarks/1"/>\r
     <editor-bookmarks xmlns="http://www.netbeans.org/ns/editor-bookmarks/2" lastBookmarkId="0"/>\r
     <open-files xmlns="http://www.netbeans.org/ns/projectui-open-files/2">\r
-        <group/>\r
+        <group>\r
+            <file>file:/H:/Works/cubeExtranet/fluidbook/tools/fwstk/src/com/fluidbook/fwstk/Main.java</file>\r
+            <file>file:/H:/Works/cubeExtranet/fluidbook/tools/fwstk/src/com/fluidbook/fwstk/TextsThread.java</file>\r
+        </group>\r
     </open-files>\r
 </project-private>\r
index 801a72dbde7a245facec80474e16d3956b48c5f5..7f10c398598ced8a92e8179ad6eceab70f4e66d4 100644 (file)
@@ -842,7 +842,7 @@ class wsMaintenance {
                $dao->setLinksAndRulers($book_id, json_encode($newlinks), json_encode($rulers), 'Offset links positions (' . $direction . ' :: ' . $value . ')', $core->user->utilisateur_id);
        }
 
-       public function extractTexts($args) {
+       public static function extractTexts($args) {
                global $core;
                $book_id = $args[0];
                $dao = new wsDAOBook($core->con);
@@ -865,7 +865,29 @@ class wsMaintenance {
                        if ($book->parametres->ignoreSearchSeparators != '') {
                                $fwstk->setArg('--ignoreSeparators ' . $book->parametres->ignoreSearchSeparators);
                        }
+                       $fwstk->setArg('--threads 1');
                        $fwstk->execute();
+                       fb($fwstk->commande);
+                       fb($fwstk->output);
+               }
+
+               $dir = WS_BOOKS . '/index/' . $book->book_id;
+               if ($book->parametres->ignoreSearchSeparators != '') {
+                       $dir.='/' . sha1($book->parametres->ignoreSearchSeparators);
+               }
+
+               $prefixes = array('', 'p');
+               foreach ($prefixes as $prefix) {
+                       $ifilec = $dir . '/' . $prefix . 'index.json';
+                       $tfilec = $dir . '/' . $prefix . 'textes.json';
+
+                       $files = array($ifilec, $tfilec);
+
+                       foreach ($files as $f) {
+                               if (file_exists($f)) {
+                                       unlink($f);
+                               }
+                       }
                }
        }
 
index 0c8549e760e331e6a5f83eaa6420a44f292d4285..d9c58b96de9acdaa2c3a4567302dca741126bb74 100644 (file)
@@ -837,6 +837,7 @@ class wsDAOBook extends commonDAO {
                                $fwstk->setPath(CONVERTER_PATH);
                                $fwstk->setArg('--input ' . $out . '/crop.pdf');
                                $fwstk->setArg('--extractTexts ' . $out . '%s%d.txt');
+                               $fwstk->setArg('--threads 1');
                                $fwstk->setArg('--ignoreSeparators ' . $book->parametres->ignoreSearchSeparators);
                                $fwstk->execute();
                        }
index 3bdd425e7784520f934127d5ed3e5ad5c5593b3a..a951cdc24457ebd0e1b767ee801a3272f603d5cb 100644 (file)
@@ -353,6 +353,7 @@ class wsDocument extends cubeMetier {
                $fwstk->setArg('--input ' . $this->cropped);
                $fwstk->setArg('--extractTexts ' . $this->out . '%s%d.txt');
                $fwstk->setArg('--extractLinks ' . $this->out . 'p%d.csv');
+               $fwstk->setArg('--threads 1');
                $fwstk->execute();
                $this->addToLog($fwstk);