1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/java/parameter-lister/build.xml Sat Sep 10 23:03:43 2016 +0200
1.3 @@ -0,0 +1,73 @@
1.4 +<?xml version="1.0" encoding="UTF-8"?>
1.5 +<!-- You may freely edit this file. See commented blocks below for -->
1.6 +<!-- some examples of how to customize the build. -->
1.7 +<!-- (If you delete it and reopen the project it will be recreated.) -->
1.8 +<!-- By default, only the Clean and Build commands use this build script. -->
1.9 +<!-- Commands such as Run, Debug, and Test only use this build script if -->
1.10 +<!-- the Compile on Save feature is turned off for the project. -->
1.11 +<!-- You can turn off the Compile on Save (or Deploy on Save) setting -->
1.12 +<!-- in the project's Project Properties dialog box.-->
1.13 +<project name="parameter-lister" default="default" basedir=".">
1.14 + <description>Builds, tests, and runs the project parameter-lister.</description>
1.15 + <import file="nbproject/build-impl.xml"/>
1.16 + <!--
1.17 +
1.18 + There exist several targets which are by default empty and which can be
1.19 + used for execution of your tasks. These targets are usually executed
1.20 + before and after some main targets. They are:
1.21 +
1.22 + -pre-init: called before initialization of project properties
1.23 + -post-init: called after initialization of project properties
1.24 + -pre-compile: called before javac compilation
1.25 + -post-compile: called after javac compilation
1.26 + -pre-compile-single: called before javac compilation of single file
1.27 + -post-compile-single: called after javac compilation of single file
1.28 + -pre-compile-test: called before javac compilation of JUnit tests
1.29 + -post-compile-test: called after javac compilation of JUnit tests
1.30 + -pre-compile-test-single: called before javac compilation of single JUnit test
1.31 + -post-compile-test-single: called after javac compilation of single JUunit test
1.32 + -pre-jar: called before JAR building
1.33 + -post-jar: called after JAR building
1.34 + -post-clean: called after cleaning build products
1.35 +
1.36 + (Targets beginning with '-' are not intended to be called on their own.)
1.37 +
1.38 + Example of inserting an obfuscator after compilation could look like this:
1.39 +
1.40 + <target name="-post-compile">
1.41 + <obfuscate>
1.42 + <fileset dir="${build.classes.dir}"/>
1.43 + </obfuscate>
1.44 + </target>
1.45 +
1.46 + For list of available properties check the imported
1.47 + nbproject/build-impl.xml file.
1.48 +
1.49 +
1.50 + Another way to customize the build is by overriding existing main targets.
1.51 + The targets of interest are:
1.52 +
1.53 + -init-macrodef-javac: defines macro for javac compilation
1.54 + -init-macrodef-junit: defines macro for junit execution
1.55 + -init-macrodef-debug: defines macro for class debugging
1.56 + -init-macrodef-java: defines macro for class execution
1.57 + -do-jar: JAR building
1.58 + run: execution of project
1.59 + -javadoc-build: Javadoc generation
1.60 + test-report: JUnit report generation
1.61 +
1.62 + An example of overriding the target for project execution could look like this:
1.63 +
1.64 + <target name="run" depends="parameter-lister-impl.jar">
1.65 + <exec dir="bin" executable="launcher.exe">
1.66 + <arg file="${dist.jar}"/>
1.67 + </exec>
1.68 + </target>
1.69 +
1.70 + Notice that the overridden target depends on the jar target and not only on
1.71 + the compile target as the regular run target does. Again, for a list of available
1.72 + properties which you can use, check the target you are overriding in the
1.73 + nbproject/build-impl.xml file.
1.74 +
1.75 + -->
1.76 +</project>
2.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
2.2 +++ b/java/parameter-lister/config/META-INF/services/info.glogalcode.parameterLister.OutputModuleFactory Sat Sep 10 23:03:43 2016 +0200
2.3 @@ -0,0 +1,1 @@
2.4 +info.glogalcode.parameterLister.modules.TerminalModuleFactory
2.5 \ No newline at end of file
3.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
3.2 +++ b/java/parameter-lister/nbproject/build-impl.xml Sat Sep 10 23:03:43 2016 +0200
3.3 @@ -0,0 +1,1428 @@
3.4 +<?xml version="1.0" encoding="UTF-8"?>
3.5 +<!--
3.6 +*** GENERATED FROM project.xml - DO NOT EDIT ***
3.7 +*** EDIT ../build.xml INSTEAD ***
3.8 +
3.9 +For the purpose of easier reading the script
3.10 +is divided into following sections:
3.11 +
3.12 + - initialization
3.13 + - compilation
3.14 + - jar
3.15 + - execution
3.16 + - debugging
3.17 + - javadoc
3.18 + - test compilation
3.19 + - test execution
3.20 + - test debugging
3.21 + - applet
3.22 + - cleanup
3.23 +
3.24 + -->
3.25 +<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="parameter-lister-impl">
3.26 + <fail message="Please build using Ant 1.8.0 or higher.">
3.27 + <condition>
3.28 + <not>
3.29 + <antversion atleast="1.8.0"/>
3.30 + </not>
3.31 + </condition>
3.32 + </fail>
3.33 + <target depends="test,jar,javadoc" description="Build and test whole project." name="default"/>
3.34 + <!--
3.35 + ======================
3.36 + INITIALIZATION SECTION
3.37 + ======================
3.38 + -->
3.39 + <target name="-pre-init">
3.40 + <!-- Empty placeholder for easier customization. -->
3.41 + <!-- You can override this target in the ../build.xml file. -->
3.42 + </target>
3.43 + <target depends="-pre-init" name="-init-private">
3.44 + <property file="nbproject/private/config.properties"/>
3.45 + <property file="nbproject/private/configs/${config}.properties"/>
3.46 + <property file="nbproject/private/private.properties"/>
3.47 + </target>
3.48 + <target depends="-pre-init,-init-private" name="-init-user">
3.49 + <property file="${user.properties.file}"/>
3.50 + <!-- The two properties below are usually overridden -->
3.51 + <!-- by the active platform. Just a fallback. -->
3.52 + <property name="default.javac.source" value="1.4"/>
3.53 + <property name="default.javac.target" value="1.4"/>
3.54 + </target>
3.55 + <target depends="-pre-init,-init-private,-init-user" name="-init-project">
3.56 + <property file="nbproject/configs/${config}.properties"/>
3.57 + <property file="nbproject/project.properties"/>
3.58 + </target>
3.59 + <target depends="-pre-init,-init-private,-init-user,-init-project,-init-macrodef-property" name="-do-init">
3.60 + <property name="platform.java" value="${java.home}/bin/java"/>
3.61 + <available file="${manifest.file}" property="manifest.available"/>
3.62 + <condition property="splashscreen.available">
3.63 + <and>
3.64 + <not>
3.65 + <equals arg1="${application.splash}" arg2="" trim="true"/>
3.66 + </not>
3.67 + <available file="${application.splash}"/>
3.68 + </and>
3.69 + </condition>
3.70 + <condition property="main.class.available">
3.71 + <and>
3.72 + <isset property="main.class"/>
3.73 + <not>
3.74 + <equals arg1="${main.class}" arg2="" trim="true"/>
3.75 + </not>
3.76 + </and>
3.77 + </condition>
3.78 + <condition property="profile.available">
3.79 + <and>
3.80 + <isset property="javac.profile"/>
3.81 + <length length="0" string="${javac.profile}" when="greater"/>
3.82 + <matches pattern="1\.[89](\..*)?" string="${javac.source}"/>
3.83 + </and>
3.84 + </condition>
3.85 + <condition property="do.archive">
3.86 + <or>
3.87 + <not>
3.88 + <istrue value="${jar.archive.disabled}"/>
3.89 + </not>
3.90 + <istrue value="${not.archive.disabled}"/>
3.91 + </or>
3.92 + </condition>
3.93 + <condition property="do.mkdist">
3.94 + <and>
3.95 + <isset property="do.archive"/>
3.96 + <isset property="libs.CopyLibs.classpath"/>
3.97 + <not>
3.98 + <istrue value="${mkdist.disabled}"/>
3.99 + </not>
3.100 + </and>
3.101 + </condition>
3.102 + <condition property="do.archive+manifest.available">
3.103 + <and>
3.104 + <isset property="manifest.available"/>
3.105 + <istrue value="${do.archive}"/>
3.106 + </and>
3.107 + </condition>
3.108 + <condition property="do.archive+main.class.available">
3.109 + <and>
3.110 + <isset property="main.class.available"/>
3.111 + <istrue value="${do.archive}"/>
3.112 + </and>
3.113 + </condition>
3.114 + <condition property="do.archive+splashscreen.available">
3.115 + <and>
3.116 + <isset property="splashscreen.available"/>
3.117 + <istrue value="${do.archive}"/>
3.118 + </and>
3.119 + </condition>
3.120 + <condition property="do.archive+profile.available">
3.121 + <and>
3.122 + <isset property="profile.available"/>
3.123 + <istrue value="${do.archive}"/>
3.124 + </and>
3.125 + </condition>
3.126 + <condition property="have.tests">
3.127 + <or>
3.128 + <available file="${test.src.dir}"/>
3.129 + </or>
3.130 + </condition>
3.131 + <condition property="have.sources">
3.132 + <or>
3.133 + <available file="${src.dir}"/>
3.134 + <available file="${src.config.dir}"/>
3.135 + </or>
3.136 + </condition>
3.137 + <condition property="netbeans.home+have.tests">
3.138 + <and>
3.139 + <isset property="netbeans.home"/>
3.140 + <isset property="have.tests"/>
3.141 + </and>
3.142 + </condition>
3.143 + <condition property="no.javadoc.preview">
3.144 + <and>
3.145 + <isset property="javadoc.preview"/>
3.146 + <isfalse value="${javadoc.preview}"/>
3.147 + </and>
3.148 + </condition>
3.149 + <property name="run.jvmargs" value=""/>
3.150 + <property name="run.jvmargs.ide" value=""/>
3.151 + <property name="javac.compilerargs" value=""/>
3.152 + <property name="work.dir" value="${basedir}"/>
3.153 + <condition property="no.deps">
3.154 + <and>
3.155 + <istrue value="${no.dependencies}"/>
3.156 + </and>
3.157 + </condition>
3.158 + <property name="javac.debug" value="true"/>
3.159 + <property name="javadoc.preview" value="true"/>
3.160 + <property name="application.args" value=""/>
3.161 + <property name="source.encoding" value="${file.encoding}"/>
3.162 + <property name="runtime.encoding" value="${source.encoding}"/>
3.163 + <condition property="javadoc.encoding.used" value="${javadoc.encoding}">
3.164 + <and>
3.165 + <isset property="javadoc.encoding"/>
3.166 + <not>
3.167 + <equals arg1="${javadoc.encoding}" arg2=""/>
3.168 + </not>
3.169 + </and>
3.170 + </condition>
3.171 + <property name="javadoc.encoding.used" value="${source.encoding}"/>
3.172 + <property name="includes" value="**"/>
3.173 + <property name="excludes" value=""/>
3.174 + <property name="do.depend" value="false"/>
3.175 + <condition property="do.depend.true">
3.176 + <istrue value="${do.depend}"/>
3.177 + </condition>
3.178 + <path id="endorsed.classpath.path" path="${endorsed.classpath}"/>
3.179 + <condition else="" property="endorsed.classpath.cmd.line.arg" value="-Xbootclasspath/p:'${toString:endorsed.classpath.path}'">
3.180 + <and>
3.181 + <isset property="endorsed.classpath"/>
3.182 + <not>
3.183 + <equals arg1="${endorsed.classpath}" arg2="" trim="true"/>
3.184 + </not>
3.185 + </and>
3.186 + </condition>
3.187 + <condition else="" property="javac.profile.cmd.line.arg" value="-profile ${javac.profile}">
3.188 + <isset property="profile.available"/>
3.189 + </condition>
3.190 + <condition else="false" property="jdkBug6558476">
3.191 + <and>
3.192 + <matches pattern="1\.[56]" string="${java.specification.version}"/>
3.193 + <not>
3.194 + <os family="unix"/>
3.195 + </not>
3.196 + </and>
3.197 + </condition>
3.198 + <condition else="false" property="javac.fork">
3.199 + <or>
3.200 + <istrue value="${jdkBug6558476}"/>
3.201 + <istrue value="${javac.external.vm}"/>
3.202 + </or>
3.203 + </condition>
3.204 + <property name="jar.index" value="false"/>
3.205 + <property name="jar.index.metainf" value="${jar.index}"/>
3.206 + <property name="copylibs.rebase" value="true"/>
3.207 + <available file="${meta.inf.dir}/persistence.xml" property="has.persistence.xml"/>
3.208 + <condition property="junit.available">
3.209 + <or>
3.210 + <available classname="org.junit.Test" classpath="${run.test.classpath}"/>
3.211 + <available classname="junit.framework.Test" classpath="${run.test.classpath}"/>
3.212 + </or>
3.213 + </condition>
3.214 + <condition property="testng.available">
3.215 + <available classname="org.testng.annotations.Test" classpath="${run.test.classpath}"/>
3.216 + </condition>
3.217 + <condition property="junit+testng.available">
3.218 + <and>
3.219 + <istrue value="${junit.available}"/>
3.220 + <istrue value="${testng.available}"/>
3.221 + </and>
3.222 + </condition>
3.223 + <condition else="testng" property="testng.mode" value="mixed">
3.224 + <istrue value="${junit+testng.available}"/>
3.225 + </condition>
3.226 + <condition else="" property="testng.debug.mode" value="-mixed">
3.227 + <istrue value="${junit+testng.available}"/>
3.228 + </condition>
3.229 + <property name="java.failonerror" value="true"/>
3.230 + </target>
3.231 + <target name="-post-init">
3.232 + <!-- Empty placeholder for easier customization. -->
3.233 + <!-- You can override this target in the ../build.xml file. -->
3.234 + </target>
3.235 + <target depends="-pre-init,-init-private,-init-user,-init-project,-do-init" name="-init-check">
3.236 + <fail unless="src.dir">Must set src.dir</fail>
3.237 + <fail unless="src.config.dir">Must set src.config.dir</fail>
3.238 + <fail unless="test.src.dir">Must set test.src.dir</fail>
3.239 + <fail unless="build.dir">Must set build.dir</fail>
3.240 + <fail unless="dist.dir">Must set dist.dir</fail>
3.241 + <fail unless="build.classes.dir">Must set build.classes.dir</fail>
3.242 + <fail unless="dist.javadoc.dir">Must set dist.javadoc.dir</fail>
3.243 + <fail unless="build.test.classes.dir">Must set build.test.classes.dir</fail>
3.244 + <fail unless="build.test.results.dir">Must set build.test.results.dir</fail>
3.245 + <fail unless="build.classes.excludes">Must set build.classes.excludes</fail>
3.246 + <fail unless="dist.jar">Must set dist.jar</fail>
3.247 + </target>
3.248 + <target name="-init-macrodef-property">
3.249 + <macrodef name="property" uri="http://www.netbeans.org/ns/j2se-project/1">
3.250 + <attribute name="name"/>
3.251 + <attribute name="value"/>
3.252 + <sequential>
3.253 + <property name="@{name}" value="${@{value}}"/>
3.254 + </sequential>
3.255 + </macrodef>
3.256 + </target>
3.257 + <target depends="-init-ap-cmdline-properties" if="ap.supported.internal" name="-init-macrodef-javac-with-processors">
3.258 + <macrodef name="javac" uri="http://www.netbeans.org/ns/j2se-project/3">
3.259 + <attribute default="${src.dir}:${src.config.dir}" name="srcdir"/>
3.260 + <attribute default="${build.classes.dir}" name="destdir"/>
3.261 + <attribute default="${javac.classpath}" name="classpath"/>
3.262 + <attribute default="${javac.processorpath}" name="processorpath"/>
3.263 + <attribute default="${build.generated.sources.dir}/ap-source-output" name="apgeneratedsrcdir"/>
3.264 + <attribute default="${includes}" name="includes"/>
3.265 + <attribute default="${excludes}" name="excludes"/>
3.266 + <attribute default="${javac.debug}" name="debug"/>
3.267 + <attribute default="${empty.dir}" name="sourcepath"/>
3.268 + <attribute default="${empty.dir}" name="gensrcdir"/>
3.269 + <element name="customize" optional="true"/>
3.270 + <sequential>
3.271 + <property location="${build.dir}/empty" name="empty.dir"/>
3.272 + <mkdir dir="${empty.dir}"/>
3.273 + <mkdir dir="@{apgeneratedsrcdir}"/>
3.274 + <javac debug="@{debug}" deprecation="${javac.deprecation}" destdir="@{destdir}" encoding="${source.encoding}" excludes="@{excludes}" fork="${javac.fork}" includeantruntime="false" includes="@{includes}" source="${javac.source}" sourcepath="@{sourcepath}" srcdir="@{srcdir}" target="${javac.target}" tempdir="${java.io.tmpdir}">
3.275 + <src>
3.276 + <dirset dir="@{gensrcdir}" erroronmissingdir="false">
3.277 + <include name="*"/>
3.278 + </dirset>
3.279 + </src>
3.280 + <classpath>
3.281 + <path path="@{classpath}"/>
3.282 + </classpath>
3.283 + <compilerarg line="${endorsed.classpath.cmd.line.arg}"/>
3.284 + <compilerarg line="${javac.profile.cmd.line.arg}"/>
3.285 + <compilerarg line="${javac.compilerargs}"/>
3.286 + <compilerarg value="-processorpath"/>
3.287 + <compilerarg path="@{processorpath}:${empty.dir}"/>
3.288 + <compilerarg line="${ap.processors.internal}"/>
3.289 + <compilerarg line="${annotation.processing.processor.options}"/>
3.290 + <compilerarg value="-s"/>
3.291 + <compilerarg path="@{apgeneratedsrcdir}"/>
3.292 + <compilerarg line="${ap.proc.none.internal}"/>
3.293 + <customize/>
3.294 + </javac>
3.295 + </sequential>
3.296 + </macrodef>
3.297 + </target>
3.298 + <target depends="-init-ap-cmdline-properties" name="-init-macrodef-javac-without-processors" unless="ap.supported.internal">
3.299 + <macrodef name="javac" uri="http://www.netbeans.org/ns/j2se-project/3">
3.300 + <attribute default="${src.dir}:${src.config.dir}" name="srcdir"/>
3.301 + <attribute default="${build.classes.dir}" name="destdir"/>
3.302 + <attribute default="${javac.classpath}" name="classpath"/>
3.303 + <attribute default="${javac.processorpath}" name="processorpath"/>
3.304 + <attribute default="${build.generated.sources.dir}/ap-source-output" name="apgeneratedsrcdir"/>
3.305 + <attribute default="${includes}" name="includes"/>
3.306 + <attribute default="${excludes}" name="excludes"/>
3.307 + <attribute default="${javac.debug}" name="debug"/>
3.308 + <attribute default="${empty.dir}" name="sourcepath"/>
3.309 + <attribute default="${empty.dir}" name="gensrcdir"/>
3.310 + <element name="customize" optional="true"/>
3.311 + <sequential>
3.312 + <property location="${build.dir}/empty" name="empty.dir"/>
3.313 + <mkdir dir="${empty.dir}"/>
3.314 + <javac debug="@{debug}" deprecation="${javac.deprecation}" destdir="@{destdir}" encoding="${source.encoding}" excludes="@{excludes}" fork="${javac.fork}" includeantruntime="false" includes="@{includes}" source="${javac.source}" sourcepath="@{sourcepath}" srcdir="@{srcdir}" target="${javac.target}" tempdir="${java.io.tmpdir}">
3.315 + <src>
3.316 + <dirset dir="@{gensrcdir}" erroronmissingdir="false">
3.317 + <include name="*"/>
3.318 + </dirset>
3.319 + </src>
3.320 + <classpath>
3.321 + <path path="@{classpath}"/>
3.322 + </classpath>
3.323 + <compilerarg line="${endorsed.classpath.cmd.line.arg}"/>
3.324 + <compilerarg line="${javac.profile.cmd.line.arg}"/>
3.325 + <compilerarg line="${javac.compilerargs}"/>
3.326 + <customize/>
3.327 + </javac>
3.328 + </sequential>
3.329 + </macrodef>
3.330 + </target>
3.331 + <target depends="-init-macrodef-javac-with-processors,-init-macrodef-javac-without-processors" name="-init-macrodef-javac">
3.332 + <macrodef name="depend" uri="http://www.netbeans.org/ns/j2se-project/3">
3.333 + <attribute default="${src.dir}:${src.config.dir}" name="srcdir"/>
3.334 + <attribute default="${build.classes.dir}" name="destdir"/>
3.335 + <attribute default="${javac.classpath}" name="classpath"/>
3.336 + <sequential>
3.337 + <depend cache="${build.dir}/depcache" destdir="@{destdir}" excludes="${excludes}" includes="${includes}" srcdir="@{srcdir}">
3.338 + <classpath>
3.339 + <path path="@{classpath}"/>
3.340 + </classpath>
3.341 + </depend>
3.342 + </sequential>
3.343 + </macrodef>
3.344 + <macrodef name="force-recompile" uri="http://www.netbeans.org/ns/j2se-project/3">
3.345 + <attribute default="${build.classes.dir}" name="destdir"/>
3.346 + <sequential>
3.347 + <fail unless="javac.includes">Must set javac.includes</fail>
3.348 + <pathconvert pathsep="${line.separator}" property="javac.includes.binary">
3.349 + <path>
3.350 + <filelist dir="@{destdir}" files="${javac.includes}"/>
3.351 + </path>
3.352 + <globmapper from="*.java" to="*.class"/>
3.353 + </pathconvert>
3.354 + <tempfile deleteonexit="true" property="javac.includesfile.binary"/>
3.355 + <echo file="${javac.includesfile.binary}" message="${javac.includes.binary}"/>
3.356 + <delete>
3.357 + <files includesfile="${javac.includesfile.binary}"/>
3.358 + </delete>
3.359 + <delete>
3.360 + <fileset file="${javac.includesfile.binary}"/>
3.361 + </delete>
3.362 + </sequential>
3.363 + </macrodef>
3.364 + </target>
3.365 + <target if="${junit.available}" name="-init-macrodef-junit-init">
3.366 + <condition else="false" property="nb.junit.batch" value="true">
3.367 + <and>
3.368 + <istrue value="${junit.available}"/>
3.369 + <not>
3.370 + <isset property="test.method"/>
3.371 + </not>
3.372 + </and>
3.373 + </condition>
3.374 + <condition else="false" property="nb.junit.single" value="true">
3.375 + <and>
3.376 + <istrue value="${junit.available}"/>
3.377 + <isset property="test.method"/>
3.378 + </and>
3.379 + </condition>
3.380 + </target>
3.381 + <target name="-init-test-properties">
3.382 + <property name="test.binaryincludes" value="<nothing>"/>
3.383 + <property name="test.binarytestincludes" value=""/>
3.384 + <property name="test.binaryexcludes" value=""/>
3.385 + </target>
3.386 + <target if="${nb.junit.single}" name="-init-macrodef-junit-single" unless="${nb.junit.batch}">
3.387 + <macrodef name="junit" uri="http://www.netbeans.org/ns/j2se-project/3">
3.388 + <attribute default="${includes}" name="includes"/>
3.389 + <attribute default="${excludes}" name="excludes"/>
3.390 + <attribute default="**" name="testincludes"/>
3.391 + <attribute default="" name="testmethods"/>
3.392 + <element name="customize" optional="true"/>
3.393 + <sequential>
3.394 + <property name="junit.forkmode" value="perTest"/>
3.395 + <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" showoutput="true" tempdir="${build.dir}">
3.396 + <test methods="@{testmethods}" name="@{testincludes}" todir="${build.test.results.dir}"/>
3.397 + <syspropertyset>
3.398 + <propertyref prefix="test-sys-prop."/>
3.399 + <mapper from="test-sys-prop.*" to="*" type="glob"/>
3.400 + </syspropertyset>
3.401 + <formatter type="brief" usefile="false"/>
3.402 + <formatter type="xml"/>
3.403 + <jvmarg value="-ea"/>
3.404 + <customize/>
3.405 + </junit>
3.406 + </sequential>
3.407 + </macrodef>
3.408 + </target>
3.409 + <target depends="-init-test-properties" if="${nb.junit.batch}" name="-init-macrodef-junit-batch" unless="${nb.junit.single}">
3.410 + <macrodef name="junit" uri="http://www.netbeans.org/ns/j2se-project/3">
3.411 + <attribute default="${includes}" name="includes"/>
3.412 + <attribute default="${excludes}" name="excludes"/>
3.413 + <attribute default="**" name="testincludes"/>
3.414 + <attribute default="" name="testmethods"/>
3.415 + <element name="customize" optional="true"/>
3.416 + <sequential>
3.417 + <property name="junit.forkmode" value="perTest"/>
3.418 + <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" showoutput="true" tempdir="${build.dir}">
3.419 + <batchtest todir="${build.test.results.dir}">
3.420 + <fileset dir="${test.src.dir}" excludes="@{excludes},${excludes}" includes="@{includes}">
3.421 + <filename name="@{testincludes}"/>
3.422 + </fileset>
3.423 + <fileset dir="${build.test.classes.dir}" excludes="@{excludes},${excludes},${test.binaryexcludes}" includes="${test.binaryincludes}">
3.424 + <filename name="${test.binarytestincludes}"/>
3.425 + </fileset>
3.426 + </batchtest>
3.427 + <syspropertyset>
3.428 + <propertyref prefix="test-sys-prop."/>
3.429 + <mapper from="test-sys-prop.*" to="*" type="glob"/>
3.430 + </syspropertyset>
3.431 + <formatter type="brief" usefile="false"/>
3.432 + <formatter type="xml"/>
3.433 + <jvmarg value="-ea"/>
3.434 + <customize/>
3.435 + </junit>
3.436 + </sequential>
3.437 + </macrodef>
3.438 + </target>
3.439 + <target depends="-init-macrodef-junit-init,-init-macrodef-junit-single, -init-macrodef-junit-batch" if="${junit.available}" name="-init-macrodef-junit"/>
3.440 + <target if="${testng.available}" name="-init-macrodef-testng">
3.441 + <macrodef name="testng" uri="http://www.netbeans.org/ns/j2se-project/3">
3.442 + <attribute default="${includes}" name="includes"/>
3.443 + <attribute default="${excludes}" name="excludes"/>
3.444 + <attribute default="**" name="testincludes"/>
3.445 + <attribute default="" name="testmethods"/>
3.446 + <element name="customize" optional="true"/>
3.447 + <sequential>
3.448 + <condition else="" property="testng.methods.arg" value="@{testincludes}.@{testmethods}">
3.449 + <isset property="test.method"/>
3.450 + </condition>
3.451 + <union id="test.set">
3.452 + <fileset dir="${test.src.dir}" excludes="@{excludes},**/*.xml,${excludes}" includes="@{includes}">
3.453 + <filename name="@{testincludes}"/>
3.454 + </fileset>
3.455 + </union>
3.456 + <taskdef classname="org.testng.TestNGAntTask" classpath="${run.test.classpath}" name="testng"/>
3.457 + <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="parameter-lister" testname="TestNG tests" workingDir="${work.dir}">
3.458 + <xmlfileset dir="${build.test.classes.dir}" includes="@{testincludes}"/>
3.459 + <propertyset>
3.460 + <propertyref prefix="test-sys-prop."/>
3.461 + <mapper from="test-sys-prop.*" to="*" type="glob"/>
3.462 + </propertyset>
3.463 + <customize/>
3.464 + </testng>
3.465 + </sequential>
3.466 + </macrodef>
3.467 + </target>
3.468 + <target name="-init-macrodef-test-impl">
3.469 + <macrodef name="test-impl" uri="http://www.netbeans.org/ns/j2se-project/3">
3.470 + <attribute default="${includes}" name="includes"/>
3.471 + <attribute default="${excludes}" name="excludes"/>
3.472 + <attribute default="**" name="testincludes"/>
3.473 + <attribute default="" name="testmethods"/>
3.474 + <element implicit="true" name="customize" optional="true"/>
3.475 + <sequential>
3.476 + <echo>No tests executed.</echo>
3.477 + </sequential>
3.478 + </macrodef>
3.479 + </target>
3.480 + <target depends="-init-macrodef-junit" if="${junit.available}" name="-init-macrodef-junit-impl">
3.481 + <macrodef name="test-impl" uri="http://www.netbeans.org/ns/j2se-project/3">
3.482 + <attribute default="${includes}" name="includes"/>
3.483 + <attribute default="${excludes}" name="excludes"/>
3.484 + <attribute default="**" name="testincludes"/>
3.485 + <attribute default="" name="testmethods"/>
3.486 + <element implicit="true" name="customize" optional="true"/>
3.487 + <sequential>
3.488 + <j2seproject3:junit excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
3.489 + <customize/>
3.490 + </j2seproject3:junit>
3.491 + </sequential>
3.492 + </macrodef>
3.493 + </target>
3.494 + <target depends="-init-macrodef-testng" if="${testng.available}" name="-init-macrodef-testng-impl">
3.495 + <macrodef name="test-impl" uri="http://www.netbeans.org/ns/j2se-project/3">
3.496 + <attribute default="${includes}" name="includes"/>
3.497 + <attribute default="${excludes}" name="excludes"/>
3.498 + <attribute default="**" name="testincludes"/>
3.499 + <attribute default="" name="testmethods"/>
3.500 + <element implicit="true" name="customize" optional="true"/>
3.501 + <sequential>
3.502 + <j2seproject3:testng excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
3.503 + <customize/>
3.504 + </j2seproject3:testng>
3.505 + </sequential>
3.506 + </macrodef>
3.507 + </target>
3.508 + <target depends="-init-macrodef-test-impl,-init-macrodef-junit-impl,-init-macrodef-testng-impl" name="-init-macrodef-test">
3.509 + <macrodef name="test" uri="http://www.netbeans.org/ns/j2se-project/3">
3.510 + <attribute default="${includes}" name="includes"/>
3.511 + <attribute default="${excludes}" name="excludes"/>
3.512 + <attribute default="**" name="testincludes"/>
3.513 + <attribute default="" name="testmethods"/>
3.514 + <sequential>
3.515 + <j2seproject3:test-impl excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
3.516 + <customize>
3.517 + <classpath>
3.518 + <path path="${run.test.classpath}"/>
3.519 + </classpath>
3.520 + <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
3.521 + <jvmarg line="${run.jvmargs}"/>
3.522 + <jvmarg line="${run.jvmargs.ide}"/>
3.523 + </customize>
3.524 + </j2seproject3:test-impl>
3.525 + </sequential>
3.526 + </macrodef>
3.527 + </target>
3.528 + <target if="${junit.available}" name="-init-macrodef-junit-debug" unless="${nb.junit.batch}">
3.529 + <macrodef name="junit-debug" uri="http://www.netbeans.org/ns/j2se-project/3">
3.530 + <attribute default="${includes}" name="includes"/>
3.531 + <attribute default="${excludes}" name="excludes"/>
3.532 + <attribute default="**" name="testincludes"/>
3.533 + <attribute default="" name="testmethods"/>
3.534 + <element name="customize" optional="true"/>
3.535 + <sequential>
3.536 + <property name="junit.forkmode" value="perTest"/>
3.537 + <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" showoutput="true" tempdir="${build.dir}">
3.538 + <test methods="@{testmethods}" name="@{testincludes}" todir="${build.test.results.dir}"/>
3.539 + <syspropertyset>
3.540 + <propertyref prefix="test-sys-prop."/>
3.541 + <mapper from="test-sys-prop.*" to="*" type="glob"/>
3.542 + </syspropertyset>
3.543 + <formatter type="brief" usefile="false"/>
3.544 + <formatter type="xml"/>
3.545 + <jvmarg value="-ea"/>
3.546 + <jvmarg line="${debug-args-line}"/>
3.547 + <jvmarg value="-Xrunjdwp:transport=${debug-transport},address=${jpda.address}"/>
3.548 + <customize/>
3.549 + </junit>
3.550 + </sequential>
3.551 + </macrodef>
3.552 + </target>
3.553 + <target depends="-init-test-properties" if="${nb.junit.batch}" name="-init-macrodef-junit-debug-batch">
3.554 + <macrodef name="junit-debug" uri="http://www.netbeans.org/ns/j2se-project/3">
3.555 + <attribute default="${includes}" name="includes"/>
3.556 + <attribute default="${excludes}" name="excludes"/>
3.557 + <attribute default="**" name="testincludes"/>
3.558 + <attribute default="" name="testmethods"/>
3.559 + <element name="customize" optional="true"/>
3.560 + <sequential>
3.561 + <property name="junit.forkmode" value="perTest"/>
3.562 + <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" showoutput="true" tempdir="${build.dir}">
3.563 + <batchtest todir="${build.test.results.dir}">
3.564 + <fileset dir="${test.src.dir}" excludes="@{excludes},${excludes}" includes="@{includes}">
3.565 + <filename name="@{testincludes}"/>
3.566 + </fileset>
3.567 + <fileset dir="${build.test.classes.dir}" excludes="@{excludes},${excludes},${test.binaryexcludes}" includes="${test.binaryincludes}">
3.568 + <filename name="${test.binarytestincludes}"/>
3.569 + </fileset>
3.570 + </batchtest>
3.571 + <syspropertyset>
3.572 + <propertyref prefix="test-sys-prop."/>
3.573 + <mapper from="test-sys-prop.*" to="*" type="glob"/>
3.574 + </syspropertyset>
3.575 + <formatter type="brief" usefile="false"/>
3.576 + <formatter type="xml"/>
3.577 + <jvmarg value="-ea"/>
3.578 + <jvmarg line="${debug-args-line}"/>
3.579 + <jvmarg value="-Xrunjdwp:transport=${debug-transport},address=${jpda.address}"/>
3.580 + <customize/>
3.581 + </junit>
3.582 + </sequential>
3.583 + </macrodef>
3.584 + </target>
3.585 + <target depends="-init-macrodef-junit-debug,-init-macrodef-junit-debug-batch" if="${junit.available}" name="-init-macrodef-junit-debug-impl">
3.586 + <macrodef name="test-debug-impl" uri="http://www.netbeans.org/ns/j2se-project/3">
3.587 + <attribute default="${includes}" name="includes"/>
3.588 + <attribute default="${excludes}" name="excludes"/>
3.589 + <attribute default="**" name="testincludes"/>
3.590 + <attribute default="" name="testmethods"/>
3.591 + <element implicit="true" name="customize" optional="true"/>
3.592 + <sequential>
3.593 + <j2seproject3:junit-debug excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
3.594 + <customize/>
3.595 + </j2seproject3:junit-debug>
3.596 + </sequential>
3.597 + </macrodef>
3.598 + </target>
3.599 + <target if="${testng.available}" name="-init-macrodef-testng-debug">
3.600 + <macrodef name="testng-debug" uri="http://www.netbeans.org/ns/j2se-project/3">
3.601 + <attribute default="${main.class}" name="testClass"/>
3.602 + <attribute default="" name="testMethod"/>
3.603 + <element name="customize2" optional="true"/>
3.604 + <sequential>
3.605 + <condition else="-testclass @{testClass}" property="test.class.or.method" value="-methods @{testClass}.@{testMethod}">
3.606 + <isset property="test.method"/>
3.607 + </condition>
3.608 + <condition else="-suitename parameter-lister -testname @{testClass} ${test.class.or.method}" property="testng.cmd.args" value="@{testClass}">
3.609 + <matches pattern=".*\.xml" string="@{testClass}"/>
3.610 + </condition>
3.611 + <delete dir="${build.test.results.dir}" quiet="true"/>
3.612 + <mkdir dir="${build.test.results.dir}"/>
3.613 + <j2seproject3:debug classname="org.testng.TestNG" classpath="${debug.test.classpath}">
3.614 + <customize>
3.615 + <customize2/>
3.616 + <jvmarg value="-ea"/>
3.617 + <arg line="${testng.debug.mode}"/>
3.618 + <arg line="-d ${build.test.results.dir}"/>
3.619 + <arg line="-listener org.testng.reporters.VerboseReporter"/>
3.620 + <arg line="${testng.cmd.args}"/>
3.621 + </customize>
3.622 + </j2seproject3:debug>
3.623 + </sequential>
3.624 + </macrodef>
3.625 + </target>
3.626 + <target depends="-init-macrodef-testng-debug" if="${testng.available}" name="-init-macrodef-testng-debug-impl">
3.627 + <macrodef name="testng-debug-impl" uri="http://www.netbeans.org/ns/j2se-project/3">
3.628 + <attribute default="${main.class}" name="testClass"/>
3.629 + <attribute default="" name="testMethod"/>
3.630 + <element implicit="true" name="customize2" optional="true"/>
3.631 + <sequential>
3.632 + <j2seproject3:testng-debug testClass="@{testClass}" testMethod="@{testMethod}">
3.633 + <customize2/>
3.634 + </j2seproject3:testng-debug>
3.635 + </sequential>
3.636 + </macrodef>
3.637 + </target>
3.638 + <target depends="-init-macrodef-junit-debug-impl" if="${junit.available}" name="-init-macrodef-test-debug-junit">
3.639 + <macrodef name="test-debug" uri="http://www.netbeans.org/ns/j2se-project/3">
3.640 + <attribute default="${includes}" name="includes"/>
3.641 + <attribute default="${excludes}" name="excludes"/>
3.642 + <attribute default="**" name="testincludes"/>
3.643 + <attribute default="" name="testmethods"/>
3.644 + <attribute default="${main.class}" name="testClass"/>
3.645 + <attribute default="" name="testMethod"/>
3.646 + <sequential>
3.647 + <j2seproject3:test-debug-impl excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
3.648 + <customize>
3.649 + <classpath>
3.650 + <path path="${run.test.classpath}"/>
3.651 + </classpath>
3.652 + <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
3.653 + <jvmarg line="${run.jvmargs}"/>
3.654 + <jvmarg line="${run.jvmargs.ide}"/>
3.655 + </customize>
3.656 + </j2seproject3:test-debug-impl>
3.657 + </sequential>
3.658 + </macrodef>
3.659 + </target>
3.660 + <target depends="-init-macrodef-testng-debug-impl" if="${testng.available}" name="-init-macrodef-test-debug-testng">
3.661 + <macrodef name="test-debug" uri="http://www.netbeans.org/ns/j2se-project/3">
3.662 + <attribute default="${includes}" name="includes"/>
3.663 + <attribute default="${excludes}" name="excludes"/>
3.664 + <attribute default="**" name="testincludes"/>
3.665 + <attribute default="" name="testmethods"/>
3.666 + <attribute default="${main.class}" name="testClass"/>
3.667 + <attribute default="" name="testMethod"/>
3.668 + <sequential>
3.669 + <j2seproject3:testng-debug-impl testClass="@{testClass}" testMethod="@{testMethod}">
3.670 + <customize2>
3.671 + <syspropertyset>
3.672 + <propertyref prefix="test-sys-prop."/>
3.673 + <mapper from="test-sys-prop.*" to="*" type="glob"/>
3.674 + </syspropertyset>
3.675 + </customize2>
3.676 + </j2seproject3:testng-debug-impl>
3.677 + </sequential>
3.678 + </macrodef>
3.679 + </target>
3.680 + <target depends="-init-macrodef-test-debug-junit,-init-macrodef-test-debug-testng" name="-init-macrodef-test-debug"/>
3.681 + <!--
3.682 + pre NB7.2 profiling section; consider it deprecated
3.683 + -->
3.684 + <target depends="-profile-pre-init, init, -profile-post-init, -profile-init-macrodef-profile, -profile-init-check" if="profiler.info.jvmargs.agent" name="profile-init"/>
3.685 + <target if="profiler.info.jvmargs.agent" name="-profile-pre-init">
3.686 + <!-- Empty placeholder for easier customization. -->
3.687 + <!-- You can override this target in the ../build.xml file. -->
3.688 + </target>
3.689 + <target if="profiler.info.jvmargs.agent" name="-profile-post-init">
3.690 + <!-- Empty placeholder for easier customization. -->
3.691 + <!-- You can override this target in the ../build.xml file. -->
3.692 + </target>
3.693 + <target if="profiler.info.jvmargs.agent" name="-profile-init-macrodef-profile">
3.694 + <macrodef name="resolve">
3.695 + <attribute name="name"/>
3.696 + <attribute name="value"/>
3.697 + <sequential>
3.698 + <property name="@{name}" value="${env.@{value}}"/>
3.699 + </sequential>
3.700 + </macrodef>
3.701 + <macrodef name="profile">
3.702 + <attribute default="${main.class}" name="classname"/>
3.703 + <element name="customize" optional="true"/>
3.704 + <sequential>
3.705 + <property environment="env"/>
3.706 + <resolve name="profiler.current.path" value="${profiler.info.pathvar}"/>
3.707 + <java classname="@{classname}" dir="${profiler.info.dir}" failonerror="${java.failonerror}" fork="true" jvm="${profiler.info.jvm}">
3.708 + <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
3.709 + <jvmarg value="${profiler.info.jvmargs.agent}"/>
3.710 + <jvmarg line="${profiler.info.jvmargs}"/>
3.711 + <env key="${profiler.info.pathvar}" path="${profiler.info.agentpath}:${profiler.current.path}"/>
3.712 + <arg line="${application.args}"/>
3.713 + <classpath>
3.714 + <path path="${run.classpath}"/>
3.715 + </classpath>
3.716 + <syspropertyset>
3.717 + <propertyref prefix="run-sys-prop."/>
3.718 + <mapper from="run-sys-prop.*" to="*" type="glob"/>
3.719 + </syspropertyset>
3.720 + <customize/>
3.721 + </java>
3.722 + </sequential>
3.723 + </macrodef>
3.724 + </target>
3.725 + <target depends="-profile-pre-init, init, -profile-post-init, -profile-init-macrodef-profile" if="profiler.info.jvmargs.agent" name="-profile-init-check">
3.726 + <fail unless="profiler.info.jvm">Must set JVM to use for profiling in profiler.info.jvm</fail>
3.727 + <fail unless="profiler.info.jvmargs.agent">Must set profiler agent JVM arguments in profiler.info.jvmargs.agent</fail>
3.728 + </target>
3.729 + <!--
3.730 + end of pre NB7.2 profiling section
3.731 + -->
3.732 + <target depends="-init-debug-args" name="-init-macrodef-nbjpda">
3.733 + <macrodef name="nbjpdastart" uri="http://www.netbeans.org/ns/j2se-project/1">
3.734 + <attribute default="${main.class}" name="name"/>
3.735 + <attribute default="${debug.classpath}" name="classpath"/>
3.736 + <attribute default="" name="stopclassname"/>
3.737 + <sequential>
3.738 + <nbjpdastart addressproperty="jpda.address" name="@{name}" stopclassname="@{stopclassname}" transport="${debug-transport}">
3.739 + <classpath>
3.740 + <path path="@{classpath}"/>
3.741 + </classpath>
3.742 + </nbjpdastart>
3.743 + </sequential>
3.744 + </macrodef>
3.745 + <macrodef name="nbjpdareload" uri="http://www.netbeans.org/ns/j2se-project/1">
3.746 + <attribute default="${build.classes.dir}" name="dir"/>
3.747 + <sequential>
3.748 + <nbjpdareload>
3.749 + <fileset dir="@{dir}" includes="${fix.classes}">
3.750 + <include name="${fix.includes}*.class"/>
3.751 + </fileset>
3.752 + </nbjpdareload>
3.753 + </sequential>
3.754 + </macrodef>
3.755 + </target>
3.756 + <target name="-init-debug-args">
3.757 + <property name="version-output" value="java version "${ant.java.version}"/>
3.758 + <condition property="have-jdk-older-than-1.4">
3.759 + <or>
3.760 + <contains string="${version-output}" substring="java version "1.0"/>
3.761 + <contains string="${version-output}" substring="java version "1.1"/>
3.762 + <contains string="${version-output}" substring="java version "1.2"/>
3.763 + <contains string="${version-output}" substring="java version "1.3"/>
3.764 + </or>
3.765 + </condition>
3.766 + <condition else="-Xdebug" property="debug-args-line" value="-Xdebug -Xnoagent -Djava.compiler=none">
3.767 + <istrue value="${have-jdk-older-than-1.4}"/>
3.768 + </condition>
3.769 + <condition else="dt_socket" property="debug-transport-by-os" value="dt_shmem">
3.770 + <os family="windows"/>
3.771 + </condition>
3.772 + <condition else="${debug-transport-by-os}" property="debug-transport" value="${debug.transport}">
3.773 + <isset property="debug.transport"/>
3.774 + </condition>
3.775 + </target>
3.776 + <target depends="-init-debug-args" name="-init-macrodef-debug">
3.777 + <macrodef name="debug" uri="http://www.netbeans.org/ns/j2se-project/3">
3.778 + <attribute default="${main.class}" name="classname"/>
3.779 + <attribute default="${debug.classpath}" name="classpath"/>
3.780 + <element name="customize" optional="true"/>
3.781 + <sequential>
3.782 + <java classname="@{classname}" dir="${work.dir}" failonerror="${java.failonerror}" fork="true">
3.783 + <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
3.784 + <jvmarg line="${debug-args-line}"/>
3.785 + <jvmarg value="-Xrunjdwp:transport=${debug-transport},address=${jpda.address}"/>
3.786 + <jvmarg value="-Dfile.encoding=${runtime.encoding}"/>
3.787 + <redirector errorencoding="${runtime.encoding}" inputencoding="${runtime.encoding}" outputencoding="${runtime.encoding}"/>
3.788 + <jvmarg line="${run.jvmargs}"/>
3.789 + <jvmarg line="${run.jvmargs.ide}"/>
3.790 + <classpath>
3.791 + <path path="@{classpath}"/>
3.792 + </classpath>
3.793 + <syspropertyset>
3.794 + <propertyref prefix="run-sys-prop."/>
3.795 + <mapper from="run-sys-prop.*" to="*" type="glob"/>
3.796 + </syspropertyset>
3.797 + <customize/>
3.798 + </java>
3.799 + </sequential>
3.800 + </macrodef>
3.801 + </target>
3.802 + <target name="-init-macrodef-java">
3.803 + <macrodef name="java" uri="http://www.netbeans.org/ns/j2se-project/1">
3.804 + <attribute default="${main.class}" name="classname"/>
3.805 + <attribute default="${run.classpath}" name="classpath"/>
3.806 + <attribute default="jvm" name="jvm"/>
3.807 + <element name="customize" optional="true"/>
3.808 + <sequential>
3.809 + <java classname="@{classname}" dir="${work.dir}" failonerror="${java.failonerror}" fork="true">
3.810 + <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
3.811 + <jvmarg value="-Dfile.encoding=${runtime.encoding}"/>
3.812 + <redirector errorencoding="${runtime.encoding}" inputencoding="${runtime.encoding}" outputencoding="${runtime.encoding}"/>
3.813 + <jvmarg line="${run.jvmargs}"/>
3.814 + <jvmarg line="${run.jvmargs.ide}"/>
3.815 + <classpath>
3.816 + <path path="@{classpath}"/>
3.817 + </classpath>
3.818 + <syspropertyset>
3.819 + <propertyref prefix="run-sys-prop."/>
3.820 + <mapper from="run-sys-prop.*" to="*" type="glob"/>
3.821 + </syspropertyset>
3.822 + <customize/>
3.823 + </java>
3.824 + </sequential>
3.825 + </macrodef>
3.826 + </target>
3.827 + <target name="-init-macrodef-copylibs">
3.828 + <macrodef name="copylibs" uri="http://www.netbeans.org/ns/j2se-project/3">
3.829 + <attribute default="${manifest.file}" name="manifest"/>
3.830 + <element name="customize" optional="true"/>
3.831 + <sequential>
3.832 + <property location="${build.classes.dir}" name="build.classes.dir.resolved"/>
3.833 + <pathconvert property="run.classpath.without.build.classes.dir">
3.834 + <path path="${run.classpath}"/>
3.835 + <map from="${build.classes.dir.resolved}" to=""/>
3.836 + </pathconvert>
3.837 + <pathconvert pathsep=" " property="jar.classpath">
3.838 + <path path="${run.classpath.without.build.classes.dir}"/>
3.839 + <chainedmapper>
3.840 + <flattenmapper/>
3.841 + <filtermapper>
3.842 + <replacestring from=" " to="%20"/>
3.843 + </filtermapper>
3.844 + <globmapper from="*" to="lib/*"/>
3.845 + </chainedmapper>
3.846 + </pathconvert>
3.847 + <taskdef classname="org.netbeans.modules.java.j2seproject.copylibstask.CopyLibs" classpath="${libs.CopyLibs.classpath}" name="copylibs"/>
3.848 + <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}">
3.849 + <fileset dir="${build.classes.dir}" excludes="${dist.archive.excludes}"/>
3.850 + <manifest>
3.851 + <attribute name="Class-Path" value="${jar.classpath}"/>
3.852 + <customize/>
3.853 + </manifest>
3.854 + </copylibs>
3.855 + </sequential>
3.856 + </macrodef>
3.857 + </target>
3.858 + <target name="-init-presetdef-jar">
3.859 + <presetdef name="jar" uri="http://www.netbeans.org/ns/j2se-project/1">
3.860 + <jar compress="${jar.compress}" index="${jar.index}" jarfile="${dist.jar}">
3.861 + <j2seproject1:fileset dir="${build.classes.dir}" excludes="${dist.archive.excludes}"/>
3.862 + </jar>
3.863 + </presetdef>
3.864 + </target>
3.865 + <target name="-init-ap-cmdline-properties">
3.866 + <property name="annotation.processing.enabled" value="true"/>
3.867 + <property name="annotation.processing.processors.list" value=""/>
3.868 + <property name="annotation.processing.processor.options" value=""/>
3.869 + <property name="annotation.processing.run.all.processors" value="true"/>
3.870 + <property name="javac.processorpath" value="${javac.classpath}"/>
3.871 + <property name="javac.test.processorpath" value="${javac.test.classpath}"/>
3.872 + <condition property="ap.supported.internal" value="true">
3.873 + <not>
3.874 + <matches pattern="1\.[0-5](\..*)?" string="${javac.source}"/>
3.875 + </not>
3.876 + </condition>
3.877 + </target>
3.878 + <target depends="-init-ap-cmdline-properties" if="ap.supported.internal" name="-init-ap-cmdline-supported">
3.879 + <condition else="" property="ap.processors.internal" value="-processor ${annotation.processing.processors.list}">
3.880 + <isfalse value="${annotation.processing.run.all.processors}"/>
3.881 + </condition>
3.882 + <condition else="" property="ap.proc.none.internal" value="-proc:none">
3.883 + <isfalse value="${annotation.processing.enabled}"/>
3.884 + </condition>
3.885 + </target>
3.886 + <target depends="-init-ap-cmdline-properties,-init-ap-cmdline-supported" name="-init-ap-cmdline">
3.887 + <property name="ap.cmd.line.internal" value=""/>
3.888 + </target>
3.889 + <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"/>
3.890 + <!--
3.891 + ===================
3.892 + COMPILATION SECTION
3.893 + ===================
3.894 + -->
3.895 + <target name="-deps-jar-init" unless="built-jar.properties">
3.896 + <property location="${build.dir}/built-jar.properties" name="built-jar.properties"/>
3.897 + <delete file="${built-jar.properties}" quiet="true"/>
3.898 + </target>
3.899 + <target if="already.built.jar.${basedir}" name="-warn-already-built-jar">
3.900 + <echo level="warn" message="Cycle detected: parameter-lister was already built"/>
3.901 + </target>
3.902 + <target depends="init,-deps-jar-init" name="deps-jar" unless="no.deps">
3.903 + <mkdir dir="${build.dir}"/>
3.904 + <touch file="${built-jar.properties}" verbose="false"/>
3.905 + <property file="${built-jar.properties}" prefix="already.built.jar."/>
3.906 + <antcall target="-warn-already-built-jar"/>
3.907 + <propertyfile file="${built-jar.properties}">
3.908 + <entry key="${basedir}" value=""/>
3.909 + </propertyfile>
3.910 + </target>
3.911 + <target depends="init,-check-automatic-build,-clean-after-automatic-build" name="-verify-automatic-build"/>
3.912 + <target depends="init" name="-check-automatic-build">
3.913 + <available file="${build.classes.dir}/.netbeans_automatic_build" property="netbeans.automatic.build"/>
3.914 + </target>
3.915 + <target depends="init" if="netbeans.automatic.build" name="-clean-after-automatic-build">
3.916 + <antcall target="clean"/>
3.917 + </target>
3.918 + <target depends="init,deps-jar" name="-pre-pre-compile">
3.919 + <mkdir dir="${build.classes.dir}"/>
3.920 + </target>
3.921 + <target name="-pre-compile">
3.922 + <!-- Empty placeholder for easier customization. -->
3.923 + <!-- You can override this target in the ../build.xml file. -->
3.924 + </target>
3.925 + <target if="do.depend.true" name="-compile-depend">
3.926 + <pathconvert property="build.generated.subdirs">
3.927 + <dirset dir="${build.generated.sources.dir}" erroronmissingdir="false">
3.928 + <include name="*"/>
3.929 + </dirset>
3.930 + </pathconvert>
3.931 + <j2seproject3:depend srcdir="${src.dir}:${src.config.dir}:${build.generated.subdirs}"/>
3.932 + </target>
3.933 + <target depends="init,deps-jar,-pre-pre-compile,-pre-compile, -copy-persistence-xml,-compile-depend" if="have.sources" name="-do-compile">
3.934 + <j2seproject3:javac gensrcdir="${build.generated.sources.dir}"/>
3.935 + <copy todir="${build.classes.dir}">
3.936 + <fileset dir="${src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
3.937 + <fileset dir="${src.config.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
3.938 + </copy>
3.939 + </target>
3.940 + <target if="has.persistence.xml" name="-copy-persistence-xml">
3.941 + <mkdir dir="${build.classes.dir}/META-INF"/>
3.942 + <copy todir="${build.classes.dir}/META-INF">
3.943 + <fileset dir="${meta.inf.dir}" includes="persistence.xml orm.xml"/>
3.944 + </copy>
3.945 + </target>
3.946 + <target name="-post-compile">
3.947 + <!-- Empty placeholder for easier customization. -->
3.948 + <!-- You can override this target in the ../build.xml file. -->
3.949 + </target>
3.950 + <target depends="init,deps-jar,-verify-automatic-build,-pre-pre-compile,-pre-compile,-do-compile,-post-compile" description="Compile project." name="compile"/>
3.951 + <target name="-pre-compile-single">
3.952 + <!-- Empty placeholder for easier customization. -->
3.953 + <!-- You can override this target in the ../build.xml file. -->
3.954 + </target>
3.955 + <target depends="init,deps-jar,-pre-pre-compile" name="-do-compile-single">
3.956 + <fail unless="javac.includes">Must select some files in the IDE or set javac.includes</fail>
3.957 + <j2seproject3:force-recompile/>
3.958 + <j2seproject3:javac excludes="" gensrcdir="${build.generated.sources.dir}" includes="${javac.includes}" sourcepath="${src.dir}:${src.config.dir}"/>
3.959 + </target>
3.960 + <target name="-post-compile-single">
3.961 + <!-- Empty placeholder for easier customization. -->
3.962 + <!-- You can override this target in the ../build.xml file. -->
3.963 + </target>
3.964 + <target depends="init,deps-jar,-verify-automatic-build,-pre-pre-compile,-pre-compile-single,-do-compile-single,-post-compile-single" name="compile-single"/>
3.965 + <!--
3.966 + ====================
3.967 + JAR BUILDING SECTION
3.968 + ====================
3.969 + -->
3.970 + <target depends="init" name="-pre-pre-jar">
3.971 + <dirname file="${dist.jar}" property="dist.jar.dir"/>
3.972 + <mkdir dir="${dist.jar.dir}"/>
3.973 + </target>
3.974 + <target name="-pre-jar">
3.975 + <!-- Empty placeholder for easier customization. -->
3.976 + <!-- You can override this target in the ../build.xml file. -->
3.977 + </target>
3.978 + <target depends="init" if="do.archive" name="-do-jar-create-manifest" unless="manifest.available">
3.979 + <tempfile deleteonexit="true" destdir="${build.dir}" property="tmp.manifest.file"/>
3.980 + <touch file="${tmp.manifest.file}" verbose="false"/>
3.981 + </target>
3.982 + <target depends="init" if="do.archive+manifest.available" name="-do-jar-copy-manifest">
3.983 + <tempfile deleteonexit="true" destdir="${build.dir}" property="tmp.manifest.file"/>
3.984 + <copy file="${manifest.file}" tofile="${tmp.manifest.file}"/>
3.985 + </target>
3.986 + <target depends="init,-do-jar-create-manifest,-do-jar-copy-manifest" if="do.archive+main.class.available" name="-do-jar-set-mainclass">
3.987 + <manifest file="${tmp.manifest.file}" mode="update">
3.988 + <attribute name="Main-Class" value="${main.class}"/>
3.989 + </manifest>
3.990 + </target>
3.991 + <target depends="init,-do-jar-create-manifest,-do-jar-copy-manifest" if="do.archive+profile.available" name="-do-jar-set-profile">
3.992 + <manifest file="${tmp.manifest.file}" mode="update">
3.993 + <attribute name="Profile" value="${javac.profile}"/>
3.994 + </manifest>
3.995 + </target>
3.996 + <target depends="init,-do-jar-create-manifest,-do-jar-copy-manifest" if="do.archive+splashscreen.available" name="-do-jar-set-splashscreen">
3.997 + <basename file="${application.splash}" property="splashscreen.basename"/>
3.998 + <mkdir dir="${build.classes.dir}/META-INF"/>
3.999 + <copy failonerror="false" file="${application.splash}" todir="${build.classes.dir}/META-INF"/>
3.1000 + <manifest file="${tmp.manifest.file}" mode="update">
3.1001 + <attribute name="SplashScreen-Image" value="META-INF/${splashscreen.basename}"/>
3.1002 + </manifest>
3.1003 + </target>
3.1004 + <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">
3.1005 + <j2seproject3:copylibs manifest="${tmp.manifest.file}"/>
3.1006 + <echo level="info">To run this application from the command line without Ant, try:</echo>
3.1007 + <property location="${dist.jar}" name="dist.jar.resolved"/>
3.1008 + <echo level="info">java -jar "${dist.jar.resolved}"</echo>
3.1009 + </target>
3.1010 + <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">
3.1011 + <j2seproject1:jar manifest="${tmp.manifest.file}"/>
3.1012 + <property location="${build.classes.dir}" name="build.classes.dir.resolved"/>
3.1013 + <property location="${dist.jar}" name="dist.jar.resolved"/>
3.1014 + <pathconvert property="run.classpath.with.dist.jar">
3.1015 + <path path="${run.classpath}"/>
3.1016 + <map from="${build.classes.dir.resolved}" to="${dist.jar.resolved}"/>
3.1017 + </pathconvert>
3.1018 + <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}">
3.1019 + <isset property="main.class.available"/>
3.1020 + </condition>
3.1021 + <condition else="debug" property="jar.usage.level" value="info">
3.1022 + <isset property="main.class.available"/>
3.1023 + </condition>
3.1024 + <echo level="${jar.usage.level}" message="${jar.usage.message}"/>
3.1025 + </target>
3.1026 + <target depends="-do-jar-copylibs" if="do.archive" name="-do-jar-delete-manifest">
3.1027 + <delete>
3.1028 + <fileset file="${tmp.manifest.file}"/>
3.1029 + </delete>
3.1030 + </target>
3.1031 + <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"/>
3.1032 + <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"/>
3.1033 + <target name="-post-jar">
3.1034 + <!-- Empty placeholder for easier customization. -->
3.1035 + <!-- You can override this target in the ../build.xml file. -->
3.1036 + </target>
3.1037 + <target depends="init,compile,-pre-jar,-do-jar-without-libraries,-do-jar-with-libraries,-post-jar" name="-do-jar"/>
3.1038 + <target depends="init,compile,-pre-jar,-do-jar,-post-jar" description="Build JAR." name="jar"/>
3.1039 + <!--
3.1040 + =================
3.1041 + EXECUTION SECTION
3.1042 + =================
3.1043 + -->
3.1044 + <target depends="init,compile" description="Run a main class." name="run">
3.1045 + <j2seproject1:java>
3.1046 + <customize>
3.1047 + <arg line="${application.args}"/>
3.1048 + </customize>
3.1049 + </j2seproject1:java>
3.1050 + </target>
3.1051 + <target name="-do-not-recompile">
3.1052 + <property name="javac.includes.binary" value=""/>
3.1053 + </target>
3.1054 + <target depends="init,compile-single" name="run-single">
3.1055 + <fail unless="run.class">Must select one file in the IDE or set run.class</fail>
3.1056 + <j2seproject1:java classname="${run.class}"/>
3.1057 + </target>
3.1058 + <target depends="init,compile-test-single" name="run-test-with-main">
3.1059 + <fail unless="run.class">Must select one file in the IDE or set run.class</fail>
3.1060 + <j2seproject1:java classname="${run.class}" classpath="${run.test.classpath}"/>
3.1061 + </target>
3.1062 + <!--
3.1063 + =================
3.1064 + DEBUGGING SECTION
3.1065 + =================
3.1066 + -->
3.1067 + <target depends="init" if="netbeans.home" name="-debug-start-debugger">
3.1068 + <j2seproject1:nbjpdastart name="${debug.class}"/>
3.1069 + </target>
3.1070 + <target depends="init" if="netbeans.home" name="-debug-start-debugger-main-test">
3.1071 + <j2seproject1:nbjpdastart classpath="${debug.test.classpath}" name="${debug.class}"/>
3.1072 + </target>
3.1073 + <target depends="init,compile" name="-debug-start-debuggee">
3.1074 + <j2seproject3:debug>
3.1075 + <customize>
3.1076 + <arg line="${application.args}"/>
3.1077 + </customize>
3.1078 + </j2seproject3:debug>
3.1079 + </target>
3.1080 + <target depends="init,compile,-debug-start-debugger,-debug-start-debuggee" description="Debug project in IDE." if="netbeans.home" name="debug"/>
3.1081 + <target depends="init" if="netbeans.home" name="-debug-start-debugger-stepinto">
3.1082 + <j2seproject1:nbjpdastart stopclassname="${main.class}"/>
3.1083 + </target>
3.1084 + <target depends="init,compile,-debug-start-debugger-stepinto,-debug-start-debuggee" if="netbeans.home" name="debug-stepinto"/>
3.1085 + <target depends="init,compile-single" if="netbeans.home" name="-debug-start-debuggee-single">
3.1086 + <fail unless="debug.class">Must select one file in the IDE or set debug.class</fail>
3.1087 + <j2seproject3:debug classname="${debug.class}"/>
3.1088 + </target>
3.1089 + <target depends="init,compile-single,-debug-start-debugger,-debug-start-debuggee-single" if="netbeans.home" name="debug-single"/>
3.1090 + <target depends="init,compile-test-single" if="netbeans.home" name="-debug-start-debuggee-main-test">
3.1091 + <fail unless="debug.class">Must select one file in the IDE or set debug.class</fail>
3.1092 + <j2seproject3:debug classname="${debug.class}" classpath="${debug.test.classpath}"/>
3.1093 + </target>
3.1094 + <target depends="init,compile-test-single,-debug-start-debugger-main-test,-debug-start-debuggee-main-test" if="netbeans.home" name="debug-test-with-main"/>
3.1095 + <target depends="init" name="-pre-debug-fix">
3.1096 + <fail unless="fix.includes">Must set fix.includes</fail>
3.1097 + <property name="javac.includes" value="${fix.includes}.java"/>
3.1098 + </target>
3.1099 + <target depends="init,-pre-debug-fix,compile-single" if="netbeans.home" name="-do-debug-fix">
3.1100 + <j2seproject1:nbjpdareload/>
3.1101 + </target>
3.1102 + <target depends="init,-pre-debug-fix,-do-debug-fix" if="netbeans.home" name="debug-fix"/>
3.1103 + <!--
3.1104 + =================
3.1105 + PROFILING SECTION
3.1106 + =================
3.1107 + -->
3.1108 + <!--
3.1109 + pre NB7.2 profiler integration
3.1110 + -->
3.1111 + <target depends="profile-init,compile" description="Profile a project in the IDE." if="profiler.info.jvmargs.agent" name="-profile-pre72">
3.1112 + <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail>
3.1113 + <nbprofiledirect>
3.1114 + <classpath>
3.1115 + <path path="${run.classpath}"/>
3.1116 + </classpath>
3.1117 + </nbprofiledirect>
3.1118 + <profile/>
3.1119 + </target>
3.1120 + <target depends="profile-init,compile-single" description="Profile a selected class in the IDE." if="profiler.info.jvmargs.agent" name="-profile-single-pre72">
3.1121 + <fail unless="profile.class">Must select one file in the IDE or set profile.class</fail>
3.1122 + <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail>
3.1123 + <nbprofiledirect>
3.1124 + <classpath>
3.1125 + <path path="${run.classpath}"/>
3.1126 + </classpath>
3.1127 + </nbprofiledirect>
3.1128 + <profile classname="${profile.class}"/>
3.1129 + </target>
3.1130 + <target depends="profile-init,compile-single" if="profiler.info.jvmargs.agent" name="-profile-applet-pre72">
3.1131 + <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail>
3.1132 + <nbprofiledirect>
3.1133 + <classpath>
3.1134 + <path path="${run.classpath}"/>
3.1135 + </classpath>
3.1136 + </nbprofiledirect>
3.1137 + <profile classname="sun.applet.AppletViewer">
3.1138 + <customize>
3.1139 + <arg value="${applet.url}"/>
3.1140 + </customize>
3.1141 + </profile>
3.1142 + </target>
3.1143 + <target depends="profile-init,compile-test-single" if="profiler.info.jvmargs.agent" name="-profile-test-single-pre72">
3.1144 + <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail>
3.1145 + <nbprofiledirect>
3.1146 + <classpath>
3.1147 + <path path="${run.test.classpath}"/>
3.1148 + </classpath>
3.1149 + </nbprofiledirect>
3.1150 + <junit dir="${profiler.info.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" jvm="${profiler.info.jvm}" showoutput="true">
3.1151 + <env key="${profiler.info.pathvar}" path="${profiler.info.agentpath}:${profiler.current.path}"/>
3.1152 + <jvmarg value="${profiler.info.jvmargs.agent}"/>
3.1153 + <jvmarg line="${profiler.info.jvmargs}"/>
3.1154 + <test name="${profile.class}"/>
3.1155 + <classpath>
3.1156 + <path path="${run.test.classpath}"/>
3.1157 + </classpath>
3.1158 + <syspropertyset>
3.1159 + <propertyref prefix="test-sys-prop."/>
3.1160 + <mapper from="test-sys-prop.*" to="*" type="glob"/>
3.1161 + </syspropertyset>
3.1162 + <formatter type="brief" usefile="false"/>
3.1163 + <formatter type="xml"/>
3.1164 + </junit>
3.1165 + </target>
3.1166 + <!--
3.1167 + end of pre NB72 profiling section
3.1168 + -->
3.1169 + <target if="netbeans.home" name="-profile-check">
3.1170 + <condition property="profiler.configured">
3.1171 + <or>
3.1172 + <contains casesensitive="true" string="${run.jvmargs.ide}" substring="-agentpath:"/>
3.1173 + <contains casesensitive="true" string="${run.jvmargs.ide}" substring="-javaagent:"/>
3.1174 + </or>
3.1175 + </condition>
3.1176 + </target>
3.1177 + <target depends="-profile-check,-profile-pre72" description="Profile a project in the IDE." if="profiler.configured" name="profile" unless="profiler.info.jvmargs.agent">
3.1178 + <startprofiler/>
3.1179 + <antcall target="run"/>
3.1180 + </target>
3.1181 + <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">
3.1182 + <fail unless="run.class">Must select one file in the IDE or set run.class</fail>
3.1183 + <startprofiler/>
3.1184 + <antcall target="run-single"/>
3.1185 + </target>
3.1186 + <target depends="-profile-test-single-pre72" description="Profile a selected test in the IDE." name="profile-test-single"/>
3.1187 + <target depends="-profile-check" description="Profile a selected test in the IDE." if="profiler.configured" name="profile-test" unless="profiler.info.jvmargs">
3.1188 + <fail unless="test.includes">Must select some files in the IDE or set test.includes</fail>
3.1189 + <startprofiler/>
3.1190 + <antcall target="test-single"/>
3.1191 + </target>
3.1192 + <target depends="-profile-check" description="Profile a selected class in the IDE." if="profiler.configured" name="profile-test-with-main">
3.1193 + <fail unless="run.class">Must select one file in the IDE or set run.class</fail>
3.1194 + <startprofiler/>
3.1195 + <antcal target="run-test-with-main"/>
3.1196 + </target>
3.1197 + <target depends="-profile-check,-profile-applet-pre72" if="profiler.configured" name="profile-applet" unless="profiler.info.jvmargs.agent">
3.1198 + <fail unless="applet.url">Must select one file in the IDE or set applet.url</fail>
3.1199 + <startprofiler/>
3.1200 + <antcall target="run-applet"/>
3.1201 + </target>
3.1202 + <!--
3.1203 + ===============
3.1204 + JAVADOC SECTION
3.1205 + ===============
3.1206 + -->
3.1207 + <target depends="init" if="have.sources" name="-javadoc-build">
3.1208 + <mkdir dir="${dist.javadoc.dir}"/>
3.1209 + <condition else="" property="javadoc.endorsed.classpath.cmd.line.arg" value="-J${endorsed.classpath.cmd.line.arg}">
3.1210 + <and>
3.1211 + <isset property="endorsed.classpath.cmd.line.arg"/>
3.1212 + <not>
3.1213 + <equals arg1="${endorsed.classpath.cmd.line.arg}" arg2=""/>
3.1214 + </not>
3.1215 + </and>
3.1216 + </condition>
3.1217 + <condition else="" property="bug5101868workaround" value="*.java">
3.1218 + <matches pattern="1\.[56](\..*)?" string="${java.version}"/>
3.1219 + </condition>
3.1220 + <javadoc additionalparam="-J-Dfile.encoding=${file.encoding} ${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}">
3.1221 + <classpath>
3.1222 + <path path="${javac.classpath}"/>
3.1223 + </classpath>
3.1224 + <fileset dir="${src.dir}" excludes="${bug5101868workaround},${excludes}" includes="${includes}">
3.1225 + <filename name="**/*.java"/>
3.1226 + </fileset>
3.1227 + <fileset dir="${src.config.dir}" excludes="${bug5101868workaround},${excludes}" includes="${includes}">
3.1228 + <filename name="**/*.java"/>
3.1229 + </fileset>
3.1230 + <fileset dir="${build.generated.sources.dir}" erroronmissingdir="false">
3.1231 + <include name="**/*.java"/>
3.1232 + <exclude name="*.java"/>
3.1233 + </fileset>
3.1234 + <arg line="${javadoc.endorsed.classpath.cmd.line.arg}"/>
3.1235 + </javadoc>
3.1236 + <copy todir="${dist.javadoc.dir}">
3.1237 + <fileset dir="${src.dir}" excludes="${excludes}" includes="${includes}">
3.1238 + <filename name="**/doc-files/**"/>
3.1239 + </fileset>
3.1240 + <fileset dir="${src.config.dir}" excludes="${excludes}" includes="${includes}">
3.1241 + <filename name="**/doc-files/**"/>
3.1242 + </fileset>
3.1243 + <fileset dir="${build.generated.sources.dir}" erroronmissingdir="false">
3.1244 + <include name="**/doc-files/**"/>
3.1245 + </fileset>
3.1246 + </copy>
3.1247 + </target>
3.1248 + <target depends="init,-javadoc-build" if="netbeans.home" name="-javadoc-browse" unless="no.javadoc.preview">
3.1249 + <nbbrowse file="${dist.javadoc.dir}/index.html"/>
3.1250 + </target>
3.1251 + <target depends="init,-javadoc-build,-javadoc-browse" description="Build Javadoc." name="javadoc"/>
3.1252 + <!--
3.1253 + =========================
3.1254 + TEST COMPILATION SECTION
3.1255 + =========================
3.1256 + -->
3.1257 + <target depends="init,compile" if="have.tests" name="-pre-pre-compile-test">
3.1258 + <mkdir dir="${build.test.classes.dir}"/>
3.1259 + </target>
3.1260 + <target name="-pre-compile-test">
3.1261 + <!-- Empty placeholder for easier customization. -->
3.1262 + <!-- You can override this target in the ../build.xml file. -->
3.1263 + </target>
3.1264 + <target if="do.depend.true" name="-compile-test-depend">
3.1265 + <j2seproject3:depend classpath="${javac.test.classpath}" destdir="${build.test.classes.dir}" srcdir="${test.src.dir}"/>
3.1266 + </target>
3.1267 + <target depends="init,deps-jar,compile,-pre-pre-compile-test,-pre-compile-test,-compile-test-depend" if="have.tests" name="-do-compile-test">
3.1268 + <j2seproject3:javac apgeneratedsrcdir="${build.test.classes.dir}" classpath="${javac.test.classpath}" debug="true" destdir="${build.test.classes.dir}" processorpath="${javac.test.processorpath}" srcdir="${test.src.dir}"/>
3.1269 + <copy todir="${build.test.classes.dir}">
3.1270 + <fileset dir="${test.src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
3.1271 + </copy>
3.1272 + </target>
3.1273 + <target name="-post-compile-test">
3.1274 + <!-- Empty placeholder for easier customization. -->
3.1275 + <!-- You can override this target in the ../build.xml file. -->
3.1276 + </target>
3.1277 + <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test,-do-compile-test,-post-compile-test" name="compile-test"/>
3.1278 + <target name="-pre-compile-test-single">
3.1279 + <!-- Empty placeholder for easier customization. -->
3.1280 + <!-- You can override this target in the ../build.xml file. -->
3.1281 + </target>
3.1282 + <target depends="init,deps-jar,compile,-pre-pre-compile-test,-pre-compile-test-single" if="have.tests" name="-do-compile-test-single">
3.1283 + <fail unless="javac.includes">Must select some files in the IDE or set javac.includes</fail>
3.1284 + <j2seproject3:force-recompile destdir="${build.test.classes.dir}"/>
3.1285 + <j2seproject3:javac apgeneratedsrcdir="${build.test.classes.dir}" classpath="${javac.test.classpath}" debug="true" destdir="${build.test.classes.dir}" excludes="" includes="${javac.includes}" processorpath="${javac.test.processorpath}" sourcepath="${test.src.dir}" srcdir="${test.src.dir}"/>
3.1286 + <copy todir="${build.test.classes.dir}">
3.1287 + <fileset dir="${test.src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
3.1288 + </copy>
3.1289 + </target>
3.1290 + <target name="-post-compile-test-single">
3.1291 + <!-- Empty placeholder for easier customization. -->
3.1292 + <!-- You can override this target in the ../build.xml file. -->
3.1293 + </target>
3.1294 + <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test-single,-do-compile-test-single,-post-compile-test-single" name="compile-test-single"/>
3.1295 + <!--
3.1296 + =======================
3.1297 + TEST EXECUTION SECTION
3.1298 + =======================
3.1299 + -->
3.1300 + <target depends="init" if="have.tests" name="-pre-test-run">
3.1301 + <mkdir dir="${build.test.results.dir}"/>
3.1302 + </target>
3.1303 + <target depends="init,compile-test,-pre-test-run" if="have.tests" name="-do-test-run">
3.1304 + <j2seproject3:test includes="${includes}" testincludes="**/*Test.java"/>
3.1305 + </target>
3.1306 + <target depends="init,compile-test,-pre-test-run,-do-test-run" if="have.tests" name="-post-test-run">
3.1307 + <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail>
3.1308 + </target>
3.1309 + <target depends="init" if="have.tests" name="test-report"/>
3.1310 + <target depends="init" if="netbeans.home+have.tests" name="-test-browse"/>
3.1311 + <target depends="init,compile-test,-pre-test-run,-do-test-run,test-report,-post-test-run,-test-browse" description="Run unit tests." name="test"/>
3.1312 + <target depends="init" if="have.tests" name="-pre-test-run-single">
3.1313 + <mkdir dir="${build.test.results.dir}"/>
3.1314 + </target>
3.1315 + <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-do-test-run-single">
3.1316 + <fail unless="test.includes">Must select some files in the IDE or set test.includes</fail>
3.1317 + <j2seproject3:test excludes="" includes="${test.includes}" testincludes="${test.includes}"/>
3.1318 + </target>
3.1319 + <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single" if="have.tests" name="-post-test-run-single">
3.1320 + <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail>
3.1321 + </target>
3.1322 + <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"/>
3.1323 + <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-do-test-run-single-method">
3.1324 + <fail unless="test.class">Must select some files in the IDE or set test.class</fail>
3.1325 + <fail unless="test.method">Must select some method in the IDE or set test.method</fail>
3.1326 + <j2seproject3:test excludes="" includes="${javac.includes}" testincludes="${test.class}" testmethods="${test.method}"/>
3.1327 + </target>
3.1328 + <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single-method" if="have.tests" name="-post-test-run-single-method">
3.1329 + <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail>
3.1330 + </target>
3.1331 + <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"/>
3.1332 + <!--
3.1333 + =======================
3.1334 + TEST DEBUGGING SECTION
3.1335 + =======================
3.1336 + -->
3.1337 + <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-debug-start-debuggee-test">
3.1338 + <fail unless="test.class">Must select one file in the IDE or set test.class</fail>
3.1339 + <j2seproject3:test-debug excludes="" includes="${javac.includes}" testClass="${test.class}" testincludes="${javac.includes}"/>
3.1340 + </target>
3.1341 + <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-debug-start-debuggee-test-method">
3.1342 + <fail unless="test.class">Must select one file in the IDE or set test.class</fail>
3.1343 + <fail unless="test.method">Must select some method in the IDE or set test.method</fail>
3.1344 + <j2seproject3:test-debug excludes="" includes="${javac.includes}" testClass="${test.class}" testMethod="${test.method}" testincludes="${test.class}" testmethods="${test.method}"/>
3.1345 + </target>
3.1346 + <target depends="init,compile-test" if="netbeans.home+have.tests" name="-debug-start-debugger-test">
3.1347 + <j2seproject1:nbjpdastart classpath="${debug.test.classpath}" name="${test.class}"/>
3.1348 + </target>
3.1349 + <target depends="init,compile-test-single,-debug-start-debugger-test,-debug-start-debuggee-test" name="debug-test"/>
3.1350 + <target depends="init,compile-test-single,-debug-start-debugger-test,-debug-start-debuggee-test-method" name="debug-test-method"/>
3.1351 + <target depends="init,-pre-debug-fix,compile-test-single" if="netbeans.home" name="-do-debug-fix-test">
3.1352 + <j2seproject1:nbjpdareload dir="${build.test.classes.dir}"/>
3.1353 + </target>
3.1354 + <target depends="init,-pre-debug-fix,-do-debug-fix-test" if="netbeans.home" name="debug-fix-test"/>
3.1355 + <!--
3.1356 + =========================
3.1357 + APPLET EXECUTION SECTION
3.1358 + =========================
3.1359 + -->
3.1360 + <target depends="init,compile-single" name="run-applet">
3.1361 + <fail unless="applet.url">Must select one file in the IDE or set applet.url</fail>
3.1362 + <j2seproject1:java classname="sun.applet.AppletViewer">
3.1363 + <customize>
3.1364 + <arg value="${applet.url}"/>
3.1365 + </customize>
3.1366 + </j2seproject1:java>
3.1367 + </target>
3.1368 + <!--
3.1369 + =========================
3.1370 + APPLET DEBUGGING SECTION
3.1371 + =========================
3.1372 + -->
3.1373 + <target depends="init,compile-single" if="netbeans.home" name="-debug-start-debuggee-applet">
3.1374 + <fail unless="applet.url">Must select one file in the IDE or set applet.url</fail>
3.1375 + <j2seproject3:debug classname="sun.applet.AppletViewer">
3.1376 + <customize>
3.1377 + <arg value="${applet.url}"/>
3.1378 + </customize>
3.1379 + </j2seproject3:debug>
3.1380 + </target>
3.1381 + <target depends="init,compile-single,-debug-start-debugger,-debug-start-debuggee-applet" if="netbeans.home" name="debug-applet"/>
3.1382 + <!--
3.1383 + ===============
3.1384 + CLEANUP SECTION
3.1385 + ===============
3.1386 + -->
3.1387 + <target name="-deps-clean-init" unless="built-clean.properties">
3.1388 + <property location="${build.dir}/built-clean.properties" name="built-clean.properties"/>
3.1389 + <delete file="${built-clean.properties}" quiet="true"/>
3.1390 + </target>
3.1391 + <target if="already.built.clean.${basedir}" name="-warn-already-built-clean">
3.1392 + <echo level="warn" message="Cycle detected: parameter-lister was already built"/>
3.1393 + </target>
3.1394 + <target depends="init,-deps-clean-init" name="deps-clean" unless="no.deps">
3.1395 + <mkdir dir="${build.dir}"/>
3.1396 + <touch file="${built-clean.properties}" verbose="false"/>
3.1397 + <property file="${built-clean.properties}" prefix="already.built.clean."/>
3.1398 + <antcall target="-warn-already-built-clean"/>
3.1399 + <propertyfile file="${built-clean.properties}">
3.1400 + <entry key="${basedir}" value=""/>
3.1401 + </propertyfile>
3.1402 + </target>
3.1403 + <target depends="init" name="-do-clean">
3.1404 + <delete dir="${build.dir}"/>
3.1405 + <delete dir="${dist.dir}" followsymlinks="false" includeemptydirs="true"/>
3.1406 + </target>
3.1407 + <target name="-post-clean">
3.1408 + <!-- Empty placeholder for easier customization. -->
3.1409 + <!-- You can override this target in the ../build.xml file. -->
3.1410 + </target>
3.1411 + <target depends="init,deps-clean,-do-clean,-post-clean" description="Clean build products." name="clean"/>
3.1412 + <target name="-check-call-dep">
3.1413 + <property file="${call.built.properties}" prefix="already.built."/>
3.1414 + <condition property="should.call.dep">
3.1415 + <and>
3.1416 + <not>
3.1417 + <isset property="already.built.${call.subproject}"/>
3.1418 + </not>
3.1419 + <available file="${call.script}"/>
3.1420 + </and>
3.1421 + </condition>
3.1422 + </target>
3.1423 + <target depends="-check-call-dep" if="should.call.dep" name="-maybe-call-dep">
3.1424 + <ant antfile="${call.script}" inheritall="false" target="${call.target}">
3.1425 + <propertyset>
3.1426 + <propertyref prefix="transfer."/>
3.1427 + <mapper from="transfer.*" to="*" type="glob"/>
3.1428 + </propertyset>
3.1429 + </ant>
3.1430 + </target>
3.1431 +</project>
4.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
4.2 +++ b/java/parameter-lister/nbproject/genfiles.properties Sat Sep 10 23:03:43 2016 +0200
4.3 @@ -0,0 +1,8 @@
4.4 +build.xml.data.CRC32=3ece69f2
4.5 +build.xml.script.CRC32=9b783ee3
4.6 +build.xml.stylesheet.CRC32=8064a381@1.75.2.48
4.7 +# This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml.
4.8 +# Do not edit this file. You may delete it but then the IDE will never regenerate such files for you.
4.9 +nbproject/build-impl.xml.data.CRC32=3ece69f2
4.10 +nbproject/build-impl.xml.script.CRC32=1747cb70
4.11 +nbproject/build-impl.xml.stylesheet.CRC32=05530350@1.79.1.48
5.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
5.2 +++ b/java/parameter-lister/nbproject/project.properties Sat Sep 10 23:03:43 2016 +0200
5.3 @@ -0,0 +1,76 @@
5.4 +annotation.processing.enabled=true
5.5 +annotation.processing.enabled.in.editor=false
5.6 +annotation.processing.processors.list=
5.7 +annotation.processing.run.all.processors=true
5.8 +annotation.processing.source.output=${build.generated.sources.dir}/ap-source-output
5.9 +application.title=parameter-lister
5.10 +application.vendor=fiki
5.11 +build.classes.dir=${build.dir}/classes
5.12 +build.classes.excludes=**/*.java,**/*.form
5.13 +# This directory is removed when the project is cleaned:
5.14 +build.dir=build
5.15 +build.generated.dir=${build.dir}/generated
5.16 +build.generated.sources.dir=${build.dir}/generated-sources
5.17 +# Only compile against the classpath explicitly listed here:
5.18 +build.sysclasspath=ignore
5.19 +build.test.classes.dir=${build.dir}/test/classes
5.20 +build.test.results.dir=${build.dir}/test/results
5.21 +# Uncomment to specify the preferred debugger connection transport:
5.22 +#debug.transport=dt_socket
5.23 +debug.classpath=\
5.24 + ${run.classpath}
5.25 +debug.test.classpath=\
5.26 + ${run.test.classpath}
5.27 +# Files in build.classes.dir which should be excluded from distribution jar
5.28 +dist.archive.excludes=
5.29 +# This directory is removed when the project is cleaned:
5.30 +dist.dir=dist
5.31 +dist.jar=${dist.dir}/parameter-lister.jar
5.32 +dist.javadoc.dir=${dist.dir}/javadoc
5.33 +endorsed.classpath=
5.34 +excludes=
5.35 +includes=**
5.36 +jar.compress=false
5.37 +javac.classpath=
5.38 +# Space-separated list of extra javac options
5.39 +javac.compilerargs=
5.40 +javac.deprecation=false
5.41 +javac.processorpath=\
5.42 + ${javac.classpath}
5.43 +javac.source=1.8
5.44 +javac.target=1.8
5.45 +javac.test.classpath=\
5.46 + ${javac.classpath}:\
5.47 + ${build.classes.dir}
5.48 +javac.test.processorpath=\
5.49 + ${javac.test.classpath}
5.50 +javadoc.additionalparam=
5.51 +javadoc.author=false
5.52 +javadoc.encoding=${source.encoding}
5.53 +javadoc.noindex=false
5.54 +javadoc.nonavbar=false
5.55 +javadoc.notree=false
5.56 +javadoc.private=false
5.57 +javadoc.splitindex=true
5.58 +javadoc.use=true
5.59 +javadoc.version=false
5.60 +javadoc.windowtitle=
5.61 +main.class=info.glogalcode.parameterLister.CLI
5.62 +manifest.file=manifest.mf
5.63 +meta.inf.dir=${src.dir}/META-INF
5.64 +mkdist.disabled=false
5.65 +platform.active=default_platform
5.66 +run.classpath=\
5.67 + ${javac.classpath}:\
5.68 + ${build.classes.dir}
5.69 +# Space-separated list of JVM arguments used when running the project.
5.70 +# You may also define separate properties like run-sys-prop.name=value instead of -Dname=value.
5.71 +# To set system properties for unit tests define test-sys-prop.name=value:
5.72 +run.jvmargs=
5.73 +run.test.classpath=\
5.74 + ${javac.test.classpath}:\
5.75 + ${build.test.classes.dir}
5.76 +source.encoding=UTF-8
5.77 +src.config.dir=config
5.78 +src.dir=src
5.79 +test.src.dir=test
6.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
6.2 +++ b/java/parameter-lister/nbproject/project.xml Sat Sep 10 23:03:43 2016 +0200
6.3 @@ -0,0 +1,16 @@
6.4 +<?xml version="1.0" encoding="UTF-8"?>
6.5 +<project xmlns="http://www.netbeans.org/ns/project/1">
6.6 + <type>org.netbeans.modules.java.j2seproject</type>
6.7 + <configuration>
6.8 + <data xmlns="http://www.netbeans.org/ns/j2se-project/3">
6.9 + <name>parameter-lister</name>
6.10 + <source-roots>
6.11 + <root id="src.dir"/>
6.12 + <root id="src.config.dir" name="Config"/>
6.13 + </source-roots>
6.14 + <test-roots>
6.15 + <root id="test.src.dir"/>
6.16 + </test-roots>
6.17 + </data>
6.18 + </configuration>
6.19 +</project>
7.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
7.2 +++ b/java/parameter-lister/src/info/glogalcode/parameterLister/CLI.java Sat Sep 10 23:03:43 2016 +0200
7.3 @@ -0,0 +1,53 @@
7.4 +package info.glogalcode.parameterLister;
7.5 +
7.6 +import info.glogalcode.parameterLister.modules.TerminalModuleFactory;
7.7 +import java.util.Arrays;
7.8 +import java.util.HashMap;
7.9 +import java.util.Map;
7.10 +import java.util.ServiceLoader;
7.11 +import java.util.logging.Level;
7.12 +import java.util.logging.Logger;
7.13 +
7.14 +/**
7.15 + *
7.16 + * @author Ing. František Kučera (frantovo.cz)
7.17 + */
7.18 +public class CLI {
7.19 +
7.20 + public static final String ENV_BASE = "PARAMETER_LISTER";
7.21 + public static final String ENV_OUTPUT_MODULE_NAME = ENV_BASE + "_OUTPUT";
7.22 + public static final String DEFAULT_MODULE = TerminalModuleFactory.MODULE_NAME;
7.23 +
7.24 + public static final int EXIT_SUCCESS = 0;
7.25 + public static final int EXIT_UNEXPECTED_ERROR = 1;
7.26 + // 2 is reserved: http://www.tldp.org/LDP/abs/html/exitcodes.html#EXITCODESREF
7.27 + public static final int EXIT_MODULE_ERROR = 3;
7.28 +
7.29 + private static final Logger log = Logger.getLogger(CLI.class.getName());
7.30 +
7.31 + public static void main(String[] args) {
7.32 +
7.33 + try {
7.34 + ServiceLoader<OutputModuleFactory> modulesLoader = ServiceLoader.load(OutputModuleFactory.class);
7.35 + final Map<String, OutputModuleFactory> modules = new HashMap<>();
7.36 + modulesLoader.forEach(f -> modules.put(f.getName(), f));
7.37 +
7.38 + String moduleName = System.getenv(ENV_OUTPUT_MODULE_NAME);
7.39 + OutputModuleFactory moduleFactory = modules.getOrDefault(moduleName, modules.get(DEFAULT_MODULE));
7.40 + OutputModule module = moduleFactory.createModule();
7.41 +
7.42 + try {
7.43 + module.process(System.out, Arrays.asList(args));
7.44 + } catch (OutputModuleException e) {
7.45 + log.log(Level.SEVERE, "Error while processing output with module " + module.getClass().getName(), e);
7.46 + System.exit(EXIT_MODULE_ERROR);
7.47 + }
7.48 + } catch (Exception e) {
7.49 + log.log(Level.SEVERE, "Unexpected exception, probably bug.", e);
7.50 + System.exit(EXIT_UNEXPECTED_ERROR);
7.51 +
7.52 + }
7.53 + System.exit(EXIT_SUCCESS);
7.54 + }
7.55 +
7.56 +}
8.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
8.2 +++ b/java/parameter-lister/src/info/glogalcode/parameterLister/OutputModule.java Sat Sep 10 23:03:43 2016 +0200
8.3 @@ -0,0 +1,14 @@
8.4 +package info.glogalcode.parameterLister;
8.5 +
8.6 +import java.io.OutputStream;
8.7 +import java.util.List;
8.8 +
8.9 +/**
8.10 + *
8.11 + * @author Ing. František Kučera (frantovo.cz)
8.12 + */
8.13 +public interface OutputModule {
8.14 +
8.15 + void process(OutputStream output, List<String> parameters) throws OutputModuleException;
8.16 +
8.17 +}
9.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
9.2 +++ b/java/parameter-lister/src/info/glogalcode/parameterLister/OutputModuleException.java Sat Sep 10 23:03:43 2016 +0200
9.3 @@ -0,0 +1,24 @@
9.4 +package info.glogalcode.parameterLister;
9.5 +
9.6 +/**
9.7 + *
9.8 + * @author Ing. František Kučera (frantovo.cz)
9.9 + */
9.10 +public class OutputModuleException extends ParameterListerException {
9.11 +
9.12 + public OutputModuleException() {
9.13 + }
9.14 +
9.15 + public OutputModuleException(String message) {
9.16 + super(message);
9.17 + }
9.18 +
9.19 + public OutputModuleException(Throwable cause) {
9.20 + super(cause);
9.21 + }
9.22 +
9.23 + public OutputModuleException(String message, Throwable cause) {
9.24 + super(message, cause);
9.25 + }
9.26 +
9.27 +}
10.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
10.2 +++ b/java/parameter-lister/src/info/glogalcode/parameterLister/OutputModuleFactory.java Sat Sep 10 23:03:43 2016 +0200
10.3 @@ -0,0 +1,13 @@
10.4 +package info.glogalcode.parameterLister;
10.5 +
10.6 +/**
10.7 + *
10.8 + * @author Ing. František Kučera (frantovo.cz)
10.9 + */
10.10 +public interface OutputModuleFactory {
10.11 +
10.12 + public OutputModule createModule() throws OutputModuleFactoryException;
10.13 +
10.14 + public String getName();
10.15 +
10.16 +}
11.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
11.2 +++ b/java/parameter-lister/src/info/glogalcode/parameterLister/OutputModuleFactoryException.java Sat Sep 10 23:03:43 2016 +0200
11.3 @@ -0,0 +1,24 @@
11.4 +package info.glogalcode.parameterLister;
11.5 +
11.6 +/**
11.7 + *
11.8 + * @author Ing. František Kučera (frantovo.cz)
11.9 + */
11.10 +public class OutputModuleFactoryException extends ParameterListerException {
11.11 +
11.12 + public OutputModuleFactoryException() {
11.13 + }
11.14 +
11.15 + public OutputModuleFactoryException(String message) {
11.16 + super(message);
11.17 + }
11.18 +
11.19 + public OutputModuleFactoryException(Throwable cause) {
11.20 + super(cause);
11.21 + }
11.22 +
11.23 + public OutputModuleFactoryException(String message, Throwable cause) {
11.24 + super(message, cause);
11.25 + }
11.26 +
11.27 +}
12.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
12.2 +++ b/java/parameter-lister/src/info/glogalcode/parameterLister/ParameterListerException.java Sat Sep 10 23:03:43 2016 +0200
12.3 @@ -0,0 +1,24 @@
12.4 +package info.glogalcode.parameterLister;
12.5 +
12.6 +/**
12.7 + *
12.8 + * @author Ing. František Kučera (frantovo.cz)
12.9 + */
12.10 +public class ParameterListerException extends Exception {
12.11 +
12.12 + public ParameterListerException() {
12.13 + }
12.14 +
12.15 + public ParameterListerException(String message) {
12.16 + super(message);
12.17 + }
12.18 +
12.19 + public ParameterListerException(Throwable cause) {
12.20 + super(cause);
12.21 + }
12.22 +
12.23 + public ParameterListerException(String message, Throwable cause) {
12.24 + super(message, cause);
12.25 + }
12.26 +
12.27 +}
13.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
13.2 +++ b/java/parameter-lister/src/info/glogalcode/parameterLister/modules/AbstractModuleFactory.java Sat Sep 10 23:03:43 2016 +0200
13.3 @@ -0,0 +1,35 @@
13.4 +package info.glogalcode.parameterLister.modules;
13.5 +
13.6 +import info.glogalcode.parameterLister.OutputModule;
13.7 +import info.glogalcode.parameterLister.OutputModuleFactory;
13.8 +import info.glogalcode.parameterLister.OutputModuleFactoryException;
13.9 +
13.10 +/**
13.11 + *
13.12 + * @author Ing. František Kučera (frantovo.cz)
13.13 + */
13.14 +public abstract class AbstractModuleFactory implements OutputModuleFactory {
13.15 +
13.16 + private final Class<? extends OutputModule> clazz;
13.17 + private final String name;
13.18 +
13.19 + public AbstractModuleFactory(String name, Class<? extends OutputModule> clazz) {
13.20 + this.clazz = clazz;
13.21 + this.name = name;
13.22 + }
13.23 +
13.24 + @Override
13.25 + public String getName() {
13.26 + return name;
13.27 + }
13.28 +
13.29 + @Override
13.30 + public OutputModule createModule() throws OutputModuleFactoryException {
13.31 + try {
13.32 + return clazz.newInstance();
13.33 + } catch (IllegalAccessException | InstantiationException e) {
13.34 + throw new OutputModuleFactoryException("Error while creating instance of class " + clazz + " for module " + name, e);
13.35 + }
13.36 + }
13.37 +
13.38 +}
14.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
14.2 +++ b/java/parameter-lister/src/info/glogalcode/parameterLister/modules/TerminalModule.java Sat Sep 10 23:03:43 2016 +0200
14.3 @@ -0,0 +1,25 @@
14.4 +package info.glogalcode.parameterLister.modules;
14.5 +
14.6 +import info.glogalcode.parameterLister.OutputModule;
14.7 +import info.glogalcode.parameterLister.OutputModuleException;
14.8 +import java.io.OutputStream;
14.9 +import java.io.PrintWriter;
14.10 +import java.util.List;
14.11 +
14.12 +/**
14.13 + *
14.14 + * @author Ing. František Kučera (frantovo.cz)
14.15 + */
14.16 +public class TerminalModule implements OutputModule {
14.17 +
14.18 + @Override
14.19 + public void process(OutputStream output, List<String> parameters) throws OutputModuleException {
14.20 + try (PrintWriter out = new PrintWriter(output)) {
14.21 + for (String parameter : parameters) {
14.22 + out.println(parameter);
14.23 + out.flush();
14.24 + }
14.25 + }
14.26 + }
14.27 +
14.28 +}
15.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
15.2 +++ b/java/parameter-lister/src/info/glogalcode/parameterLister/modules/TerminalModuleFactory.java Sat Sep 10 23:03:43 2016 +0200
15.3 @@ -0,0 +1,15 @@
15.4 +package info.glogalcode.parameterLister.modules;
15.5 +
15.6 +/**
15.7 + *
15.8 + * @author Ing. František Kučera (frantovo.cz)
15.9 + */
15.10 +public class TerminalModuleFactory extends AbstractModuleFactory {
15.11 +
15.12 + public static final String MODULE_NAME = "terminal";
15.13 +
15.14 + public TerminalModuleFactory() {
15.15 + super(MODULE_NAME, TerminalModule.class);
15.16 + }
15.17 +
15.18 +}