Andrei: Show the EventSupport interface
authorJaroslav Tulach <jtulach@netbeans.org>
Wed, 08 Aug 2012 23:00:39 +0200
changeset 395837ae5b09036
parent 394 ee6bd6cf2bf3
child 396 252337647cef
Andrei: Show the EventSupport interface
samples/openfixed/nbproject/build-impl.xml
samples/openfixed/nbproject/genfiles.properties
samples/openfixed/src/org/apidesign/openfixed/AsyncEventSupport.java
samples/openfixed/src/org/apidesign/openfixed/Calculator.java
samples/openfixed/src/org/apidesign/openfixed/EventSupport.java
samples/openfixed/src/org/apidesign/openfixed/PendingEventSupport.java
samples/openfixed/src/org/apidesign/openfixed/PostEventSupport.java
samples/openfixed/src/org/apidesign/openfixed/TrivialEventSupport.java
     1.1 --- a/samples/openfixed/nbproject/build-impl.xml	Wed Aug 08 22:42:33 2012 +0200
     1.2 +++ b/samples/openfixed/nbproject/build-impl.xml	Wed Aug 08 23:00:39 2012 +0200
     1.3 @@ -12,18 +12,18 @@
     1.4    - execution
     1.5    - debugging
     1.6    - javadoc
     1.7 -  - junit compilation
     1.8 -  - junit execution
     1.9 -  - junit debugging
    1.10 +  - test compilation
    1.11 +  - test execution
    1.12 +  - test debugging
    1.13    - applet
    1.14    - cleanup
    1.15  
    1.16          -->
    1.17  <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="openfixed-impl">
    1.18 -    <fail message="Please build using Ant 1.7.1 or higher.">
    1.19 +    <fail message="Please build using Ant 1.8.0 or higher.">
    1.20          <condition>
    1.21              <not>
    1.22 -                <antversion atleast="1.7.1"/>
    1.23 +                <antversion atleast="1.8.0"/>
    1.24              </not>
    1.25          </condition>
    1.26      </fail>
    1.27 @@ -156,6 +156,7 @@
    1.28              </and>
    1.29          </condition>
    1.30          <property name="run.jvmargs" value=""/>
    1.31 +        <property name="run.jvmargs.ide" value=""/>
    1.32          <property name="javac.compilerargs" value=""/>
    1.33          <property name="work.dir" value="${basedir}"/>
    1.34          <condition property="no.deps">
    1.35 @@ -198,7 +199,29 @@
    1.36          <property name="javac.fork" value="${jdkBug6558476}"/>
    1.37          <property name="jar.index" value="false"/>
    1.38          <property name="jar.index.metainf" value="${jar.index}"/>
    1.39 +        <property name="copylibs.rebase" value="true"/>
    1.40          <available file="${meta.inf.dir}/persistence.xml" property="has.persistence.xml"/>
    1.41 +        <condition property="junit.available">
    1.42 +            <or>
    1.43 +                <available classname="org.junit.Test" classpath="${run.test.classpath}"/>
    1.44 +                <available classname="junit.framework.Test" classpath="${run.test.classpath}"/>
    1.45 +            </or>
    1.46 +        </condition>
    1.47 +        <condition property="testng.available">
    1.48 +            <available classname="org.testng.annotations.Test" classpath="${run.test.classpath}"/>
    1.49 +        </condition>
    1.50 +        <condition property="junit+testng.available">
    1.51 +            <and>
    1.52 +                <istrue value="${junit.available}"/>
    1.53 +                <istrue value="${testng.available}"/>
    1.54 +            </and>
    1.55 +        </condition>
    1.56 +        <condition else="testng" property="testng.mode" value="mixed">
    1.57 +            <istrue value="${junit+testng.available}"/>
    1.58 +        </condition>
    1.59 +        <condition else="" property="testng.debug.mode" value="-mixed">
    1.60 +            <istrue value="${junit+testng.available}"/>
    1.61 +        </condition>
    1.62      </target>
    1.63      <target name="-post-init">
    1.64          <!-- Empty placeholder for easier customization. -->
    1.65 @@ -331,11 +354,52 @@
    1.66              </sequential>
    1.67          </macrodef>
    1.68      </target>
    1.69 -    <target name="-init-macrodef-junit">
    1.70 +    <target if="${junit.available}" name="-init-macrodef-junit-init">
    1.71 +        <condition else="false" property="nb.junit.batch" value="true">
    1.72 +            <and>
    1.73 +                <istrue value="${junit.available}"/>
    1.74 +                <not>
    1.75 +                    <isset property="test.method"/>
    1.76 +                </not>
    1.77 +            </and>
    1.78 +        </condition>
    1.79 +        <condition else="false" property="nb.junit.single" value="true">
    1.80 +            <and>
    1.81 +                <istrue value="${junit.available}"/>
    1.82 +                <isset property="test.method"/>
    1.83 +            </and>
    1.84 +        </condition>
    1.85 +    </target>
    1.86 +    <target if="${nb.junit.single}" name="-init-macrodef-junit-single" unless="${nb.junit.batch}">
    1.87          <macrodef name="junit" uri="http://www.netbeans.org/ns/j2se-project/3">
    1.88              <attribute default="${includes}" name="includes"/>
    1.89              <attribute default="${excludes}" name="excludes"/>
    1.90              <attribute default="**" name="testincludes"/>
    1.91 +            <attribute default="" name="testmethods"/>
    1.92 +            <element name="customize" optional="true"/>
    1.93 +            <sequential>
    1.94 +                <property name="junit.forkmode" value="perTest"/>
    1.95 +                <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" showoutput="true" tempdir="${build.dir}">
    1.96 +                    <test methods="@{testmethods}" name="@{testincludes}" todir="${build.test.results.dir}"/>
    1.97 +                    <syspropertyset>
    1.98 +                        <propertyref prefix="test-sys-prop."/>
    1.99 +                        <mapper from="test-sys-prop.*" to="*" type="glob"/>
   1.100 +                    </syspropertyset>
   1.101 +                    <formatter type="brief" usefile="false"/>
   1.102 +                    <formatter type="xml"/>
   1.103 +                    <jvmarg value="-ea"/>
   1.104 +                    <customize/>
   1.105 +                </junit>
   1.106 +            </sequential>
   1.107 +        </macrodef>
   1.108 +    </target>
   1.109 +    <target if="${nb.junit.batch}" name="-init-macrodef-junit-batch" unless="${nb.junit.single}">
   1.110 +        <macrodef name="junit" uri="http://www.netbeans.org/ns/j2se-project/3">
   1.111 +            <attribute default="${includes}" name="includes"/>
   1.112 +            <attribute default="${excludes}" name="excludes"/>
   1.113 +            <attribute default="**" name="testincludes"/>
   1.114 +            <attribute default="" name="testmethods"/>
   1.115 +            <element name="customize" optional="true"/>
   1.116              <sequential>
   1.117                  <property name="junit.forkmode" value="perTest"/>
   1.118                  <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" showoutput="true" tempdir="${build.dir}">
   1.119 @@ -344,32 +408,270 @@
   1.120                              <filename name="@{testincludes}"/>
   1.121                          </fileset>
   1.122                      </batchtest>
   1.123 -                    <classpath>
   1.124 -                        <path path="${run.test.classpath}"/>
   1.125 -                    </classpath>
   1.126                      <syspropertyset>
   1.127                          <propertyref prefix="test-sys-prop."/>
   1.128                          <mapper from="test-sys-prop.*" to="*" type="glob"/>
   1.129                      </syspropertyset>
   1.130                      <formatter type="brief" usefile="false"/>
   1.131                      <formatter type="xml"/>
   1.132 -                    <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
   1.133                      <jvmarg value="-ea"/>
   1.134 -                    <jvmarg line="${run.jvmargs}"/>
   1.135 +                    <customize/>
   1.136                  </junit>
   1.137              </sequential>
   1.138          </macrodef>
   1.139      </target>
   1.140 -    <target depends="-profile-pre-init, init, -profile-post-init, -profile-init-macrodef-profile, -profile-init-check" name="profile-init"/>
   1.141 -    <target name="-profile-pre-init">
   1.142 +    <target depends="-init-macrodef-junit-init,-init-macrodef-junit-single, -init-macrodef-junit-batch" if="${junit.available}" name="-init-macrodef-junit"/>
   1.143 +    <target if="${testng.available}" name="-init-macrodef-testng">
   1.144 +        <macrodef name="testng" uri="http://www.netbeans.org/ns/j2se-project/3">
   1.145 +            <attribute default="${includes}" name="includes"/>
   1.146 +            <attribute default="${excludes}" name="excludes"/>
   1.147 +            <attribute default="**" name="testincludes"/>
   1.148 +            <attribute default="" name="testmethods"/>
   1.149 +            <element name="customize" optional="true"/>
   1.150 +            <sequential>
   1.151 +                <condition else="" property="testng.methods.arg" value="@{testincludes}.@{testmethods}">
   1.152 +                    <isset property="test.method"/>
   1.153 +                </condition>
   1.154 +                <union id="test.set">
   1.155 +                    <fileset dir="${test.src.dir}" excludes="@{excludes},**/*.xml,${excludes}" includes="@{includes}">
   1.156 +                        <filename name="@{testincludes}"/>
   1.157 +                    </fileset>
   1.158 +                </union>
   1.159 +                <taskdef classname="org.testng.TestNGAntTask" classpath="${run.test.classpath}" name="testng"/>
   1.160 +                <testng classfilesetref="test.set" failureProperty="tests.failed" methods="${testng.methods.arg}" mode="${testng.mode}" outputdir="${build.test.results.dir}" suitename="openfixed" testname="TestNG tests" workingDir="${work.dir}">
   1.161 +                    <xmlfileset dir="${build.test.classes.dir}" includes="@{testincludes}"/>
   1.162 +                    <propertyset>
   1.163 +                        <propertyref prefix="test-sys-prop."/>
   1.164 +                        <mapper from="test-sys-prop.*" to="*" type="glob"/>
   1.165 +                    </propertyset>
   1.166 +                    <customize/>
   1.167 +                </testng>
   1.168 +            </sequential>
   1.169 +        </macrodef>
   1.170 +    </target>
   1.171 +    <target name="-init-macrodef-test-impl">
   1.172 +        <macrodef name="test-impl" uri="http://www.netbeans.org/ns/j2se-project/3">
   1.173 +            <attribute default="${includes}" name="includes"/>
   1.174 +            <attribute default="${excludes}" name="excludes"/>
   1.175 +            <attribute default="**" name="testincludes"/>
   1.176 +            <attribute default="" name="testmethods"/>
   1.177 +            <element implicit="true" name="customize" optional="true"/>
   1.178 +            <sequential>
   1.179 +                <echo>No tests executed.</echo>
   1.180 +            </sequential>
   1.181 +        </macrodef>
   1.182 +    </target>
   1.183 +    <target depends="-init-macrodef-junit" if="${junit.available}" name="-init-macrodef-junit-impl">
   1.184 +        <macrodef name="test-impl" uri="http://www.netbeans.org/ns/j2se-project/3">
   1.185 +            <attribute default="${includes}" name="includes"/>
   1.186 +            <attribute default="${excludes}" name="excludes"/>
   1.187 +            <attribute default="**" name="testincludes"/>
   1.188 +            <attribute default="" name="testmethods"/>
   1.189 +            <element implicit="true" name="customize" optional="true"/>
   1.190 +            <sequential>
   1.191 +                <j2seproject3:junit excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
   1.192 +                    <customize/>
   1.193 +                </j2seproject3:junit>
   1.194 +            </sequential>
   1.195 +        </macrodef>
   1.196 +    </target>
   1.197 +    <target depends="-init-macrodef-testng" if="${testng.available}" name="-init-macrodef-testng-impl">
   1.198 +        <macrodef name="test-impl" uri="http://www.netbeans.org/ns/j2se-project/3">
   1.199 +            <attribute default="${includes}" name="includes"/>
   1.200 +            <attribute default="${excludes}" name="excludes"/>
   1.201 +            <attribute default="**" name="testincludes"/>
   1.202 +            <attribute default="" name="testmethods"/>
   1.203 +            <element implicit="true" name="customize" optional="true"/>
   1.204 +            <sequential>
   1.205 +                <j2seproject3:testng excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
   1.206 +                    <customize/>
   1.207 +                </j2seproject3:testng>
   1.208 +            </sequential>
   1.209 +        </macrodef>
   1.210 +    </target>
   1.211 +    <target depends="-init-macrodef-test-impl,-init-macrodef-junit-impl,-init-macrodef-testng-impl" name="-init-macrodef-test">
   1.212 +        <macrodef name="test" uri="http://www.netbeans.org/ns/j2se-project/3">
   1.213 +            <attribute default="${includes}" name="includes"/>
   1.214 +            <attribute default="${excludes}" name="excludes"/>
   1.215 +            <attribute default="**" name="testincludes"/>
   1.216 +            <attribute default="" name="testmethods"/>
   1.217 +            <sequential>
   1.218 +                <j2seproject3:test-impl excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
   1.219 +                    <customize>
   1.220 +                        <classpath>
   1.221 +                            <path path="${run.test.classpath}"/>
   1.222 +                        </classpath>
   1.223 +                        <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
   1.224 +                        <jvmarg line="${run.jvmargs}"/>
   1.225 +                        <jvmarg line="${run.jvmargs.ide}"/>
   1.226 +                    </customize>
   1.227 +                </j2seproject3:test-impl>
   1.228 +            </sequential>
   1.229 +        </macrodef>
   1.230 +    </target>
   1.231 +    <target if="${junit.available}" name="-init-macrodef-junit-debug" unless="${nb.junit.batch}">
   1.232 +        <macrodef name="junit-debug" uri="http://www.netbeans.org/ns/j2se-project/3">
   1.233 +            <attribute default="${includes}" name="includes"/>
   1.234 +            <attribute default="${excludes}" name="excludes"/>
   1.235 +            <attribute default="**" name="testincludes"/>
   1.236 +            <attribute default="" name="testmethods"/>
   1.237 +            <element name="customize" optional="true"/>
   1.238 +            <sequential>
   1.239 +                <property name="junit.forkmode" value="perTest"/>
   1.240 +                <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" showoutput="true" tempdir="${build.dir}">
   1.241 +                    <test methods="@{testmethods}" name="@{testincludes}" todir="${build.test.results.dir}"/>
   1.242 +                    <syspropertyset>
   1.243 +                        <propertyref prefix="test-sys-prop."/>
   1.244 +                        <mapper from="test-sys-prop.*" to="*" type="glob"/>
   1.245 +                    </syspropertyset>
   1.246 +                    <formatter type="brief" usefile="false"/>
   1.247 +                    <formatter type="xml"/>
   1.248 +                    <jvmarg value="-ea"/>
   1.249 +                    <jvmarg line="${debug-args-line}"/>
   1.250 +                    <jvmarg value="-Xrunjdwp:transport=${debug-transport},address=${jpda.address}"/>
   1.251 +                    <customize/>
   1.252 +                </junit>
   1.253 +            </sequential>
   1.254 +        </macrodef>
   1.255 +    </target>
   1.256 +    <target if="${nb.junit.batch}" name="-init-macrodef-junit-debug-batch">
   1.257 +        <macrodef name="junit-debug" uri="http://www.netbeans.org/ns/j2se-project/3">
   1.258 +            <attribute default="${includes}" name="includes"/>
   1.259 +            <attribute default="${excludes}" name="excludes"/>
   1.260 +            <attribute default="**" name="testincludes"/>
   1.261 +            <attribute default="" name="testmethods"/>
   1.262 +            <element name="customize" optional="true"/>
   1.263 +            <sequential>
   1.264 +                <property name="junit.forkmode" value="perTest"/>
   1.265 +                <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" showoutput="true" tempdir="${build.dir}">
   1.266 +                    <batchtest todir="${build.test.results.dir}">
   1.267 +                        <fileset dir="${test.src.dir}" excludes="@{excludes},${excludes}" includes="@{includes}">
   1.268 +                            <filename name="@{testincludes}"/>
   1.269 +                        </fileset>
   1.270 +                    </batchtest>
   1.271 +                    <syspropertyset>
   1.272 +                        <propertyref prefix="test-sys-prop."/>
   1.273 +                        <mapper from="test-sys-prop.*" to="*" type="glob"/>
   1.274 +                    </syspropertyset>
   1.275 +                    <formatter type="brief" usefile="false"/>
   1.276 +                    <formatter type="xml"/>
   1.277 +                    <jvmarg value="-ea"/>
   1.278 +                    <jvmarg line="${debug-args-line}"/>
   1.279 +                    <jvmarg value="-Xrunjdwp:transport=${debug-transport},address=${jpda.address}"/>
   1.280 +                    <customize/>
   1.281 +                </junit>
   1.282 +            </sequential>
   1.283 +        </macrodef>
   1.284 +    </target>
   1.285 +    <target depends="-init-macrodef-junit-debug,-init-macrodef-junit-debug-batch" if="${junit.available}" name="-init-macrodef-junit-debug-impl">
   1.286 +        <macrodef name="test-debug-impl" uri="http://www.netbeans.org/ns/j2se-project/3">
   1.287 +            <attribute default="${includes}" name="includes"/>
   1.288 +            <attribute default="${excludes}" name="excludes"/>
   1.289 +            <attribute default="**" name="testincludes"/>
   1.290 +            <attribute default="" name="testmethods"/>
   1.291 +            <element implicit="true" name="customize" optional="true"/>
   1.292 +            <sequential>
   1.293 +                <j2seproject3:junit-debug excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
   1.294 +                    <customize/>
   1.295 +                </j2seproject3:junit-debug>
   1.296 +            </sequential>
   1.297 +        </macrodef>
   1.298 +    </target>
   1.299 +    <target if="${testng.available}" name="-init-macrodef-testng-debug">
   1.300 +        <macrodef name="testng-debug" uri="http://www.netbeans.org/ns/j2se-project/3">
   1.301 +            <attribute default="${main.class}" name="testClass"/>
   1.302 +            <attribute default="" name="testMethod"/>
   1.303 +            <element name="customize2" optional="true"/>
   1.304 +            <sequential>
   1.305 +                <condition else="-testclass @{testClass}" property="test.class.or.method" value="-methods @{testClass}.@{testMethod}">
   1.306 +                    <isset property="test.method"/>
   1.307 +                </condition>
   1.308 +                <condition else="-suitename openfixed -testname @{testClass} ${test.class.or.method}" property="testng.cmd.args" value="@{testClass}">
   1.309 +                    <matches pattern=".*\.xml" string="@{testClass}"/>
   1.310 +                </condition>
   1.311 +                <delete dir="${build.test.results.dir}" quiet="true"/>
   1.312 +                <mkdir dir="${build.test.results.dir}"/>
   1.313 +                <j2seproject3:debug classname="org.testng.TestNG" classpath="${debug.test.classpath}">
   1.314 +                    <customize>
   1.315 +                        <customize2/>
   1.316 +                        <jvmarg value="-ea"/>
   1.317 +                        <arg line="${testng.debug.mode}"/>
   1.318 +                        <arg line="-d ${build.test.results.dir}"/>
   1.319 +                        <arg line="-listener org.testng.reporters.VerboseReporter"/>
   1.320 +                        <arg line="${testng.cmd.args}"/>
   1.321 +                    </customize>
   1.322 +                </j2seproject3:debug>
   1.323 +            </sequential>
   1.324 +        </macrodef>
   1.325 +    </target>
   1.326 +    <target depends="-init-macrodef-testng-debug" if="${testng.available}" name="-init-macrodef-testng-debug-impl">
   1.327 +        <macrodef name="testng-debug-impl" uri="http://www.netbeans.org/ns/j2se-project/3">
   1.328 +            <attribute default="${main.class}" name="testClass"/>
   1.329 +            <attribute default="" name="testMethod"/>
   1.330 +            <element implicit="true" name="customize2" optional="true"/>
   1.331 +            <sequential>
   1.332 +                <j2seproject3:testng-debug testClass="@{testClass}" testMethod="@{testMethod}">
   1.333 +                    <customize2/>
   1.334 +                </j2seproject3:testng-debug>
   1.335 +            </sequential>
   1.336 +        </macrodef>
   1.337 +    </target>
   1.338 +    <target depends="-init-macrodef-junit-debug-impl" if="${junit.available}" name="-init-macrodef-test-debug-junit">
   1.339 +        <macrodef name="test-debug" uri="http://www.netbeans.org/ns/j2se-project/3">
   1.340 +            <attribute default="${includes}" name="includes"/>
   1.341 +            <attribute default="${excludes}" name="excludes"/>
   1.342 +            <attribute default="**" name="testincludes"/>
   1.343 +            <attribute default="" name="testmethods"/>
   1.344 +            <attribute default="${main.class}" name="testClass"/>
   1.345 +            <attribute default="" name="testMethod"/>
   1.346 +            <sequential>
   1.347 +                <j2seproject3:test-debug-impl excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
   1.348 +                    <customize>
   1.349 +                        <classpath>
   1.350 +                            <path path="${run.test.classpath}"/>
   1.351 +                        </classpath>
   1.352 +                        <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
   1.353 +                        <jvmarg line="${run.jvmargs}"/>
   1.354 +                        <jvmarg line="${run.jvmargs.ide}"/>
   1.355 +                    </customize>
   1.356 +                </j2seproject3:test-debug-impl>
   1.357 +            </sequential>
   1.358 +        </macrodef>
   1.359 +    </target>
   1.360 +    <target depends="-init-macrodef-testng-debug-impl" if="${testng.available}" name="-init-macrodef-test-debug-testng">
   1.361 +        <macrodef name="test-debug" uri="http://www.netbeans.org/ns/j2se-project/3">
   1.362 +            <attribute default="${includes}" name="includes"/>
   1.363 +            <attribute default="${excludes}" name="excludes"/>
   1.364 +            <attribute default="**" name="testincludes"/>
   1.365 +            <attribute default="" name="testmethods"/>
   1.366 +            <attribute default="${main.class}" name="testClass"/>
   1.367 +            <attribute default="" name="testMethod"/>
   1.368 +            <sequential>
   1.369 +                <j2seproject3:testng-debug-impl testClass="@{testClass}" testMethod="@{testMethod}">
   1.370 +                    <customize2>
   1.371 +                        <syspropertyset>
   1.372 +                            <propertyref prefix="test-sys-prop."/>
   1.373 +                            <mapper from="test-sys-prop.*" to="*" type="glob"/>
   1.374 +                        </syspropertyset>
   1.375 +                    </customize2>
   1.376 +                </j2seproject3:testng-debug-impl>
   1.377 +            </sequential>
   1.378 +        </macrodef>
   1.379 +    </target>
   1.380 +    <target depends="-init-macrodef-test-debug-junit,-init-macrodef-test-debug-testng" name="-init-macrodef-test-debug"/>
   1.381 +    <!--
   1.382 +                pre NB7.2 profiling section; consider it deprecated
   1.383 +            -->
   1.384 +    <target depends="-profile-pre-init, init, -profile-post-init, -profile-init-macrodef-profile, -profile-init-check" if="profiler.info.jvmargs.agent" name="profile-init"/>
   1.385 +    <target if="profiler.info.jvmargs.agent" name="-profile-pre-init">
   1.386          <!-- Empty placeholder for easier customization. -->
   1.387          <!-- You can override this target in the ../build.xml file. -->
   1.388      </target>
   1.389 -    <target name="-profile-post-init">
   1.390 +    <target if="profiler.info.jvmargs.agent" name="-profile-post-init">
   1.391          <!-- Empty placeholder for easier customization. -->
   1.392          <!-- You can override this target in the ../build.xml file. -->
   1.393      </target>
   1.394 -    <target name="-profile-init-macrodef-profile">
   1.395 +    <target if="profiler.info.jvmargs.agent" name="-profile-init-macrodef-profile">
   1.396          <macrodef name="resolve">
   1.397              <attribute name="name"/>
   1.398              <attribute name="value"/>
   1.399 @@ -384,6 +686,7 @@
   1.400                  <property environment="env"/>
   1.401                  <resolve name="profiler.current.path" value="${profiler.info.pathvar}"/>
   1.402                  <java classname="@{classname}" dir="${profiler.info.dir}" fork="true" jvm="${profiler.info.jvm}">
   1.403 +                    <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
   1.404                      <jvmarg value="${profiler.info.jvmargs.agent}"/>
   1.405                      <jvmarg line="${profiler.info.jvmargs}"/>
   1.406                      <env key="${profiler.info.pathvar}" path="${profiler.info.agentpath}:${profiler.current.path}"/>
   1.407 @@ -400,10 +703,13 @@
   1.408              </sequential>
   1.409          </macrodef>
   1.410      </target>
   1.411 -    <target depends="-profile-pre-init, init, -profile-post-init, -profile-init-macrodef-profile" name="-profile-init-check">
   1.412 +    <target depends="-profile-pre-init, init, -profile-post-init, -profile-init-macrodef-profile" if="profiler.info.jvmargs.agent" name="-profile-init-check">
   1.413          <fail unless="profiler.info.jvm">Must set JVM to use for profiling in profiler.info.jvm</fail>
   1.414          <fail unless="profiler.info.jvmargs.agent">Must set profiler agent JVM arguments in profiler.info.jvmargs.agent</fail>
   1.415      </target>
   1.416 +    <!--
   1.417 +                end of pre NB7.2 profiling section
   1.418 +            -->
   1.419      <target depends="-init-debug-args" name="-init-macrodef-nbjpda">
   1.420          <macrodef name="nbjpdastart" uri="http://www.netbeans.org/ns/j2se-project/1">
   1.421              <attribute default="${main.class}" name="name"/>
   1.422 @@ -461,6 +767,7 @@
   1.423                      <jvmarg value="-Dfile.encoding=${runtime.encoding}"/>
   1.424                      <redirector errorencoding="${runtime.encoding}" inputencoding="${runtime.encoding}" outputencoding="${runtime.encoding}"/>
   1.425                      <jvmarg line="${run.jvmargs}"/>
   1.426 +                    <jvmarg line="${run.jvmargs.ide}"/>
   1.427                      <classpath>
   1.428                          <path path="@{classpath}"/>
   1.429                      </classpath>
   1.430 @@ -477,6 +784,7 @@
   1.431          <macrodef name="java" uri="http://www.netbeans.org/ns/j2se-project/1">
   1.432              <attribute default="${main.class}" name="classname"/>
   1.433              <attribute default="${run.classpath}" name="classpath"/>
   1.434 +            <attribute default="jvm" name="jvm"/>
   1.435              <element name="customize" optional="true"/>
   1.436              <sequential>
   1.437                  <java classname="@{classname}" dir="${work.dir}" fork="true">
   1.438 @@ -484,6 +792,7 @@
   1.439                      <jvmarg value="-Dfile.encoding=${runtime.encoding}"/>
   1.440                      <redirector errorencoding="${runtime.encoding}" inputencoding="${runtime.encoding}" outputencoding="${runtime.encoding}"/>
   1.441                      <jvmarg line="${run.jvmargs}"/>
   1.442 +                    <jvmarg line="${run.jvmargs.ide}"/>
   1.443                      <classpath>
   1.444                          <path path="@{classpath}"/>
   1.445                      </classpath>
   1.446 @@ -510,11 +819,14 @@
   1.447                      <path path="${run.classpath.without.build.classes.dir}"/>
   1.448                      <chainedmapper>
   1.449                          <flattenmapper/>
   1.450 +                        <filtermapper>
   1.451 +                            <replacestring from=" " to="%20"/>
   1.452 +                        </filtermapper>
   1.453                          <globmapper from="*" to="lib/*"/>
   1.454                      </chainedmapper>
   1.455                  </pathconvert>
   1.456                  <taskdef classname="org.netbeans.modules.java.j2seproject.copylibstask.CopyLibs" classpath="${libs.CopyLibs.classpath}" name="copylibs"/>
   1.457 -                <copylibs compress="${jar.compress}" index="${jar.index}" indexMetaInf="${jar.index.metainf}" jarfile="${dist.jar}" manifest="@{manifest}" runtimeclasspath="${run.classpath.without.build.classes.dir}">
   1.458 +                <copylibs compress="${jar.compress}" index="${jar.index}" indexMetaInf="${jar.index.metainf}" jarfile="${dist.jar}" manifest="@{manifest}" rebase="${copylibs.rebase}" runtimeclasspath="${run.classpath.without.build.classes.dir}">
   1.459                      <fileset dir="${build.classes.dir}"/>
   1.460                      <manifest>
   1.461                          <attribute name="Class-Path" value="${jar.classpath}"/>
   1.462 @@ -555,7 +867,7 @@
   1.463      <target depends="-init-ap-cmdline-properties,-init-ap-cmdline-supported" name="-init-ap-cmdline">
   1.464          <property name="ap.cmd.line.internal" value=""/>
   1.465      </target>
   1.466 -    <target depends="-pre-init,-init-private,-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"/>
   1.467 +    <target depends="-pre-init,-init-private,-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"/>
   1.468      <!--
   1.469                  ===================
   1.470                  COMPILATION SECTION
   1.471 @@ -771,7 +1083,11 @@
   1.472                  PROFILING SECTION
   1.473                  =================
   1.474              -->
   1.475 -    <target depends="profile-init,compile" description="Profile a project in the IDE." if="netbeans.home" name="profile">
   1.476 +    <!--
   1.477 +                pre NB7.2 profiler integration
   1.478 +            -->
   1.479 +    <target depends="profile-init,compile" description="Profile a project in the IDE." if="profiler.info.jvmargs.agent" name="-profile-pre72">
   1.480 +        <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail>
   1.481          <nbprofiledirect>
   1.482              <classpath>
   1.483                  <path path="${run.classpath}"/>
   1.484 @@ -779,8 +1095,9 @@
   1.485          </nbprofiledirect>
   1.486          <profile/>
   1.487      </target>
   1.488 -    <target depends="profile-init,compile-single" description="Profile a selected class in the IDE." if="netbeans.home" name="profile-single">
   1.489 +    <target depends="profile-init,compile-single" description="Profile a selected class in the IDE." if="profiler.info.jvmargs.agent" name="-profile-single-pre72">
   1.490          <fail unless="profile.class">Must select one file in the IDE or set profile.class</fail>
   1.491 +        <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail>
   1.492          <nbprofiledirect>
   1.493              <classpath>
   1.494                  <path path="${run.classpath}"/>
   1.495 @@ -788,12 +1105,8 @@
   1.496          </nbprofiledirect>
   1.497          <profile classname="${profile.class}"/>
   1.498      </target>
   1.499 -    <!--
   1.500 -                =========================
   1.501 -                APPLET PROFILING  SECTION
   1.502 -                =========================
   1.503 -            -->
   1.504 -    <target depends="profile-init,compile-single" if="netbeans.home" name="profile-applet">
   1.505 +    <target depends="profile-init,compile-single" if="profiler.info.jvmargs.agent" name="-profile-applet-pre72">
   1.506 +        <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail>
   1.507          <nbprofiledirect>
   1.508              <classpath>
   1.509                  <path path="${run.classpath}"/>
   1.510 @@ -805,12 +1118,8 @@
   1.511              </customize>
   1.512          </profile>
   1.513      </target>
   1.514 -    <!--
   1.515 -                =========================
   1.516 -                TESTS PROFILING  SECTION
   1.517 -                =========================
   1.518 -            -->
   1.519 -    <target depends="profile-init,compile-test-single" if="netbeans.home" name="profile-test-single">
   1.520 +    <target depends="profile-init,compile-test-single" if="profiler.info.jvmargs.agent" name="-profile-test-single-pre72">
   1.521 +        <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail>
   1.522          <nbprofiledirect>
   1.523              <classpath>
   1.524                  <path path="${run.test.classpath}"/>
   1.525 @@ -833,22 +1142,68 @@
   1.526          </junit>
   1.527      </target>
   1.528      <!--
   1.529 +                end of pre NB72 profiling section
   1.530 +            -->
   1.531 +    <target if="netbeans.home" name="-profile-check">
   1.532 +        <condition property="profiler.configured">
   1.533 +            <or>
   1.534 +                <contains casesensitive="true" string="${run.jvmargs.ide}" substring="-agentpath:"/>
   1.535 +                <contains casesensitive="true" string="${run.jvmargs.ide}" substring="-javaagent:"/>
   1.536 +            </or>
   1.537 +        </condition>
   1.538 +    </target>
   1.539 +    <target depends="-profile-check,-profile-pre72" description="Profile a project in the IDE." if="profiler.configured" name="profile" unless="profiler.info.jvmargs.agent">
   1.540 +        <startprofiler/>
   1.541 +        <antcall target="run"/>
   1.542 +    </target>
   1.543 +    <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">
   1.544 +        <fail unless="run.class">Must select one file in the IDE or set run.class</fail>
   1.545 +        <startprofiler/>
   1.546 +        <antcall target="run-single"/>
   1.547 +    </target>
   1.548 +    <target depends="-profile-test-single-pre72" description="Profile a selected test in the IDE." name="profile-test-single"/>
   1.549 +    <target depends="-profile-check" description="Profile a selected test in the IDE." if="profiler.configured" name="profile-test" unless="profiler.info.jvmargs">
   1.550 +        <fail unless="test.includes">Must select some files in the IDE or set test.includes</fail>
   1.551 +        <startprofiler/>
   1.552 +        <antcall target="test-single"/>
   1.553 +    </target>
   1.554 +    <target depends="-profile-check" description="Profile a selected class in the IDE." if="profiler.configured" name="profile-test-with-main">
   1.555 +        <fail unless="run.class">Must select one file in the IDE or set run.class</fail>
   1.556 +        <startprofiler/>
   1.557 +        <antcal target="run-test-with-main"/>
   1.558 +    </target>
   1.559 +    <target depends="-profile-check,-profile-applet-pre72" if="profiler.configured" name="profile-applet" unless="profiler.info.jvmargs.agent">
   1.560 +        <fail unless="applet.url">Must select one file in the IDE or set applet.url</fail>
   1.561 +        <startprofiler/>
   1.562 +        <antcall target="run-applet"/>
   1.563 +    </target>
   1.564 +    <!--
   1.565                  ===============
   1.566                  JAVADOC SECTION
   1.567                  ===============
   1.568              -->
   1.569      <target depends="init" if="have.sources" name="-javadoc-build">
   1.570          <mkdir dir="${dist.javadoc.dir}"/>
   1.571 +        <condition else="" property="javadoc.endorsed.classpath.cmd.line.arg" value="-J${endorsed.classpath.cmd.line.arg}">
   1.572 +            <and>
   1.573 +                <isset property="endorsed.classpath.cmd.line.arg"/>
   1.574 +                <not>
   1.575 +                    <equals arg1="${endorsed.classpath.cmd.line.arg}" arg2=""/>
   1.576 +                </not>
   1.577 +            </and>
   1.578 +        </condition>
   1.579          <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}">
   1.580              <classpath>
   1.581                  <path path="${javac.classpath}"/>
   1.582              </classpath>
   1.583 -            <fileset dir="${src.dir}" excludes="${excludes}" includes="${includes}">
   1.584 +            <fileset dir="${src.dir}" excludes="*.java,${excludes}" includes="${includes}">
   1.585                  <filename name="**/*.java"/>
   1.586              </fileset>
   1.587              <fileset dir="${build.generated.sources.dir}" erroronmissingdir="false">
   1.588                  <include name="**/*.java"/>
   1.589 +                <exclude name="*.java"/>
   1.590              </fileset>
   1.591 +            <arg line="${javadoc.endorsed.classpath.cmd.line.arg}"/>
   1.592          </javadoc>
   1.593          <copy todir="${dist.javadoc.dir}">
   1.594              <fileset dir="${src.dir}" excludes="${excludes}" includes="${includes}">
   1.595 @@ -865,7 +1220,7 @@
   1.596      <target depends="init,-javadoc-build,-javadoc-browse" description="Build Javadoc." name="javadoc"/>
   1.597      <!--
   1.598                  =========================
   1.599 -                JUNIT COMPILATION SECTION
   1.600 +                TEST COMPILATION SECTION
   1.601                  =========================
   1.602              -->
   1.603      <target depends="init,compile" if="have.tests" name="-pre-pre-compile-test">
   1.604 @@ -908,14 +1263,14 @@
   1.605      <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test-single,-do-compile-test-single,-post-compile-test-single" name="compile-test-single"/>
   1.606      <!--
   1.607                  =======================
   1.608 -                JUNIT EXECUTION SECTION
   1.609 +                TEST EXECUTION SECTION
   1.610                  =======================
   1.611              -->
   1.612      <target depends="init" if="have.tests" name="-pre-test-run">
   1.613          <mkdir dir="${build.test.results.dir}"/>
   1.614      </target>
   1.615      <target depends="init,compile-test,-pre-test-run" if="have.tests" name="-do-test-run">
   1.616 -        <j2seproject3:junit testincludes="**/*Test.java"/>
   1.617 +        <j2seproject3:test testincludes="**/*Test.java"/>
   1.618      </target>
   1.619      <target depends="init,compile-test,-pre-test-run,-do-test-run" if="have.tests" name="-post-test-run">
   1.620          <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail>
   1.621 @@ -928,39 +1283,40 @@
   1.622      </target>
   1.623      <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-do-test-run-single">
   1.624          <fail unless="test.includes">Must select some files in the IDE or set test.includes</fail>
   1.625 -        <j2seproject3:junit excludes="" includes="${test.includes}"/>
   1.626 +        <j2seproject3:test excludes="" includes="${test.includes}" testincludes="${test.includes}"/>
   1.627      </target>
   1.628      <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single" if="have.tests" name="-post-test-run-single">
   1.629          <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail>
   1.630      </target>
   1.631      <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"/>
   1.632 +    <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-do-test-run-single-method">
   1.633 +        <fail unless="test.class">Must select some files in the IDE or set test.class</fail>
   1.634 +        <fail unless="test.method">Must select some method in the IDE or set test.method</fail>
   1.635 +        <j2seproject3:test excludes="" includes="${javac.includes}" testincludes="${test.class}" testmethods="${test.method}"/>
   1.636 +    </target>
   1.637 +    <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single-method" if="have.tests" name="-post-test-run-single-method">
   1.638 +        <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail>
   1.639 +    </target>
   1.640 +    <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"/>
   1.641      <!--
   1.642                  =======================
   1.643 -                JUNIT DEBUGGING SECTION
   1.644 +                TEST DEBUGGING SECTION
   1.645                  =======================
   1.646              -->
   1.647 -    <target depends="init,compile-test" if="have.tests" name="-debug-start-debuggee-test">
   1.648 +    <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-debug-start-debuggee-test">
   1.649          <fail unless="test.class">Must select one file in the IDE or set test.class</fail>
   1.650 -        <property location="${build.test.results.dir}/TEST-${test.class}.xml" name="test.report.file"/>
   1.651 -        <delete file="${test.report.file}"/>
   1.652 -        <mkdir dir="${build.test.results.dir}"/>
   1.653 -        <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}">
   1.654 -            <customize>
   1.655 -                <syspropertyset>
   1.656 -                    <propertyref prefix="test-sys-prop."/>
   1.657 -                    <mapper from="test-sys-prop.*" to="*" type="glob"/>
   1.658 -                </syspropertyset>
   1.659 -                <arg value="${test.class}"/>
   1.660 -                <arg value="showoutput=true"/>
   1.661 -                <arg value="formatter=org.apache.tools.ant.taskdefs.optional.junit.BriefJUnitResultFormatter"/>
   1.662 -                <arg value="formatter=org.apache.tools.ant.taskdefs.optional.junit.XMLJUnitResultFormatter,${test.report.file}"/>
   1.663 -            </customize>
   1.664 -        </j2seproject3:debug>
   1.665 +        <j2seproject3:test-debug excludes="" includes="${javac.includes}" testClass="${test.class}" testincludes="${javac.includes}"/>
   1.666 +    </target>
   1.667 +    <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-debug-start-debuggee-test-method">
   1.668 +        <fail unless="test.class">Must select one file in the IDE or set test.class</fail>
   1.669 +        <fail unless="test.method">Must select some method in the IDE or set test.method</fail>
   1.670 +        <j2seproject3:test-debug excludes="" includes="${javac.includes}" testClass="${test.class}" testMethod="${test.method}" testincludes="${test.class}" testmethods="${test.method}"/>
   1.671      </target>
   1.672      <target depends="init,compile-test" if="netbeans.home+have.tests" name="-debug-start-debugger-test">
   1.673          <j2seproject1:nbjpdastart classpath="${debug.test.classpath}" name="${test.class}"/>
   1.674      </target>
   1.675      <target depends="init,compile-test-single,-debug-start-debugger-test,-debug-start-debuggee-test" name="debug-test"/>
   1.676 +    <target depends="init,compile-test-single,-debug-start-debugger-test,-debug-start-debuggee-test-method" name="debug-test-method"/>
   1.677      <target depends="init,-pre-debug-fix,compile-test-single" if="netbeans.home" name="-do-debug-fix-test">
   1.678          <j2seproject1:nbjpdareload dir="${build.test.classes.dir}"/>
   1.679      </target>
   1.680 @@ -1025,9 +1381,12 @@
   1.681      <target name="-check-call-dep">
   1.682          <property file="${call.built.properties}" prefix="already.built."/>
   1.683          <condition property="should.call.dep">
   1.684 -            <not>
   1.685 -                <isset property="already.built.${call.subproject}"/>
   1.686 -            </not>
   1.687 +            <and>
   1.688 +                <not>
   1.689 +                    <isset property="already.built.${call.subproject}"/>
   1.690 +                </not>
   1.691 +                <available file="${call.script}"/>
   1.692 +            </and>
   1.693          </condition>
   1.694      </target>
   1.695      <target depends="-check-call-dep" if="should.call.dep" name="-maybe-call-dep">
     2.1 --- a/samples/openfixed/nbproject/genfiles.properties	Wed Aug 08 22:42:33 2012 +0200
     2.2 +++ b/samples/openfixed/nbproject/genfiles.properties	Wed Aug 08 23:00:39 2012 +0200
     2.3 @@ -4,5 +4,5 @@
     2.4  # This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml.
     2.5  # Do not edit this file. You may delete it but then the IDE will never regenerate such files for you.
     2.6  nbproject/build-impl.xml.data.CRC32=33b4766a
     2.7 -nbproject/build-impl.xml.script.CRC32=05841ecd
     2.8 -nbproject/build-impl.xml.stylesheet.CRC32=0c01fd8e@1.43.0.45
     2.9 +nbproject/build-impl.xml.script.CRC32=9666fd7c
    2.10 +nbproject/build-impl.xml.stylesheet.CRC32=6ddba6b6@1.54.0.46
     3.1 --- a/samples/openfixed/src/org/apidesign/openfixed/AsyncEventSupport.java	Wed Aug 08 22:42:33 2012 +0200
     3.2 +++ b/samples/openfixed/src/org/apidesign/openfixed/AsyncEventSupport.java	Wed Aug 08 23:00:39 2012 +0200
     3.3 @@ -4,6 +4,7 @@
     3.4  import java.util.concurrent.CopyOnWriteArrayList;
     3.5  import java.util.concurrent.Executor;
     3.6  import java.util.concurrent.Executors;
     3.7 +import org.apidesign.openfixed.Calculator.EventSupport;
     3.8  
     3.9  /**
    3.10   *
     4.1 --- a/samples/openfixed/src/org/apidesign/openfixed/Calculator.java	Wed Aug 08 22:42:33 2012 +0200
     4.2 +++ b/samples/openfixed/src/org/apidesign/openfixed/Calculator.java	Wed Aug 08 23:00:39 2012 +0200
     4.3 @@ -13,6 +13,17 @@
     4.4      private Calculator(EventSupport listeners) {
     4.5          this.listeners = listeners;
     4.6      }
     4.7 +
     4.8 +    /** An abstraction over various types of event delivery
     4.9 +     * to listeners. Comes with four different implementations.
    4.10 +     * A trivial one, asynchronous one, one with support for
    4.11 +     * pending events and one for a batch events delivery.
    4.12 +     */
    4.13 +    interface EventSupport {
    4.14 +        public void fireModificationEvent(ModificationEvent ev);
    4.15 +        public void add(ModificationListener l);
    4.16 +        public void remove(ModificationListener l);
    4.17 +    }
    4.18      
    4.19      public static Calculator create() {
    4.20          return new Calculator(new TrivialEventSupport());
     5.1 --- a/samples/openfixed/src/org/apidesign/openfixed/EventSupport.java	Wed Aug 08 22:42:33 2012 +0200
     5.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     5.3 @@ -1,19 +0,0 @@
     5.4 -/*
     5.5 - * To change this template, choose Tools | Templates
     5.6 - * and open the template in the editor.
     5.7 - */
     5.8 -package org.apidesign.openfixed;
     5.9 -
    5.10 -/**
    5.11 - *
    5.12 - * @author Jaroslav Tulach <jtulach@netbeans.org>
    5.13 - */
    5.14 -interface EventSupport {
    5.15 -
    5.16 -    public void fireModificationEvent(ModificationEvent ev);
    5.17 -
    5.18 -    public void add(ModificationListener l);
    5.19 -
    5.20 -    public void remove(ModificationListener l);
    5.21 -    
    5.22 -}
     6.1 --- a/samples/openfixed/src/org/apidesign/openfixed/PendingEventSupport.java	Wed Aug 08 22:42:33 2012 +0200
     6.2 +++ b/samples/openfixed/src/org/apidesign/openfixed/PendingEventSupport.java	Wed Aug 08 23:00:39 2012 +0200
     6.3 @@ -4,6 +4,7 @@
     6.4  import java.util.concurrent.CopyOnWriteArrayList;
     6.5  import java.util.concurrent.Executor;
     6.6  import java.util.concurrent.Executors;
     6.7 +import org.apidesign.openfixed.Calculator.EventSupport;
     6.8  
     6.9  /**
    6.10   *
     7.1 --- a/samples/openfixed/src/org/apidesign/openfixed/PostEventSupport.java	Wed Aug 08 22:42:33 2012 +0200
     7.2 +++ b/samples/openfixed/src/org/apidesign/openfixed/PostEventSupport.java	Wed Aug 08 23:00:39 2012 +0200
     7.3 @@ -6,6 +6,7 @@
     7.4  import java.util.concurrent.CopyOnWriteArrayList;
     7.5  import java.util.concurrent.Executor;
     7.6  import java.util.concurrent.Executors;
     7.7 +import org.apidesign.openfixed.Calculator.EventSupport;
     7.8  
     7.9  /**
    7.10   *
     8.1 --- a/samples/openfixed/src/org/apidesign/openfixed/TrivialEventSupport.java	Wed Aug 08 22:42:33 2012 +0200
     8.2 +++ b/samples/openfixed/src/org/apidesign/openfixed/TrivialEventSupport.java	Wed Aug 08 23:00:39 2012 +0200
     8.3 @@ -6,6 +6,7 @@
     8.4  
     8.5  import java.util.List;
     8.6  import java.util.concurrent.CopyOnWriteArrayList;
     8.7 +import org.apidesign.openfixed.Calculator.EventSupport;
     8.8  
     8.9  /**
    8.10   *