1.1 --- a/samples/componentinjection/anagram-modular/build.xml Sat Jun 14 10:08:14 2008 +0200
1.2 +++ b/samples/componentinjection/anagram-modular/build.xml Sat Jun 14 10:08:18 2008 +0200
1.3 @@ -43,6 +43,10 @@
1.4 <param name="version" value="app-lookup"/>
1.5 <param name="cp" value="build/api/classes:build/word-static/classes:build/scrambler-simple/classes:build/gui/classes"/>
1.6 </antcall>
1.7 + <antcall target="-build-one">
1.8 + <param name="version" value="app-serviceloader"/>
1.9 + <param name="cp" value="build/api/classes:build/word-static/classes:build/scrambler-simple/classes:build/gui/classes"/>
1.10 + </antcall>
1.11
1.12 </target>
1.13
1.14 @@ -83,6 +87,11 @@
1.15 <param name="cp" value="build/api/classes:build/word-static/classes:build/scrambler-simple/classes:build/gui/classes:../../libs/dist/org-openide-util.jar"/>
1.16 <param name="main" value="org.apidesign.anagram.app.lookup.Main"/>
1.17 </antcall>
1.18 + <antcall target="-run-one">
1.19 + <param name="version" value="app-serviceloader"/>
1.20 + <param name="cp" value="build/api/classes:build/word-static/classes:build/scrambler-simple/classes:build/gui/classes"/>
1.21 + <param name="main" value="org.apidesign.anagram.app.serviceloader.Main"/>
1.22 + </antcall>
1.23 </target>
1.24
1.25 <!-- support methods -->
1.26 @@ -90,11 +99,13 @@
1.27 <target name="-libraries">
1.28 <ant dir="../../libs/"/>
1.29
1.30 - <property name="junit.jar" location="../libs/dist/junit-4.4.jar"/>
1.31 + <property name="junit.jar" location="../../libs/dist/junit-4.4.jar"/>
1.32 </target>
1.33
1.34 <target name="-run-one">
1.35 - <java classpath="${cp}:build/${version}/classes" classname="${main}"/>
1.36 + <java classpath="${cp}:build/${version}/classes" classname="${main}">
1.37 + <jvmarg value="-Danagram.version=${version}"/>
1.38 + </java>
1.39 </target>
1.40
1.41 <target name="-build-one">
2.1 --- a/samples/componentinjection/anagram-modular/nbproject/project.xml Sat Jun 14 10:08:14 2008 +0200
2.2 +++ b/samples/componentinjection/anagram-modular/nbproject/project.xml Sat Jun 14 10:08:18 2008 +0200
2.3 @@ -10,6 +10,11 @@
2.4 <properties/>
2.5 <folders>
2.6 <source-folder>
2.7 + <label>Anagram Modular</label>
2.8 + <location>.</location>
2.9 + <encoding>UTF-8</encoding>
2.10 + </source-folder>
2.11 + <source-folder>
2.12 <label>src-api</label>
2.13 <type>java</type>
2.14 <location>src-api</location>
2.15 @@ -70,8 +75,15 @@
2.16 <encoding>UTF-8</encoding>
2.17 </source-folder>
2.18 <source-folder>
2.19 - <label>Anagram Modular</label>
2.20 - <location>.</location>
2.21 + <label>src-app-serviceloader</label>
2.22 + <type>java</type>
2.23 + <location>src-app-serviceloader</location>
2.24 + <encoding>UTF-8</encoding>
2.25 + </source-folder>
2.26 + <source-folder>
2.27 + <label>src-test</label>
2.28 + <type>java</type>
2.29 + <location>src-test</location>
2.30 <encoding>UTF-8</encoding>
2.31 </source-folder>
2.32 </folders>
2.33 @@ -106,6 +118,56 @@
2.34 <location>build/api/classes</location>
2.35 <build-target>build</build-target>
2.36 </export>
2.37 + <export>
2.38 + <type>folder</type>
2.39 + <location>build/word-static/classes</location>
2.40 + <build-target>build</build-target>
2.41 + </export>
2.42 + <export>
2.43 + <type>folder</type>
2.44 + <location>build/scrambler-simple/classes</location>
2.45 + <build-target>build</build-target>
2.46 + </export>
2.47 + <export>
2.48 + <type>folder</type>
2.49 + <location>build/gui/classes</location>
2.50 + <build-target>build</build-target>
2.51 + </export>
2.52 + <export>
2.53 + <type>folder</type>
2.54 + <location>build/app-register/classes</location>
2.55 + <build-target>build</build-target>
2.56 + </export>
2.57 + <export>
2.58 + <type>folder</type>
2.59 + <location>build/app-register/classes</location>
2.60 + <build-target>build</build-target>
2.61 + </export>
2.62 + <export>
2.63 + <type>folder</type>
2.64 + <location>build/app-property/classes</location>
2.65 + <build-target>build</build-target>
2.66 + </export>
2.67 + <export>
2.68 + <type>folder</type>
2.69 + <location>build/app-spring/classes</location>
2.70 + <build-target>build</build-target>
2.71 + </export>
2.72 + <export>
2.73 + <type>folder</type>
2.74 + <location>build/app-spring-scan/classes</location>
2.75 + <build-target>build</build-target>
2.76 + </export>
2.77 + <export>
2.78 + <type>folder</type>
2.79 + <location>build/app-lookup/classes</location>
2.80 + <build-target>build</build-target>
2.81 + </export>
2.82 + <export>
2.83 + <type>folder</type>
2.84 + <location>build/app-serviceloader/classes</location>
2.85 + <build-target>build</build-target>
2.86 + </export>
2.87 <view>
2.88 <items>
2.89 <source-folder style="packages">
2.90 @@ -148,6 +210,14 @@
2.91 <label>src-app-lookup</label>
2.92 <location>src-app-lookup</location>
2.93 </source-folder>
2.94 + <source-folder style="packages">
2.95 + <label>src-app-serviceloader</label>
2.96 + <location>src-app-serviceloader</location>
2.97 + </source-folder>
2.98 + <source-folder style="packages">
2.99 + <label>src-test</label>
2.100 + <location>src-test</location>
2.101 + </source-folder>
2.102 <source-file>
2.103 <location>build.xml</location>
2.104 </source-file>
2.105 @@ -223,6 +293,12 @@
2.106 <source-level>1.5</source-level>
2.107 </compilation-unit>
2.108 <compilation-unit>
2.109 + <package-root>src-app-serviceloader</package-root>
2.110 + <classpath mode="compile">src-api:src-scrambler-simple:src-word-static:src-gui</classpath>
2.111 + <built-to>build/app-serviceloader/classes</built-to>
2.112 + <source-level>1.5</source-level>
2.113 + </compilation-unit>
2.114 + <compilation-unit>
2.115 <package-root>src-test</package-root>
2.116 <classpath mode="compile">src-new-api:../libs/dist/junit-4.4.jar</classpath>
2.117 <source-level>1.5</source-level>
3.1 --- a/samples/componentinjection/anagram-modular/src-app-lookup/org/apidesign/anagram/app/lookup/AnagramsWithLookup.java Sat Jun 14 10:08:14 2008 +0200
3.2 +++ b/samples/componentinjection/anagram-modular/src-app-lookup/org/apidesign/anagram/app/lookup/AnagramsWithLookup.java Sat Jun 14 10:08:18 2008 +0200
3.3 @@ -5,6 +5,7 @@
3.4 import org.apidesign.anagram.gui.Anagrams;
3.5 import org.openide.util.Lookup;
3.6
3.7 +// BEGIN: anagram.lookup.Anagrams
3.8 class AnagramsWithLookup extends Anagrams {
3.9
3.10 public AnagramsWithLookup() {
3.11 @@ -21,3 +22,4 @@
3.12 }
3.13
3.14 }
3.15 +// END: anagram.lookup.Anagrams
4.1 --- a/samples/componentinjection/anagram-modular/src-app-spring-scan/org/apidesign/anagram/app/springscan/AnagramsAnnotated.java Sat Jun 14 10:08:14 2008 +0200
4.2 +++ b/samples/componentinjection/anagram-modular/src-app-spring-scan/org/apidesign/anagram/app/springscan/AnagramsAnnotated.java Sat Jun 14 10:08:18 2008 +0200
4.3 @@ -12,11 +12,12 @@
4.4 * use the annotation directly there.
4.5 */
4.6
4.7 +// BEGIN: anagram.spring.autowire.Anagrams
4.8 @Service("ui")
4.9 public class AnagramsAnnotated extends AnagramsWithConstructor {
4.10 @Autowired
4.11 public AnagramsAnnotated(WordLibrary library, Scrambler scrambler) {
4.12 super(library, scrambler);
4.13 }
4.14 -
4.15 }
4.16 +// END: anagram.spring.autowire.Anagrams
5.1 --- a/samples/componentinjection/anagram-modular/src-app-spring-scan/org/apidesign/anagram/app/springscan/SimpleScramblerAnnotated.java Sat Jun 14 10:08:14 2008 +0200
5.2 +++ b/samples/componentinjection/anagram-modular/src-app-spring-scan/org/apidesign/anagram/app/springscan/SimpleScramblerAnnotated.java Sat Jun 14 10:08:18 2008 +0200
5.3 @@ -9,7 +9,10 @@
5.4 * use the annotation directly there.
5.5 */
5.6
5.7 -
5.8 +// BEGIN: anagram.spring.autowire.Scrambler
5.9 @Service
5.10 public class SimpleScramblerAnnotated extends SimpleScrambler {
5.11 + public SimpleScramblerAnnotated() {
5.12 + }
5.13 }
5.14 +// END: anagram.spring.autowire.Scrambler
6.1 --- a/samples/componentinjection/anagram-modular/src-app-spring-scan/org/apidesign/anagram/app/springscan/StaticWordLibraryAnnotated.java Sat Jun 14 10:08:14 2008 +0200
6.2 +++ b/samples/componentinjection/anagram-modular/src-app-spring-scan/org/apidesign/anagram/app/springscan/StaticWordLibraryAnnotated.java Sat Jun 14 10:08:18 2008 +0200
6.3 @@ -10,6 +10,10 @@
6.4 */
6.5
6.6
6.7 +// BEGIN: anagram.spring.autowire.WordLibrary
6.8 @Service
6.9 public class StaticWordLibraryAnnotated extends StaticWordLibrary {
6.10 + public StaticWordLibraryAnnotated() {
6.11 + }
6.12 }
6.13 +// END: anagram.spring.autowire.WordLibrary
7.1 --- a/samples/componentinjection/anagram-modular/src-app-spring-scan/org/apidesign/anagram/app/springscan/conf.xml Sat Jun 14 10:08:14 2008 +0200
7.2 +++ b/samples/componentinjection/anagram-modular/src-app-spring-scan/org/apidesign/anagram/app/springscan/conf.xml Sat Jun 14 10:08:18 2008 +0200
7.3 @@ -1,12 +1,14 @@
7.4 <?xml version="1.0" encoding="UTF-8"?>
7.5 -<beans xmlns="http://www.springframework.org/schema/beans"
7.6 - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
7.7 - xmlns:context="http://www.springframework.org/schema/context"
7.8 - xsi:schemaLocation="http://www.springframework.org/schema/beans
7.9 - http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
7.10 - http://www.springframework.org/schema/context
7.11 - http://www.springframework.org/schema/context/spring-context-2.5.xsd">
7.12 -
7.13 + <!-- BEGIN: anagram.spring.autowire.xml -->
7.14 +<beans
7.15 + xmlns="http://www.springframework.org/schema/beans"
7.16 + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
7.17 + xmlns:context="http://www.springframework.org/schema/context"
7.18 + xsi:schemaLocation="http://www.springframework.org/schema/beans
7.19 + http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
7.20 + http://www.springframework.org/schema/context
7.21 + http://www.springframework.org/schema/context/spring-context-2.5.xsd"
7.22 +>
7.23 <context:component-scan base-package="org.apidesign.anagram.app"/>
7.24 -
7.25 -</beans>
7.26 \ No newline at end of file
7.27 +</beans>
7.28 + <!-- END: anagram.spring.autowire.xml -->
8.1 --- a/samples/componentinjection/anagram-modular/src-app-spring/org/apidesign/anagram/app/spring/Main.java Sat Jun 14 10:08:14 2008 +0200
8.2 +++ b/samples/componentinjection/anagram-modular/src-app-spring/org/apidesign/anagram/app/spring/Main.java Sat Jun 14 10:08:18 2008 +0200
8.3 @@ -6,7 +6,8 @@
8.4
8.5 public final class Main {
8.6 private Main() { }
8.7 -
8.8 +
8.9 + // BEGIN: anagram.spring.main
8.10 public static void main(String[] args) throws Exception {
8.11 ApplicationContext context = new ClassPathXmlApplicationContext(
8.12 "org/apidesign/anagram/app/spring/conf.xml"
8.13 @@ -14,4 +15,5 @@
8.14 UI ui = (UI)context.getBean("ui", UI.class);
8.15 ui.display();
8.16 }
8.17 + // END: anagram.spring.main
8.18 }
9.1 --- a/samples/componentinjection/anagram-modular/src-app-spring/org/apidesign/anagram/app/spring/conf.xml Sat Jun 14 10:08:14 2008 +0200
9.2 +++ b/samples/componentinjection/anagram-modular/src-app-spring/org/apidesign/anagram/app/spring/conf.xml Sat Jun 14 10:08:18 2008 +0200
9.3 @@ -1,10 +1,24 @@
9.4 <?xml version="1.0" encoding="UTF-8"?>
9.5 +<!-- BEGIN: anagram.spring.xml -->
9.6 <beans xmlns="http://www.springframework.org/schema/beans"
9.7 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
9.8 xsi:schemaLocation="http://www.springframework.org/schema/beans
9.9 - http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
9.10 + http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"
9.11 +>
9.12
9.13 - <bean id="wordLibrary" class="org.apidesign.anagram.wordstatic.StaticWordLibrary"/>
9.14 - <bean id="scrambler" class="org.apidesign.anagram.scramblersimple.SimpleScrambler"/>
9.15 - <bean id="ui" class="org.apidesign.anagram.gui.AnagramsWithConstructor" autowire="autodetect"/>
9.16 -</beans>
9.17 \ No newline at end of file
9.18 + <bean
9.19 + id="wordLibrary"
9.20 + class="org.apidesign.anagram.wordstatic.StaticWordLibrary"
9.21 + />
9.22 + <bean
9.23 + id="scrambler"
9.24 + class="org.apidesign.anagram.scramblersimple.SimpleScrambler"
9.25 + />
9.26 + <bean
9.27 + id="ui"
9.28 + class="org.apidesign.anagram.gui.AnagramsWithConstructor"
9.29 + autowire="autodetect"
9.30 + />
9.31 +</beans>
9.32 +<!-- END: anagram.spring.xml -->
9.33 +
10.1 --- a/samples/componentinjection/anagram-modular/src-gui/org/apidesign/anagram/gui/Anagrams.java Sat Jun 14 10:08:14 2008 +0200
10.2 +++ b/samples/componentinjection/anagram-modular/src-gui/org/apidesign/anagram/gui/Anagrams.java Sat Jun 14 10:08:18 2008 +0200
10.3 @@ -14,6 +14,14 @@
10.4 public Anagrams() {
10.5 initComponents();
10.6 getRootPane().setDefaultButton(guessButton);
10.7 +
10.8 + String version = System.getProperty("anagram.version");
10.9 + if (version != null) {
10.10 + if (version.startsWith("app-")) {
10.11 + version = version.substring(4);
10.12 + }
10.13 + setTitle("Anagrams - " + version + " version");
10.14 + }
10.15 }
10.16
10.17 protected abstract WordLibrary getWordLibrary();