wagon 0.10.5 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
data/Rakefile CHANGED
@@ -14,6 +14,7 @@ begin
14
14
  gem.add_dependency "nokogiri", ">= 1.4.0"
15
15
  gem.add_dependency "highline", ">= 1.5.1"
16
16
  gem.add_dependency "prawn", ">= 0.5.1"
17
+ gem.add_dependency "queue_to_the_future", ">= 0.1.0"
17
18
  gem.add_development_dependency "rspec", ">= 1.2.9"
18
19
  gem.add_development_dependency "yard", ">= 0"
19
20
  # gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.10.5
1
+ 1.0.0
data/bin/wagon CHANGED
@@ -1,146 +1,146 @@
1
- #!/usr/bin/env ruby
2
-
3
- # == Usage
4
- # wagon [options] [output_file]
5
- #
6
- # == Options
7
- # -h, --help Displays this help message
8
- # -v, --version Display the version, then exit
9
- # -V, --verbose Verbose output
10
- # -t, --title The title displayed on each page (default is the ward name)
11
- # -r, --rows Number of rows per page (default is 6)
12
- # -c, --columns Number of columns per page (default is 7)
13
- # -p, --padding Padding between households (default is 2)
14
- # -f, --font-size Primary font size (default is 8)
15
- # --page-numbers Include page numbers in the footer, e.g. (1 of 3)
16
- # --date Include the current date in the footer
17
- # --no-picture Do not include pictures
18
- # --no-address Do not include street addresses
19
- # --no-phone Do not include phone numbers
20
- # --no-email Do not include email addresses
21
- #
22
- # == Copyright
23
- # Copyright (c) 2009 Devin Christensen. See LICENSE for details.
24
-
25
- $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
26
-
27
- require 'optparse'
28
- require 'rdoc/usage'
29
- require 'ostruct'
30
- require 'wagon'
31
- require 'highline/import'
32
-
33
- class WagonApp
34
- def initialize(arguments, stdin)
35
- @arguments = arguments
36
- @stdin = stdin
37
- @options = OpenStruct.new()
38
-
39
- # Set defaults
40
- @options.verbose = false
41
- @options.title = nil
42
- @options.rows = 6
43
- @options.columns = 7
44
- @options.padding = 2
45
- @options.font_size = 8
46
- @options.page_numbers = false
47
- @options.include_date = false
48
- @options.picture = true
49
- @options.address = true
50
- @options.phone_number = true
51
- @options.email = true
52
- @options.output_file = "./photo_directory.pdf"
53
- end
54
-
55
- def run
56
- if arguments_valid?
57
- puts "Start at #{DateTime.now}\n\n" if @options.verbose
58
-
59
- output_options if @options.verbose # [Optional]
60
-
61
- process
62
-
63
- puts "\nFinished in #{DateTime.now}" if @options.verbose
64
-
65
- else
66
- output_usage
67
- end
68
-
69
- end
70
-
71
- protected
72
- def arguments_valid?
73
- # Specify options
74
- opts = OptionParser.new
75
- opts.on('-v', '--version') { output_version ; exit 0 }
76
- opts.on('-h', '--help') { output_help }
77
- opts.on('-V', '--verbose') { @options.verbose = true }
78
- opts.on('-t', '--title=TITLE') { |title| @options.title = title }
79
- opts.on('-r', '--rows=ROWS') { |rows| @options.rows = rows }
80
- opts.on('-c', '--columns=COLUMNS') { |columns| @options.columns = columns }
81
- opts.on('-p', '--padding=PADDING') { |padding| @options.padding = padding }
82
- opts.on('-f', '--font-size=SIZE') { |size| @options.font_size = size }
83
- opts.on('--page-numbers') { @options.page_numbering = true }
84
- opts.on('--date') { @options.include_date = true }
85
- opts.on('--no-picture') { @options.picture = false }
86
- opts.on('--no-address') { @options.address = false }
87
- opts.on('--no-phone') { @options.phone_number = false }
88
- opts.on('--no-email') { @options.email = false }
89
-
90
- opts.parse!(@arguments) rescue return false
91
- @options.output_file = @arguments.last unless @arguments.empty?
92
-
93
- true
94
- end
95
-
96
- def output_options
97
- puts "Options:\n"
98
-
99
- @options.marshal_dump.each do |name, val|
100
- puts " #{name} = #{val}"
101
- end
102
- end
103
-
104
- def output_help
105
- output_version
106
- RDoc::usage()
107
- end
108
-
109
- def output_usage
110
- RDoc::usage('usage') # gets usage from comments above
111
- end
112
-
113
- def output_version
114
- puts "#{File.basename(__FILE__)} version #{Wagon::VERSION}"
115
- end
116
-
117
- def process
118
- username = ask("What is your lds.org username? ")
119
- password = ask("What is your lds.org password? ") { |q| q.echo = "*" }
120
-
121
- user = Wagon::connect(username, password)
122
-
123
- puts "\nAlright, we're in!"
124
- puts "I'm gonna go ahead and create that PDF for ya now."
125
- puts "It might take a few minutes to gather all the info"
126
- puts "so grab a crisp cool beverage, sit back and relax."
127
- puts "I'll take it from here."
128
-
129
- directory = user.ward.to_pdf( @options.marshal_dump )
130
- directory.render_file(@options.output_file)
131
-
132
- puts "\nFinished. Enjoy.\n"
133
-
134
- rescue Wagon::AuthenticationFailure
135
- puts "\nThe username and password combination you entered is invalid."
136
- rescue
137
- if @options.verbose
138
- raise
139
- else
140
- puts "\nI encountered an unexpected problem, and I don't know what to do. :("
141
- end
142
- end
143
- end
144
-
145
- app = WagonApp.new(ARGV, STDIN)
1
+ #!/usr/bin/env ruby
2
+
3
+ # == Usage
4
+ # wagon [options] [output_file]
5
+ #
6
+ # == Options
7
+ # -h, --help Displays this help message
8
+ # -v, --version Display the version, then exit
9
+ # -V, --verbose Verbose output
10
+ # -t, --title The title displayed on each page (default is the ward name)
11
+ # -r, --rows Number of rows per page (default is 6)
12
+ # -c, --columns Number of columns per page (default is 7)
13
+ # -p, --padding Padding between households (default is 2)
14
+ # -f, --font-size Primary font size (default is 8)
15
+ # --page-numbers Include page numbers in the footer, e.g. (1 of 3)
16
+ # --date Include the current date in the footer
17
+ # --no-picture Do not include pictures
18
+ # --no-address Do not include street addresses
19
+ # --no-phone Do not include phone numbers
20
+ # --no-email Do not include email addresses
21
+ #
22
+ # == Copyright
23
+ # Copyright (c) 2009 Devin Christensen. See LICENSE for details.
24
+
25
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
26
+
27
+ require 'optparse'
28
+ require 'rdoc/usage'
29
+ require 'ostruct'
30
+ require 'wagon'
31
+ require 'highline/import'
32
+
33
+ class WagonApp
34
+ def initialize(arguments, stdin)
35
+ @arguments = arguments
36
+ @stdin = stdin
37
+ @options = OpenStruct.new()
38
+
39
+ # Set defaults
40
+ @options.verbose = false
41
+ @options.title = nil
42
+ @options.rows = 6
43
+ @options.columns = 7
44
+ @options.padding = 2
45
+ @options.font_size = 8
46
+ @options.page_numbers = false
47
+ @options.include_date = false
48
+ @options.picture = true
49
+ @options.address = true
50
+ @options.phone_number = true
51
+ @options.email = true
52
+ @options.output_file = "./photo_directory.pdf"
53
+ end
54
+
55
+ def run
56
+ if arguments_valid?
57
+ puts "Start at #{DateTime.now}\n\n" if @options.verbose
58
+
59
+ output_options if @options.verbose # [Optional]
60
+
61
+ process
62
+
63
+ puts "\nFinished in #{DateTime.now}" if @options.verbose
64
+
65
+ else
66
+ output_usage
67
+ end
68
+
69
+ end
70
+
71
+ protected
72
+ def arguments_valid?
73
+ # Specify options
74
+ opts = OptionParser.new
75
+ opts.on('-v', '--version') { output_version ; exit 0 }
76
+ opts.on('-h', '--help') { output_help }
77
+ opts.on('-V', '--verbose') { @options.verbose = true }
78
+ opts.on('-t', '--title=TITLE') { |title| @options.title = title }
79
+ opts.on('-r', '--rows=ROWS') { |rows| @options.rows = rows }
80
+ opts.on('-c', '--columns=COLUMNS') { |columns| @options.columns = columns }
81
+ opts.on('-p', '--padding=PADDING') { |padding| @options.padding = padding }
82
+ opts.on('-f', '--font-size=SIZE') { |size| @options.font_size = size }
83
+ opts.on('--page-numbers') { @options.page_numbering = true }
84
+ opts.on('--date') { @options.include_date = true }
85
+ opts.on('--no-picture') { @options.picture = false }
86
+ opts.on('--no-address') { @options.address = false }
87
+ opts.on('--no-phone') { @options.phone_number = false }
88
+ opts.on('--no-email') { @options.email = false }
89
+
90
+ opts.parse!(@arguments) rescue return false
91
+ @options.output_file = @arguments.last unless @arguments.empty?
92
+
93
+ true
94
+ end
95
+
96
+ def output_options
97
+ puts "Options:\n"
98
+
99
+ @options.marshal_dump.each do |name, val|
100
+ puts " #{name} = #{val}"
101
+ end
102
+ end
103
+
104
+ def output_help
105
+ output_version
106
+ RDoc::usage()
107
+ end
108
+
109
+ def output_usage
110
+ RDoc::usage('usage') # gets usage from comments above
111
+ end
112
+
113
+ def output_version
114
+ puts "#{File.basename(__FILE__)} version #{Wagon::VERSION}"
115
+ end
116
+
117
+ def process
118
+ username = ask("What is your lds.org username? ")
119
+ password = ask("What is your lds.org password? ") { |q| q.echo = "*" }
120
+
121
+ user = Wagon::connect(username, password)
122
+
123
+ puts "\nAlright, we're in!"
124
+ puts "I'm gonna go ahead and create that PDF for ya now."
125
+ puts "It might take a few minutes to gather all the info"
126
+ puts "so grab a crisp cool beverage, sit back and relax."
127
+ puts "I'll take it from here."
128
+
129
+ directory = user.ward.to_pdf( @options.marshal_dump )
130
+ directory.render_file(@options.output_file)
131
+
132
+ puts "\nFinished. Enjoy.\n"
133
+
134
+ rescue Wagon::AuthenticationFailure
135
+ puts "\nThe username and password combination you entered is invalid."
136
+ rescue
137
+ if @options.verbose
138
+ raise
139
+ else
140
+ puts "\nI encountered an unexpected problem, and I don't know what to do. :("
141
+ end
142
+ end
143
+ end
144
+
145
+ app = WagonApp.new(ARGV, STDIN)
146
146
  app.run
@@ -0,0 +1,5 @@
1
+ require 'rawr'
2
+ require 'rawr'
3
+ Dir.glob("tasks/**/*.rake").each do |rake_file|
4
+ load File.expand_path(File.dirname(__FILE__) + "/" + rake_file)
5
+ end
@@ -0,0 +1,74 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!-- You may freely edit this file. See commented blocks below for -->
3
+ <!-- some examples of how to customize the build. -->
4
+ <!-- (If you delete it and reopen the project it will be recreated.) -->
5
+ <!-- By default, only the Clean and Build commands use this build script. -->
6
+ <!-- Commands such as Run, Debug, and Test only use this build script if -->
7
+ <!-- the Compile on Save feature is turned off for the project. -->
8
+ <!-- You can turn off the Compile on Save (or Deploy on Save) setting -->
9
+ <!-- in the project's Project Properties dialog box.-->
10
+ <project name="Wagon" default="default" basedir=".">
11
+ <description>Builds, tests, and runs the project Wagon.</description>
12
+ <import file="nbproject/build-impl.xml"/>
13
+ <!--
14
+
15
+ There exist several targets which are by default empty and which can be
16
+ used for execution of your tasks. These targets are usually executed
17
+ before and after some main targets. They are:
18
+
19
+ -pre-init: called before initialization of project properties
20
+ -post-init: called after initialization of project properties
21
+ -pre-compile: called before javac compilation
22
+ -post-compile: called after javac compilation
23
+ -pre-compile-single: called before javac compilation of single file
24
+ -post-compile-single: called after javac compilation of single file
25
+ -pre-compile-test: called before javac compilation of JUnit tests
26
+ -post-compile-test: called after javac compilation of JUnit tests
27
+ -pre-compile-test-single: called before javac compilation of single JUnit test
28
+ -post-compile-test-single: called after javac compilation of single JUunit test
29
+ -pre-jar: called before JAR building
30
+ -post-jar: called after JAR building
31
+ -post-clean: called after cleaning build products
32
+
33
+ (Targets beginning with '-' are not intended to be called on their own.)
34
+
35
+ Example of inserting an obfuscator after compilation could look like this:
36
+
37
+ <target name="-post-compile">
38
+ <obfuscate>
39
+ <fileset dir="${build.classes.dir}"/>
40
+ </obfuscate>
41
+ </target>
42
+
43
+ For list of available properties check the imported
44
+ nbproject/build-impl.xml file.
45
+
46
+
47
+ Another way to customize the build is by overriding existing main targets.
48
+ The targets of interest are:
49
+
50
+ -init-macrodef-javac: defines macro for javac compilation
51
+ -init-macrodef-junit: defines macro for junit execution
52
+ -init-macrodef-debug: defines macro for class debugging
53
+ -init-macrodef-java: defines macro for class execution
54
+ -do-jar-with-manifest: JAR building (if you are using a manifest)
55
+ -do-jar-without-manifest: JAR building (if you are not using a manifest)
56
+ run: execution of project
57
+ -javadoc-build: Javadoc generation
58
+ test-report: JUnit report generation
59
+
60
+ An example of overriding the target for project execution could look like this:
61
+
62
+ <target name="run" depends="Wagon-impl.jar">
63
+ <exec dir="bin" executable="launcher.exe">
64
+ <arg file="${dist.jar}"/>
65
+ </exec>
66
+ </target>
67
+
68
+ Notice that the overridden target depends on the jar target and not only on
69
+ the compile target as the regular run target does. Again, for a list of available
70
+ properties which you can use, check the target you are overriding in the
71
+ nbproject/build-impl.xml file.
72
+
73
+ -->
74
+ </project>
@@ -0,0 +1,31 @@
1
+ configuration do |c|
2
+ c.project_name = 'ChangeMe'
3
+ c.output_dir = 'package'
4
+ c.main_ruby_file = 'main'
5
+ c.main_java_file = 'org.rubyforge.rawr.Main'
6
+
7
+ # Compile all Ruby and Java files recursively
8
+ # Copy all other files taking into account exclusion filter
9
+ c.source_dirs = ['src', 'lib/ruby']
10
+ c.source_exclude_filter = []
11
+
12
+ # Location of the jruby-complete.jar. Override this if your jar lives elsewhere.
13
+ # This allows Rawr to make sure it uses a compatible jrubyc when compiling,
14
+ # so the class files are always compatible, regardless of your system JRuby.
15
+ #c.jruby_jar = 'lib/java/jruby-complete.jar'
16
+ c.compile_ruby_files = true
17
+ #c.java_lib_files = []
18
+ c.java_lib_dirs = ['lib/java']
19
+ #c.files_to_copy = Dir['other_files/dir/**/*']
20
+
21
+ c.target_jvm_version = 1.5
22
+ #c.jars[:data] = { :directory => 'data/images', :location_in_jar => 'images', :exclude => /bak/}
23
+ #c.jvm_arguments = "-server"
24
+ #c.java_library_path = "lib/java/native"
25
+
26
+ # Bundler options
27
+ # c.do_not_generate_plist = false
28
+ c.mac_icon_path = File.expand_path('icons/monkeybars.icns')
29
+ c.windows_icon_path = File.expand_path('icons/monkeybars.ico')
30
+ end
31
+
Binary file
Binary file
@@ -0,0 +1 @@
1
+ 3rd party Ruby libs and unpacked gems go here.
@@ -0,0 +1,3 @@
1
+ Manifest-Version: 1.0
2
+ X-COMMENT: Main-Class will be added automatically by build
3
+
@@ -0,0 +1,794 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!--
3
+ *** GENERATED FROM project.xml - DO NOT EDIT ***
4
+ *** EDIT ../build.xml INSTEAD ***
5
+
6
+ For the purpose of easier reading the script
7
+ is divided into following sections:
8
+
9
+ - initialization
10
+ - compilation
11
+ - jar
12
+ - execution
13
+ - debugging
14
+ - javadoc
15
+ - junit compilation
16
+ - junit execution
17
+ - junit debugging
18
+ - applet
19
+ - cleanup
20
+
21
+ -->
22
+ <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="Wagon-impl">
23
+ <fail message="Please build using Ant 1.7.1 or higher.">
24
+ <condition>
25
+ <not>
26
+ <antversion atleast="1.7.1"/>
27
+ </not>
28
+ </condition>
29
+ </fail>
30
+ <target depends="test,jar,javadoc" description="Build and test whole project." name="default"/>
31
+ <!--
32
+ ======================
33
+ INITIALIZATION SECTION
34
+ ======================
35
+ -->
36
+ <target name="-pre-init">
37
+ <!-- Empty placeholder for easier customization. -->
38
+ <!-- You can override this target in the ../build.xml file. -->
39
+ </target>
40
+ <target depends="-pre-init" name="-init-private">
41
+ <property file="nbproject/private/config.properties"/>
42
+ <property file="nbproject/private/configs/${config}.properties"/>
43
+ <property file="nbproject/private/private.properties"/>
44
+ </target>
45
+ <target depends="-pre-init,-init-private" name="-init-user">
46
+ <property file="${user.properties.file}"/>
47
+ <!-- The two properties below are usually overridden -->
48
+ <!-- by the active platform. Just a fallback. -->
49
+ <property name="default.javac.source" value="1.4"/>
50
+ <property name="default.javac.target" value="1.4"/>
51
+ </target>
52
+ <target depends="-pre-init,-init-private,-init-user" name="-init-project">
53
+ <property file="nbproject/configs/${config}.properties"/>
54
+ <property file="nbproject/project.properties"/>
55
+ </target>
56
+ <target depends="-pre-init,-init-private,-init-user,-init-project,-init-macrodef-property" name="-do-init">
57
+ <available file="${manifest.file}" property="manifest.available"/>
58
+ <condition property="main.class.available">
59
+ <and>
60
+ <isset property="main.class"/>
61
+ <not>
62
+ <equals arg1="${main.class}" arg2="" trim="true"/>
63
+ </not>
64
+ </and>
65
+ </condition>
66
+ <condition property="manifest.available+main.class">
67
+ <and>
68
+ <isset property="manifest.available"/>
69
+ <isset property="main.class.available"/>
70
+ </and>
71
+ </condition>
72
+ <condition property="do.mkdist">
73
+ <and>
74
+ <isset property="libs.CopyLibs.classpath"/>
75
+ <not>
76
+ <istrue value="${mkdist.disabled}"/>
77
+ </not>
78
+ </and>
79
+ </condition>
80
+ <condition property="manifest.available+main.class+mkdist.available">
81
+ <and>
82
+ <istrue value="${manifest.available+main.class}"/>
83
+ <isset property="do.mkdist"/>
84
+ </and>
85
+ </condition>
86
+ <condition property="manifest.available+mkdist.available">
87
+ <and>
88
+ <istrue value="${manifest.available}"/>
89
+ <isset property="do.mkdist"/>
90
+ </and>
91
+ </condition>
92
+ <condition property="manifest.available-mkdist.available">
93
+ <or>
94
+ <istrue value="${manifest.available}"/>
95
+ <isset property="do.mkdist"/>
96
+ </or>
97
+ </condition>
98
+ <condition property="manifest.available+main.class-mkdist.available">
99
+ <or>
100
+ <istrue value="${manifest.available+main.class}"/>
101
+ <isset property="do.mkdist"/>
102
+ </or>
103
+ </condition>
104
+ <condition property="have.tests">
105
+ <or/>
106
+ </condition>
107
+ <condition property="have.sources">
108
+ <or>
109
+ <available file="${src.dir}"/>
110
+ </or>
111
+ </condition>
112
+ <condition property="netbeans.home+have.tests">
113
+ <and>
114
+ <isset property="netbeans.home"/>
115
+ <isset property="have.tests"/>
116
+ </and>
117
+ </condition>
118
+ <condition property="no.javadoc.preview">
119
+ <and>
120
+ <isset property="javadoc.preview"/>
121
+ <isfalse value="${javadoc.preview}"/>
122
+ </and>
123
+ </condition>
124
+ <property name="run.jvmargs" value=""/>
125
+ <property name="javac.compilerargs" value=""/>
126
+ <property name="work.dir" value="${basedir}"/>
127
+ <condition property="no.deps">
128
+ <and>
129
+ <istrue value="${no.dependencies}"/>
130
+ </and>
131
+ </condition>
132
+ <property name="javac.debug" value="true"/>
133
+ <property name="javadoc.preview" value="true"/>
134
+ <property name="application.args" value=""/>
135
+ <property name="source.encoding" value="${file.encoding}"/>
136
+ <property name="runtime.encoding" value="${source.encoding}"/>
137
+ <condition property="javadoc.encoding.used" value="${javadoc.encoding}">
138
+ <and>
139
+ <isset property="javadoc.encoding"/>
140
+ <not>
141
+ <equals arg1="${javadoc.encoding}" arg2=""/>
142
+ </not>
143
+ </and>
144
+ </condition>
145
+ <property name="javadoc.encoding.used" value="${source.encoding}"/>
146
+ <property name="includes" value="**"/>
147
+ <property name="excludes" value=""/>
148
+ <property name="do.depend" value="false"/>
149
+ <condition property="do.depend.true">
150
+ <istrue value="${do.depend}"/>
151
+ </condition>
152
+ <path id="endorsed.classpath.path" path="${endorsed.classpath}"/>
153
+ <condition else="" property="endorsed.classpath.cmd.line.arg" value="-Xbootclasspath/p:'${toString:endorsed.classpath.path}'">
154
+ <length length="0" string="${endorsed.classpath}" when="greater"/>
155
+ </condition>
156
+ <property name="javac.fork" value="false"/>
157
+ </target>
158
+ <target name="-post-init">
159
+ <!-- Empty placeholder for easier customization. -->
160
+ <!-- You can override this target in the ../build.xml file. -->
161
+ </target>
162
+ <target depends="-pre-init,-init-private,-init-user,-init-project,-do-init" name="-init-check">
163
+ <fail unless="src.dir">Must set src.dir</fail>
164
+ <fail unless="build.dir">Must set build.dir</fail>
165
+ <fail unless="dist.dir">Must set dist.dir</fail>
166
+ <fail unless="build.classes.dir">Must set build.classes.dir</fail>
167
+ <fail unless="dist.javadoc.dir">Must set dist.javadoc.dir</fail>
168
+ <fail unless="build.test.classes.dir">Must set build.test.classes.dir</fail>
169
+ <fail unless="build.test.results.dir">Must set build.test.results.dir</fail>
170
+ <fail unless="build.classes.excludes">Must set build.classes.excludes</fail>
171
+ <fail unless="dist.jar">Must set dist.jar</fail>
172
+ </target>
173
+ <target name="-init-macrodef-property">
174
+ <macrodef name="property" uri="http://www.netbeans.org/ns/j2se-project/1">
175
+ <attribute name="name"/>
176
+ <attribute name="value"/>
177
+ <sequential>
178
+ <property name="@{name}" value="${@{value}}"/>
179
+ </sequential>
180
+ </macrodef>
181
+ </target>
182
+ <target name="-init-macrodef-javac">
183
+ <macrodef name="javac" uri="http://www.netbeans.org/ns/j2se-project/3">
184
+ <attribute default="${src.dir}" name="srcdir"/>
185
+ <attribute default="${build.classes.dir}" name="destdir"/>
186
+ <attribute default="${javac.classpath}" name="classpath"/>
187
+ <attribute default="${includes}" name="includes"/>
188
+ <attribute default="${excludes}" name="excludes"/>
189
+ <attribute default="${javac.debug}" name="debug"/>
190
+ <attribute default="${empty.dir}" name="sourcepath"/>
191
+ <attribute default="${empty.dir}" name="gensrcdir"/>
192
+ <element name="customize" optional="true"/>
193
+ <sequential>
194
+ <property location="${build.dir}/empty" name="empty.dir"/>
195
+ <mkdir dir="${empty.dir}"/>
196
+ <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}">
197
+ <src>
198
+ <dirset dir="@{gensrcdir}" erroronmissingdir="false">
199
+ <include name="*"/>
200
+ </dirset>
201
+ </src>
202
+ <classpath>
203
+ <path path="@{classpath}"/>
204
+ </classpath>
205
+ <compilerarg line="${endorsed.classpath.cmd.line.arg}"/>
206
+ <compilerarg line="${javac.compilerargs}"/>
207
+ <customize/>
208
+ </javac>
209
+ </sequential>
210
+ </macrodef>
211
+ <macrodef name="depend" uri="http://www.netbeans.org/ns/j2se-project/3">
212
+ <attribute default="${src.dir}" name="srcdir"/>
213
+ <attribute default="${build.classes.dir}" name="destdir"/>
214
+ <attribute default="${javac.classpath}" name="classpath"/>
215
+ <sequential>
216
+ <depend cache="${build.dir}/depcache" destdir="@{destdir}" excludes="${excludes}" includes="${includes}" srcdir="@{srcdir}">
217
+ <classpath>
218
+ <path path="@{classpath}"/>
219
+ </classpath>
220
+ </depend>
221
+ </sequential>
222
+ </macrodef>
223
+ <macrodef name="force-recompile" uri="http://www.netbeans.org/ns/j2se-project/3">
224
+ <attribute default="${build.classes.dir}" name="destdir"/>
225
+ <sequential>
226
+ <fail unless="javac.includes">Must set javac.includes</fail>
227
+ <pathconvert pathsep="," property="javac.includes.binary">
228
+ <path>
229
+ <filelist dir="@{destdir}" files="${javac.includes}"/>
230
+ </path>
231
+ <globmapper from="*.java" to="*.class"/>
232
+ </pathconvert>
233
+ <delete>
234
+ <files includes="${javac.includes.binary}"/>
235
+ </delete>
236
+ </sequential>
237
+ </macrodef>
238
+ </target>
239
+ <target name="-init-macrodef-junit">
240
+ <macrodef name="junit" uri="http://www.netbeans.org/ns/j2se-project/3">
241
+ <attribute default="${includes}" name="includes"/>
242
+ <attribute default="${excludes}" name="excludes"/>
243
+ <attribute default="**" name="testincludes"/>
244
+ <sequential>
245
+ <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" showoutput="true" tempdir="${build.dir}">
246
+ <batchtest todir="${build.test.results.dir}"/>
247
+ <classpath>
248
+ <path path="${run.test.classpath}"/>
249
+ </classpath>
250
+ <syspropertyset>
251
+ <propertyref prefix="test-sys-prop."/>
252
+ <mapper from="test-sys-prop.*" to="*" type="glob"/>
253
+ </syspropertyset>
254
+ <formatter type="brief" usefile="false"/>
255
+ <formatter type="xml"/>
256
+ <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
257
+ <jvmarg line="${run.jvmargs}"/>
258
+ </junit>
259
+ </sequential>
260
+ </macrodef>
261
+ </target>
262
+ <target depends="-init-debug-args" name="-init-macrodef-nbjpda">
263
+ <macrodef name="nbjpdastart" uri="http://www.netbeans.org/ns/j2se-project/1">
264
+ <attribute default="${main.class}" name="name"/>
265
+ <attribute default="${debug.classpath}" name="classpath"/>
266
+ <attribute default="" name="stopclassname"/>
267
+ <sequential>
268
+ <nbjpdastart addressproperty="jpda.address" name="@{name}" stopclassname="@{stopclassname}" transport="${debug-transport}">
269
+ <classpath>
270
+ <path path="@{classpath}"/>
271
+ </classpath>
272
+ </nbjpdastart>
273
+ </sequential>
274
+ </macrodef>
275
+ <macrodef name="nbjpdareload" uri="http://www.netbeans.org/ns/j2se-project/1">
276
+ <attribute default="${build.classes.dir}" name="dir"/>
277
+ <sequential>
278
+ <nbjpdareload>
279
+ <fileset dir="@{dir}" includes="${fix.classes}">
280
+ <include name="${fix.includes}*.class"/>
281
+ </fileset>
282
+ </nbjpdareload>
283
+ </sequential>
284
+ </macrodef>
285
+ </target>
286
+ <target name="-init-debug-args">
287
+ <property name="version-output" value="java version &quot;${ant.java.version}"/>
288
+ <condition property="have-jdk-older-than-1.4">
289
+ <or>
290
+ <contains string="${version-output}" substring="java version &quot;1.0"/>
291
+ <contains string="${version-output}" substring="java version &quot;1.1"/>
292
+ <contains string="${version-output}" substring="java version &quot;1.2"/>
293
+ <contains string="${version-output}" substring="java version &quot;1.3"/>
294
+ </or>
295
+ </condition>
296
+ <condition else="-Xdebug" property="debug-args-line" value="-Xdebug -Xnoagent -Djava.compiler=none">
297
+ <istrue value="${have-jdk-older-than-1.4}"/>
298
+ </condition>
299
+ <condition else="dt_socket" property="debug-transport-by-os" value="dt_shmem">
300
+ <os family="windows"/>
301
+ </condition>
302
+ <condition else="${debug-transport-by-os}" property="debug-transport" value="${debug.transport}">
303
+ <isset property="debug.transport"/>
304
+ </condition>
305
+ </target>
306
+ <target depends="-init-debug-args" name="-init-macrodef-debug">
307
+ <macrodef name="debug" uri="http://www.netbeans.org/ns/j2se-project/3">
308
+ <attribute default="${main.class}" name="classname"/>
309
+ <attribute default="${debug.classpath}" name="classpath"/>
310
+ <element name="customize" optional="true"/>
311
+ <sequential>
312
+ <java classname="@{classname}" dir="${work.dir}" fork="true">
313
+ <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
314
+ <jvmarg line="${debug-args-line}"/>
315
+ <jvmarg value="-Xrunjdwp:transport=${debug-transport},address=${jpda.address}"/>
316
+ <jvmarg value="-Dfile.encoding=${runtime.encoding}"/>
317
+ <redirector errorencoding="${runtime.encoding}" inputencoding="${runtime.encoding}" outputencoding="${runtime.encoding}"/>
318
+ <jvmarg line="${run.jvmargs}"/>
319
+ <classpath>
320
+ <path path="@{classpath}"/>
321
+ </classpath>
322
+ <syspropertyset>
323
+ <propertyref prefix="run-sys-prop."/>
324
+ <mapper from="run-sys-prop.*" to="*" type="glob"/>
325
+ </syspropertyset>
326
+ <customize/>
327
+ </java>
328
+ </sequential>
329
+ </macrodef>
330
+ </target>
331
+ <target name="-init-macrodef-java">
332
+ <macrodef name="java" uri="http://www.netbeans.org/ns/j2se-project/1">
333
+ <attribute default="${main.class}" name="classname"/>
334
+ <attribute default="${run.classpath}" name="classpath"/>
335
+ <element name="customize" optional="true"/>
336
+ <sequential>
337
+ <java classname="@{classname}" dir="${work.dir}" fork="true">
338
+ <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
339
+ <jvmarg value="-Dfile.encoding=${runtime.encoding}"/>
340
+ <redirector errorencoding="${runtime.encoding}" inputencoding="${runtime.encoding}" outputencoding="${runtime.encoding}"/>
341
+ <jvmarg line="${run.jvmargs}"/>
342
+ <classpath>
343
+ <path path="@{classpath}"/>
344
+ </classpath>
345
+ <syspropertyset>
346
+ <propertyref prefix="run-sys-prop."/>
347
+ <mapper from="run-sys-prop.*" to="*" type="glob"/>
348
+ </syspropertyset>
349
+ <customize/>
350
+ </java>
351
+ </sequential>
352
+ </macrodef>
353
+ </target>
354
+ <target name="-init-presetdef-jar">
355
+ <presetdef name="jar" uri="http://www.netbeans.org/ns/j2se-project/1">
356
+ <jar compress="${jar.compress}" jarfile="${dist.jar}">
357
+ <j2seproject1:fileset dir="${build.classes.dir}"/>
358
+ </jar>
359
+ </presetdef>
360
+ </target>
361
+ <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" name="init"/>
362
+ <!--
363
+ ===================
364
+ COMPILATION SECTION
365
+ ===================
366
+ -->
367
+ <target name="-deps-jar-init" unless="built-jar.properties">
368
+ <property location="${build.dir}/built-jar.properties" name="built-jar.properties"/>
369
+ <delete file="${built-jar.properties}" quiet="true"/>
370
+ </target>
371
+ <target if="already.built.jar.${basedir}" name="-warn-already-built-jar">
372
+ <echo level="warn" message="Cycle detected: Wagon was already built"/>
373
+ </target>
374
+ <target depends="init,-deps-jar-init" name="deps-jar" unless="no.deps">
375
+ <mkdir dir="${build.dir}"/>
376
+ <touch file="${built-jar.properties}" verbose="false"/>
377
+ <property file="${built-jar.properties}" prefix="already.built.jar."/>
378
+ <antcall target="-warn-already-built-jar"/>
379
+ <propertyfile file="${built-jar.properties}">
380
+ <entry key="${basedir}" value=""/>
381
+ </propertyfile>
382
+ </target>
383
+ <target depends="init,-check-automatic-build,-clean-after-automatic-build" name="-verify-automatic-build"/>
384
+ <target depends="init" name="-check-automatic-build">
385
+ <available file="${build.classes.dir}/.netbeans_automatic_build" property="netbeans.automatic.build"/>
386
+ </target>
387
+ <target depends="init" if="netbeans.automatic.build" name="-clean-after-automatic-build">
388
+ <antcall target="clean"/>
389
+ </target>
390
+ <target depends="init,deps-jar" name="-pre-pre-compile">
391
+ <mkdir dir="${build.classes.dir}"/>
392
+ </target>
393
+ <target name="-pre-compile">
394
+ <!-- Empty placeholder for easier customization. -->
395
+ <!-- You can override this target in the ../build.xml file. -->
396
+ </target>
397
+ <target if="do.depend.true" name="-compile-depend">
398
+ <pathconvert property="build.generated.subdirs">
399
+ <dirset dir="${build.generated.sources.dir}" erroronmissingdir="false">
400
+ <include name="*"/>
401
+ </dirset>
402
+ </pathconvert>
403
+ <j2seproject3:depend srcdir="${src.dir}:${build.generated.subdirs}"/>
404
+ </target>
405
+ <target depends="init,deps-jar,-pre-pre-compile,-pre-compile,-compile-depend" if="have.sources" name="-do-compile">
406
+ <j2seproject3:javac gensrcdir="${build.generated.sources.dir}"/>
407
+ <copy todir="${build.classes.dir}">
408
+ <fileset dir="${src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
409
+ </copy>
410
+ </target>
411
+ <target name="-post-compile">
412
+ <!-- Empty placeholder for easier customization. -->
413
+ <!-- You can override this target in the ../build.xml file. -->
414
+ </target>
415
+ <target depends="init,deps-jar,-verify-automatic-build,-pre-pre-compile,-pre-compile,-do-compile,-post-compile" description="Compile project." name="compile"/>
416
+ <target name="-pre-compile-single">
417
+ <!-- Empty placeholder for easier customization. -->
418
+ <!-- You can override this target in the ../build.xml file. -->
419
+ </target>
420
+ <target depends="init,deps-jar,-pre-pre-compile" name="-do-compile-single">
421
+ <fail unless="javac.includes">Must select some files in the IDE or set javac.includes</fail>
422
+ <j2seproject3:force-recompile/>
423
+ <j2seproject3:javac excludes="" gensrcdir="${build.generated.sources.dir}" includes="${javac.includes}" sourcepath="${src.dir}"/>
424
+ </target>
425
+ <target name="-post-compile-single">
426
+ <!-- Empty placeholder for easier customization. -->
427
+ <!-- You can override this target in the ../build.xml file. -->
428
+ </target>
429
+ <target depends="init,deps-jar,-verify-automatic-build,-pre-pre-compile,-pre-compile-single,-do-compile-single,-post-compile-single" name="compile-single"/>
430
+ <!--
431
+ ====================
432
+ JAR BUILDING SECTION
433
+ ====================
434
+ -->
435
+ <target depends="init" name="-pre-pre-jar">
436
+ <dirname file="${dist.jar}" property="dist.jar.dir"/>
437
+ <mkdir dir="${dist.jar.dir}"/>
438
+ </target>
439
+ <target name="-pre-jar">
440
+ <!-- Empty placeholder for easier customization. -->
441
+ <!-- You can override this target in the ../build.xml file. -->
442
+ </target>
443
+ <target depends="init,compile,-pre-pre-jar,-pre-jar" name="-do-jar-without-manifest" unless="manifest.available-mkdist.available">
444
+ <j2seproject1:jar/>
445
+ </target>
446
+ <target depends="init,compile,-pre-pre-jar,-pre-jar" if="manifest.available" name="-do-jar-with-manifest" unless="manifest.available+main.class-mkdist.available">
447
+ <j2seproject1:jar manifest="${manifest.file}"/>
448
+ </target>
449
+ <target depends="init,compile,-pre-pre-jar,-pre-jar" if="manifest.available+main.class" name="-do-jar-with-mainclass" unless="manifest.available+main.class+mkdist.available">
450
+ <j2seproject1:jar manifest="${manifest.file}">
451
+ <j2seproject1:manifest>
452
+ <j2seproject1:attribute name="Main-Class" value="${main.class}"/>
453
+ </j2seproject1:manifest>
454
+ </j2seproject1:jar>
455
+ <echo>To run this application from the command line without Ant, try:</echo>
456
+ <property location="${build.classes.dir}" name="build.classes.dir.resolved"/>
457
+ <property location="${dist.jar}" name="dist.jar.resolved"/>
458
+ <pathconvert property="run.classpath.with.dist.jar">
459
+ <path path="${run.classpath}"/>
460
+ <map from="${build.classes.dir.resolved}" to="${dist.jar.resolved}"/>
461
+ </pathconvert>
462
+ <echo>java -cp "${run.classpath.with.dist.jar}" ${main.class}</echo>
463
+ </target>
464
+ <target depends="init,compile,-pre-pre-jar,-pre-jar" if="manifest.available+main.class+mkdist.available" name="-do-jar-with-libraries">
465
+ <property location="${build.classes.dir}" name="build.classes.dir.resolved"/>
466
+ <pathconvert property="run.classpath.without.build.classes.dir">
467
+ <path path="${run.classpath}"/>
468
+ <map from="${build.classes.dir.resolved}" to=""/>
469
+ </pathconvert>
470
+ <pathconvert pathsep=" " property="jar.classpath">
471
+ <path path="${run.classpath.without.build.classes.dir}"/>
472
+ <chainedmapper>
473
+ <flattenmapper/>
474
+ <globmapper from="*" to="lib/*"/>
475
+ </chainedmapper>
476
+ </pathconvert>
477
+ <taskdef classname="org.netbeans.modules.java.j2seproject.copylibstask.CopyLibs" classpath="${libs.CopyLibs.classpath}" name="copylibs"/>
478
+ <copylibs compress="${jar.compress}" jarfile="${dist.jar}" manifest="${manifest.file}" runtimeclasspath="${run.classpath.without.build.classes.dir}">
479
+ <fileset dir="${build.classes.dir}"/>
480
+ <manifest>
481
+ <attribute name="Main-Class" value="${main.class}"/>
482
+ <attribute name="Class-Path" value="${jar.classpath}"/>
483
+ </manifest>
484
+ </copylibs>
485
+ <echo>To run this application from the command line without Ant, try:</echo>
486
+ <property location="${dist.jar}" name="dist.jar.resolved"/>
487
+ <echo>java -jar "${dist.jar.resolved}"</echo>
488
+ </target>
489
+ <target depends="init,compile,-pre-pre-jar,-pre-jar" if="manifest.available+mkdist.available" name="-do-jar-with-libraries-without-mainclass" unless="main.class.available">
490
+ <property location="${build.classes.dir}" name="build.classes.dir.resolved"/>
491
+ <pathconvert property="run.classpath.without.build.classes.dir">
492
+ <path path="${run.classpath}"/>
493
+ <map from="${build.classes.dir.resolved}" to=""/>
494
+ </pathconvert>
495
+ <pathconvert pathsep=" " property="jar.classpath">
496
+ <path path="${run.classpath.without.build.classes.dir}"/>
497
+ <chainedmapper>
498
+ <flattenmapper/>
499
+ <globmapper from="*" to="lib/*"/>
500
+ </chainedmapper>
501
+ </pathconvert>
502
+ <taskdef classname="org.netbeans.modules.java.j2seproject.copylibstask.CopyLibs" classpath="${libs.CopyLibs.classpath}" name="copylibs"/>
503
+ <copylibs compress="${jar.compress}" jarfile="${dist.jar}" manifest="${manifest.file}" runtimeclasspath="${run.classpath.without.build.classes.dir}">
504
+ <fileset dir="${build.classes.dir}"/>
505
+ <manifest>
506
+ <attribute name="Class-Path" value="${jar.classpath}"/>
507
+ </manifest>
508
+ </copylibs>
509
+ </target>
510
+ <target depends="init,compile,-pre-pre-jar,-pre-jar" if="do.mkdist" name="-do-jar-with-libraries-without-manifest" unless="manifest.available">
511
+ <property location="${build.classes.dir}" name="build.classes.dir.resolved"/>
512
+ <pathconvert property="run.classpath.without.build.classes.dir">
513
+ <path path="${run.classpath}"/>
514
+ <map from="${build.classes.dir.resolved}" to=""/>
515
+ </pathconvert>
516
+ <pathconvert pathsep=" " property="jar.classpath">
517
+ <path path="${run.classpath.without.build.classes.dir}"/>
518
+ <chainedmapper>
519
+ <flattenmapper/>
520
+ <globmapper from="*" to="lib/*"/>
521
+ </chainedmapper>
522
+ </pathconvert>
523
+ <taskdef classname="org.netbeans.modules.java.j2seproject.copylibstask.CopyLibs" classpath="${libs.CopyLibs.classpath}" name="copylibs"/>
524
+ <copylibs compress="${jar.compress}" jarfile="${dist.jar}" runtimeclasspath="${run.classpath.without.build.classes.dir}">
525
+ <fileset dir="${build.classes.dir}"/>
526
+ <manifest>
527
+ <attribute name="Class-Path" value="${jar.classpath}"/>
528
+ </manifest>
529
+ </copylibs>
530
+ </target>
531
+ <target name="-post-jar">
532
+ <!-- Empty placeholder for easier customization. -->
533
+ <!-- You can override this target in the ../build.xml file. -->
534
+ </target>
535
+ <target depends="init,compile,-pre-jar,-do-jar-with-manifest,-do-jar-without-manifest,-do-jar-with-mainclass,-do-jar-with-libraries,-do-jar-with-libraries-without-mainclass,-do-jar-with-libraries-without-manifest,-post-jar" description="Build JAR." name="jar"/>
536
+ <!--
537
+ =================
538
+ EXECUTION SECTION
539
+ =================
540
+ -->
541
+ <target depends="init,compile" description="Run a main class." name="run">
542
+ <j2seproject1:java>
543
+ <customize>
544
+ <arg line="${application.args}"/>
545
+ </customize>
546
+ </j2seproject1:java>
547
+ </target>
548
+ <target name="-do-not-recompile">
549
+ <property name="javac.includes.binary" value=""/>
550
+ </target>
551
+ <target depends="init,compile-single" name="run-single">
552
+ <fail unless="run.class">Must select one file in the IDE or set run.class</fail>
553
+ <j2seproject1:java classname="${run.class}"/>
554
+ </target>
555
+ <target depends="init,compile-test-single" name="run-test-with-main">
556
+ <fail unless="run.class">Must select one file in the IDE or set run.class</fail>
557
+ <j2seproject1:java classname="${run.class}" classpath="${run.test.classpath}"/>
558
+ </target>
559
+ <!--
560
+ =================
561
+ DEBUGGING SECTION
562
+ =================
563
+ -->
564
+ <target depends="init" if="netbeans.home" name="-debug-start-debugger">
565
+ <j2seproject1:nbjpdastart name="${debug.class}"/>
566
+ </target>
567
+ <target depends="init" if="netbeans.home" name="-debug-start-debugger-main-test">
568
+ <j2seproject1:nbjpdastart classpath="${debug.test.classpath}" name="${debug.class}"/>
569
+ </target>
570
+ <target depends="init,compile" name="-debug-start-debuggee">
571
+ <j2seproject3:debug>
572
+ <customize>
573
+ <arg line="${application.args}"/>
574
+ </customize>
575
+ </j2seproject3:debug>
576
+ </target>
577
+ <target depends="init,compile,-debug-start-debugger,-debug-start-debuggee" description="Debug project in IDE." if="netbeans.home" name="debug"/>
578
+ <target depends="init" if="netbeans.home" name="-debug-start-debugger-stepinto">
579
+ <j2seproject1:nbjpdastart stopclassname="${main.class}"/>
580
+ </target>
581
+ <target depends="init,compile,-debug-start-debugger-stepinto,-debug-start-debuggee" if="netbeans.home" name="debug-stepinto"/>
582
+ <target depends="init,compile-single" if="netbeans.home" name="-debug-start-debuggee-single">
583
+ <fail unless="debug.class">Must select one file in the IDE or set debug.class</fail>
584
+ <j2seproject3:debug classname="${debug.class}"/>
585
+ </target>
586
+ <target depends="init,compile-single,-debug-start-debugger,-debug-start-debuggee-single" if="netbeans.home" name="debug-single"/>
587
+ <target depends="init,compile-test-single" if="netbeans.home" name="-debug-start-debuggee-main-test">
588
+ <fail unless="debug.class">Must select one file in the IDE or set debug.class</fail>
589
+ <j2seproject3:debug classname="${debug.class}" classpath="${debug.test.classpath}"/>
590
+ </target>
591
+ <target depends="init,compile-test-single,-debug-start-debugger-main-test,-debug-start-debuggee-main-test" if="netbeans.home" name="debug-test-with-main"/>
592
+ <target depends="init" name="-pre-debug-fix">
593
+ <fail unless="fix.includes">Must set fix.includes</fail>
594
+ <property name="javac.includes" value="${fix.includes}.java"/>
595
+ </target>
596
+ <target depends="init,-pre-debug-fix,compile-single" if="netbeans.home" name="-do-debug-fix">
597
+ <j2seproject1:nbjpdareload/>
598
+ </target>
599
+ <target depends="init,-pre-debug-fix,-do-debug-fix" if="netbeans.home" name="debug-fix"/>
600
+ <!--
601
+ ===============
602
+ JAVADOC SECTION
603
+ ===============
604
+ -->
605
+ <target depends="init" name="-javadoc-build">
606
+ <mkdir dir="${dist.javadoc.dir}"/>
607
+ <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}">
608
+ <classpath>
609
+ <path path="${javac.classpath}"/>
610
+ </classpath>
611
+ <fileset dir="${src.dir}" excludes="${excludes}" includes="${includes}">
612
+ <filename name="**/*.java"/>
613
+ </fileset>
614
+ <fileset dir="${build.generated.sources.dir}" erroronmissingdir="false">
615
+ <include name="**/*.java"/>
616
+ </fileset>
617
+ </javadoc>
618
+ </target>
619
+ <target depends="init,-javadoc-build" if="netbeans.home" name="-javadoc-browse" unless="no.javadoc.preview">
620
+ <nbbrowse file="${dist.javadoc.dir}/index.html"/>
621
+ </target>
622
+ <target depends="init,-javadoc-build,-javadoc-browse" description="Build Javadoc." name="javadoc"/>
623
+ <!--
624
+ =========================
625
+ JUNIT COMPILATION SECTION
626
+ =========================
627
+ -->
628
+ <target depends="init,compile" if="have.tests" name="-pre-pre-compile-test">
629
+ <mkdir dir="${build.test.classes.dir}"/>
630
+ </target>
631
+ <target name="-pre-compile-test">
632
+ <!-- Empty placeholder for easier customization. -->
633
+ <!-- You can override this target in the ../build.xml file. -->
634
+ </target>
635
+ <target if="do.depend.true" name="-compile-test-depend">
636
+ <j2seproject3:depend classpath="${javac.test.classpath}" destdir="${build.test.classes.dir}" srcdir=""/>
637
+ </target>
638
+ <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test,-compile-test-depend" if="have.tests" name="-do-compile-test">
639
+ <j2seproject3:javac classpath="${javac.test.classpath}" debug="true" destdir="${build.test.classes.dir}" srcdir=""/>
640
+ <copy todir="${build.test.classes.dir}"/>
641
+ </target>
642
+ <target name="-post-compile-test">
643
+ <!-- Empty placeholder for easier customization. -->
644
+ <!-- You can override this target in the ../build.xml file. -->
645
+ </target>
646
+ <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test,-do-compile-test,-post-compile-test" name="compile-test"/>
647
+ <target name="-pre-compile-test-single">
648
+ <!-- Empty placeholder for easier customization. -->
649
+ <!-- You can override this target in the ../build.xml file. -->
650
+ </target>
651
+ <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test-single" if="have.tests" name="-do-compile-test-single">
652
+ <fail unless="javac.includes">Must select some files in the IDE or set javac.includes</fail>
653
+ <j2seproject3:force-recompile destdir="${build.test.classes.dir}"/>
654
+ <j2seproject3:javac classpath="${javac.test.classpath}" debug="true" destdir="${build.test.classes.dir}" excludes="" includes="${javac.includes}" sourcepath="" srcdir=""/>
655
+ <copy todir="${build.test.classes.dir}"/>
656
+ </target>
657
+ <target name="-post-compile-test-single">
658
+ <!-- Empty placeholder for easier customization. -->
659
+ <!-- You can override this target in the ../build.xml file. -->
660
+ </target>
661
+ <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test-single,-do-compile-test-single,-post-compile-test-single" name="compile-test-single"/>
662
+ <!--
663
+ =======================
664
+ JUNIT EXECUTION SECTION
665
+ =======================
666
+ -->
667
+ <target depends="init" if="have.tests" name="-pre-test-run">
668
+ <mkdir dir="${build.test.results.dir}"/>
669
+ </target>
670
+ <target depends="init,compile-test,-pre-test-run" if="have.tests" name="-do-test-run">
671
+ <j2seproject3:junit testincludes="**/*Test.java"/>
672
+ </target>
673
+ <target depends="init,compile-test,-pre-test-run,-do-test-run" if="have.tests" name="-post-test-run">
674
+ <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail>
675
+ </target>
676
+ <target depends="init" if="have.tests" name="test-report"/>
677
+ <target depends="init" if="netbeans.home+have.tests" name="-test-browse"/>
678
+ <target depends="init,compile-test,-pre-test-run,-do-test-run,test-report,-post-test-run,-test-browse" description="Run unit tests." name="test"/>
679
+ <target depends="init" if="have.tests" name="-pre-test-run-single">
680
+ <mkdir dir="${build.test.results.dir}"/>
681
+ </target>
682
+ <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-do-test-run-single">
683
+ <fail unless="test.includes">Must select some files in the IDE or set test.includes</fail>
684
+ <j2seproject3:junit excludes="" includes="${test.includes}"/>
685
+ </target>
686
+ <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single" if="have.tests" name="-post-test-run-single">
687
+ <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail>
688
+ </target>
689
+ <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"/>
690
+ <!--
691
+ =======================
692
+ JUNIT DEBUGGING SECTION
693
+ =======================
694
+ -->
695
+ <target depends="init,compile-test" if="have.tests" name="-debug-start-debuggee-test">
696
+ <fail unless="test.class">Must select one file in the IDE or set test.class</fail>
697
+ <property location="${build.test.results.dir}/TEST-${test.class}.xml" name="test.report.file"/>
698
+ <delete file="${test.report.file}"/>
699
+ <mkdir dir="${build.test.results.dir}"/>
700
+ <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}">
701
+ <customize>
702
+ <syspropertyset>
703
+ <propertyref prefix="test-sys-prop."/>
704
+ <mapper from="test-sys-prop.*" to="*" type="glob"/>
705
+ </syspropertyset>
706
+ <arg value="${test.class}"/>
707
+ <arg value="showoutput=true"/>
708
+ <arg value="formatter=org.apache.tools.ant.taskdefs.optional.junit.BriefJUnitResultFormatter"/>
709
+ <arg value="formatter=org.apache.tools.ant.taskdefs.optional.junit.XMLJUnitResultFormatter,${test.report.file}"/>
710
+ </customize>
711
+ </j2seproject3:debug>
712
+ </target>
713
+ <target depends="init,compile-test" if="netbeans.home+have.tests" name="-debug-start-debugger-test">
714
+ <j2seproject1:nbjpdastart classpath="${debug.test.classpath}" name="${test.class}"/>
715
+ </target>
716
+ <target depends="init,compile-test-single,-debug-start-debugger-test,-debug-start-debuggee-test" name="debug-test"/>
717
+ <target depends="init,-pre-debug-fix,compile-test-single" if="netbeans.home" name="-do-debug-fix-test">
718
+ <j2seproject1:nbjpdareload dir="${build.test.classes.dir}"/>
719
+ </target>
720
+ <target depends="init,-pre-debug-fix,-do-debug-fix-test" if="netbeans.home" name="debug-fix-test"/>
721
+ <!--
722
+ =========================
723
+ APPLET EXECUTION SECTION
724
+ =========================
725
+ -->
726
+ <target depends="init,compile-single" name="run-applet">
727
+ <fail unless="applet.url">Must select one file in the IDE or set applet.url</fail>
728
+ <j2seproject1:java classname="sun.applet.AppletViewer">
729
+ <customize>
730
+ <arg value="${applet.url}"/>
731
+ </customize>
732
+ </j2seproject1:java>
733
+ </target>
734
+ <!--
735
+ =========================
736
+ APPLET DEBUGGING SECTION
737
+ =========================
738
+ -->
739
+ <target depends="init,compile-single" if="netbeans.home" name="-debug-start-debuggee-applet">
740
+ <fail unless="applet.url">Must select one file in the IDE or set applet.url</fail>
741
+ <j2seproject3:debug classname="sun.applet.AppletViewer">
742
+ <customize>
743
+ <arg value="${applet.url}"/>
744
+ </customize>
745
+ </j2seproject3:debug>
746
+ </target>
747
+ <target depends="init,compile-single,-debug-start-debugger,-debug-start-debuggee-applet" if="netbeans.home" name="debug-applet"/>
748
+ <!--
749
+ ===============
750
+ CLEANUP SECTION
751
+ ===============
752
+ -->
753
+ <target name="-deps-clean-init" unless="built-clean.properties">
754
+ <property location="${build.dir}/built-clean.properties" name="built-clean.properties"/>
755
+ <delete file="${built-clean.properties}" quiet="true"/>
756
+ </target>
757
+ <target if="already.built.clean.${basedir}" name="-warn-already-built-clean">
758
+ <echo level="warn" message="Cycle detected: Wagon was already built"/>
759
+ </target>
760
+ <target depends="init,-deps-clean-init" name="deps-clean" unless="no.deps">
761
+ <mkdir dir="${build.dir}"/>
762
+ <touch file="${built-clean.properties}" verbose="false"/>
763
+ <property file="${built-clean.properties}" prefix="already.built.clean."/>
764
+ <antcall target="-warn-already-built-clean"/>
765
+ <propertyfile file="${built-clean.properties}">
766
+ <entry key="${basedir}" value=""/>
767
+ </propertyfile>
768
+ </target>
769
+ <target depends="init" name="-do-clean">
770
+ <delete dir="${build.dir}"/>
771
+ <delete dir="${dist.dir}" followsymlinks="false" includeemptydirs="true"/>
772
+ </target>
773
+ <target name="-post-clean">
774
+ <!-- Empty placeholder for easier customization. -->
775
+ <!-- You can override this target in the ../build.xml file. -->
776
+ </target>
777
+ <target depends="init,deps-clean,-do-clean,-post-clean" description="Clean build products." name="clean"/>
778
+ <target name="-check-call-dep">
779
+ <property file="${call.built.properties}" prefix="already.built."/>
780
+ <condition property="should.call.dep">
781
+ <not>
782
+ <isset property="already.built.${call.subproject}"/>
783
+ </not>
784
+ </condition>
785
+ </target>
786
+ <target depends="-check-call-dep" if="should.call.dep" name="-maybe-call-dep">
787
+ <ant antfile="${call.script}" inheritall="false" target="${call.target}">
788
+ <propertyset>
789
+ <propertyref prefix="transfer."/>
790
+ <mapper from="transfer.*" to="*" type="glob"/>
791
+ </propertyset>
792
+ </ant>
793
+ </target>
794
+ </project>