Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorpelder2008-04-04 11:46:26 -0400
committerpelder2008-04-04 11:46:26 -0400
commit2518144ff51c4c52632b13b982787bf5f0ffd2ec (patch)
treeb1aca66c8abd524ebef49a55b353f7f21de62ffa
parent9d67d93fdb4ff179a560b13caa8b8ca06e27c4a7 (diff)
downloadorg.eclipse.jet-2518144ff51c4c52632b13b982787bf5f0ffd2ec.tar.gz
org.eclipse.jet-2518144ff51c4c52632b13b982787bf5f0ffd2ec.tar.xz
org.eclipse.jet-2518144ff51c4c52632b13b982787bf5f0ffd2ec.zip
[225768] Add releng examples created at EclipseCon to JET Examples
-rw-r--r--examples/org.eclipse.jet.ec2008.pbpmodel/.classpath7
-rw-r--r--examples/org.eclipse.jet.ec2008.pbpmodel/.project28
-rw-r--r--examples/org.eclipse.jet.ec2008.pbpmodel/META-INF/MANIFEST.MF17
-rw-r--r--examples/org.eclipse.jet.ec2008.pbpmodel/build.properties14
-rw-r--r--examples/org.eclipse.jet.ec2008.pbpmodel/model/pushbuttonbuild.ecore165
-rw-r--r--examples/org.eclipse.jet.ec2008.pbpmodel/model/pushbuttonbuild.genmodel36
-rw-r--r--examples/org.eclipse.jet.ec2008.pbpmodel/plugin.properties20
-rw-r--r--examples/org.eclipse.jet.ec2008.pbpmodel/plugin.xml26
-rw-r--r--examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/BuildType.java362
-rw-r--r--examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/DocumentRoot.java144
-rw-r--r--examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/ExtraZIPType.java56
-rw-r--r--examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/JreType.java213
-rw-r--r--examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/PushbuttonbuildFactory.java65
-rw-r--r--examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/PushbuttonbuildPackage.java689
-rw-r--r--examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/impl/BuildTypeImpl.java708
-rw-r--r--examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/impl/DocumentRootImpl.java328
-rw-r--r--examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/impl/ExtraZIPTypeImpl.java168
-rw-r--r--examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/impl/PushbuttonbuildFactoryImpl.java195
-rw-r--r--examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/impl/PushbuttonbuildPackageImpl.java599
-rw-r--r--examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/util/PushbuttonbuildAdapterFactory.java161
-rw-r--r--examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/util/PushbuttonbuildResourceFactoryImpl.java57
-rw-r--r--examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/util/PushbuttonbuildResourceImpl.java33
-rw-r--r--examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/util/PushbuttonbuildSwitch.java173
-rw-r--r--examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/util/PushbuttonbuildXMLProcessor.java55
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/.classpath7
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/.project28
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/.settings/org.eclipse.jdt.core.prefs7
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/META-INF/MANIFEST.MF13
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/build.properties5
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/icons/sample.gifbin0 -> 983 bytes
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/plugin.xml19
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/src/org/eclipse/jet/ec2008/pushbuttonbuild/wizard/Activator.java51
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/src/org/eclipse/jet/ec2008/pushbuttonbuild/wizard/NewRelengProjectPage.java366
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/src/org/eclipse/jet/ec2008/pushbuttonbuild/wizard/NewRelengProjectPageCode.java99
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/src/org/eclipse/jet/ec2008/pushbuttonbuild/wizard/NewRelengProjectWizard.java84
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/wizardPages/NewRelengProjectPage.xml75
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/wizardPages/dump.xml100
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/wizardPages/flattened.xml177
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/.settings/org.eclipse.jet.prefs4
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/META-INF/MANIFEST.MF9
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/dump.xml4
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/forNick.xml4
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/.placeholder0
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet__SHORTNAME_map.java35
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet__SHORTNAME_maptemplate.java37
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_buildAllxml.java522
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_buildcfg.java20
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_buildproperties.java131
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_buildproperties_0.java131
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_buildproperties_1.java131
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_buildproperties_2.java131
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_buildproperties_3.java131
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_buildproperties_4.java133
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_buildxml.java71
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_chkpii_ignore_listtxt.java25
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_customTargetsxml.java492
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_customTargetsxml_0.java550
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_customTargetsxml_1.java492
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_customTargetsxml_2.java597
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_customTargetsxml_3.java494
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_customTargetsxml_4.java492
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_customTestxml.java98
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_cvsignore.java23
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_dump.java45
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_main.java848
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_project.java61
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_promoteToEclipse_SHORTNAME_properties.java442
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_readmehtml.java416
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_relengbuildgtksh.java462
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_repoInfoproperties.java35
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_testManifestxml.java883
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_testManifestxmltemplate.java823
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_testingproperties.java173
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_testxml.java298
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_transformation.java112
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/jetBuild.xml11
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/plugin.xml21
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/pushbuttonbuild.xsd63
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/sample.xml3
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/project/build.xml.jet30
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/project/buildAll.xml.jet244
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/project/builder/doc/build.properties.jet36
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/project/builder/doc/customTargets.xml.jet214
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/project/builder/examples/build.properties.jet35
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/project/builder/examples/customTargets.xml.jet214
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/project/builder/runtime/build.properties.jet35
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/project/builder/runtime/customTargets.xml.jet214
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/project/builder/tests/build.properties.jet35
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/project/builder/tests/configs/local/chkpii_ignore_list.txt.jet5
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/project/builder/tests/configs/local/customTest.xml.jet44
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/project/builder/tests/configs/local/relengbuildgtk.sh.jet238
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/project/builder/tests/configs/local/testing.properties.jet49
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/project/builder/tests/customTargets.xml.jet236
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/project/builder/tests/scripts/readme.html.jet165
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/project/builder/tests/scripts/test.xml.jet90
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/project/cvsignore.jet4
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/project/project.jet14
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/project/promoteToEclipse._SHORTNAME_.properties.jet171
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/project/repoInfo.properties.jet10
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/project/templateFiles/_SHORTNAME_.map.template.jet13
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/project/templateFiles/testManifest.xml.template.jet53
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/project/testManifest.xml.jet62
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/.settings/org.eclipse.jet.prefs4
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/jet2java/org/eclipse/jet/ec2008/swtgen/compiled/_jet_codeBehindjava.java345
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/jet2java/org/eclipse/jet/ec2008/swtgen/compiled/_jet_controlDataxml.java98
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/jet2java/org/eclipse/jet/ec2008/swtgen/compiled/_jet_dump.java45
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/jet2java/org/eclipse/jet/ec2008/swtgen/compiled/_jet_eventDataxml.java102
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/jet2java/org/eclipse/jet/ec2008/swtgen/compiled/_jet_flattenControl.java230
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/jet2java/org/eclipse/jet/ec2008/swtgen/compiled/_jet_flattenxml.java126
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/jet2java/org/eclipse/jet/ec2008/swtgen/compiled/_jet_initControl.java117
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/jet2java/org/eclipse/jet/ec2008/swtgen/compiled/_jet_initControl_0.java117
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/jet2java/org/eclipse/jet/ec2008/swtgen/compiled/_jet_initControl_1.java86
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/jet2java/org/eclipse/jet/ec2008/swtgen/compiled/_jet_initControl_2.java119
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/jet2java/org/eclipse/jet/ec2008/swtgen/compiled/_jet_initControl_3.java255
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/jet2java/org/eclipse/jet/ec2008/swtgen/compiled/_jet_initControl_4.java209
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/jet2java/org/eclipse/jet/ec2008/swtgen/compiled/_jet_initControl_5.java163
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/jet2java/org/eclipse/jet/ec2008/swtgen/compiled/_jet_initControl_6.java257
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/jet2java/org/eclipse/jet/ec2008/swtgen/compiled/_jet_initControl_7.java209
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/jet2java/org/eclipse/jet/ec2008/swtgen/compiled/_jet_initControl_8.java131
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/jet2java/org/eclipse/jet/ec2008/swtgen/compiled/_jet_main.java637
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/jet2java/org/eclipse/jet/ec2008/swtgen/compiled/_jet_setGridData.java427
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/jet2java/org/eclipse/jet/ec2008/swtgen/compiled/_jet_setGridLayout.java347
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/jet2java/org/eclipse/jet/ec2008/swtgen/compiled/_jet_swtStyles.java58
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/jet2java/org/eclipse/jet/ec2008/swtgen/compiled/_jet_swtStyles_0.java76
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/jet2java/org/eclipse/jet/ec2008/swtgen/compiled/_jet_swtStyles_1.java228
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/jet2java/org/eclipse/jet/ec2008/swtgen/compiled/_jet_swtStyles_2.java58
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/jet2java/org/eclipse/jet/ec2008/swtgen/compiled/_jet_swtStyles_3.java45
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/jet2java/org/eclipse/jet/ec2008/swtgen/compiled/_jet_swtStyles_4.java23
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/jet2java/org/eclipse/jet/ec2008/swtgen/compiled/_jet_swtStyles_5.java130
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/jet2java/org/eclipse/jet/ec2008/swtgen/compiled/_jet_swtStyles_6.java138
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/jet2java/org/eclipse/jet/ec2008/swtgen/compiled/_jet_swtStyles_7.java76
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/jet2java/org/eclipse/jet/ec2008/swtgen/compiled/_jet_swtStyles_8.java174
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/jet2java/org/eclipse/jet/ec2008/swtgen/compiled/_jet_transformation.java111
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/jet2java/org/eclipse/jet/ec2008/swtgen/compiled/_jet_wizardPagejava.java945
134 files changed, 23096 insertions, 4 deletions
diff --git a/examples/org.eclipse.jet.ec2008.pbpmodel/.classpath b/examples/org.eclipse.jet.ec2008.pbpmodel/.classpath
new file mode 100644
index 0000000..304e861
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pbpmodel/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/examples/org.eclipse.jet.ec2008.pbpmodel/.project b/examples/org.eclipse.jet.ec2008.pbpmodel/.project
new file mode 100644
index 0000000..35396cc
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pbpmodel/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.jet.ec2008.pbpmodel</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ </natures>
+</projectDescription>
diff --git a/examples/org.eclipse.jet.ec2008.pbpmodel/META-INF/MANIFEST.MF b/examples/org.eclipse.jet.ec2008.pbpmodel/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..4f612e9
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pbpmodel/META-INF/MANIFEST.MF
@@ -0,0 +1,17 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %pluginName
+Bundle-SymbolicName: org.eclipse.jet.ec2008.pbpmodel; singleton:=true
+Bundle-Version: 1.0.0
+Bundle-ClassPath: .
+Bundle-Vendor: %providerName
+Bundle-Localization: plugin
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Export-Package: org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild,
+ org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl,
+ org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.util
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.emf.ecore;visibility:=reexport,
+ org.eclipse.emf.ecore.xmi;visibility:=reexport
+Eclipse-LazyStart: true
+Bundle-ActivationPolicy: lazy
diff --git a/examples/org.eclipse.jet.ec2008.pbpmodel/build.properties b/examples/org.eclipse.jet.ec2008.pbpmodel/build.properties
new file mode 100644
index 0000000..07e636e
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pbpmodel/build.properties
@@ -0,0 +1,14 @@
+
+# <copyright>
+# </copyright>
+#
+# $Id: build.properties,v 1.1 2008/04/04 15:44:22 pelder Exp $
+
+bin.includes = .,\
+ model/,\
+ META-INF/,\
+ plugin.xml,\
+ plugin.properties
+jars.compile.order = .
+source.. = src/
+output.. = bin/
diff --git a/examples/org.eclipse.jet.ec2008.pbpmodel/model/pushbuttonbuild.ecore b/examples/org.eclipse.jet.ec2008.pbpmodel/model/pushbuttonbuild.ecore
new file mode 100644
index 0000000..399283f
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pbpmodel/model/pushbuttonbuild.ecore
@@ -0,0 +1,165 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ecore:EPackage xmi:version="2.0"
+ xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="pushbuttonbuild"
+ nsURI="http://www.eclipse.org/modeling/pushbuttonbuild/1.0.0" nsPrefix="pushbuttonbuld">
+ <eClassifiers xsi:type="ecore:EClass" name="BuildType">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="name" value="build_._type"/>
+ <details key="kind" value="elementOnly"/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="extraZIP" upperBound="-1"
+ eType="#//ExtraZIPType" containment="true" resolveProxies="false">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="element"/>
+ <details key="name" value="extraZIP"/>
+ <details key="namespace" value="##targetNamespace"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="isIncubation" lowerBound="1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean"
+ unsettable="true">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="attribute"/>
+ <details key="name" value="isIncubation"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="jre" lowerBound="1" eType="#//JreType"
+ defaultValueLiteral="J2SE-1.4" unsettable="true">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="attribute"/>
+ <details key="name" value="jre"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="newsgroupPublisherEmail"
+ lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="&#xD;&#xA; &#x9;&#x9;&#x9;&#x9;&#x9;E-mail address of user who will publish build&#xD;&#xA; &#x9;&#x9;&#x9;&#x9;&#x9;annoucements.&#xD;&#xA; &#x9;&#x9;&#x9;&#x9;"/>
+ </eAnnotations>
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="attribute"/>
+ <details key="name" value="newsgroupPublisherEmail"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="parentProjectName" lowerBound="1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="Ex: m2t, emf, emft"/>
+ </eAnnotations>
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="attribute"/>
+ <details key="name" value="parentProjectName"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="projectNamespace" lowerBound="1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="&#xD;&#xA; &#x9;&#x9;&#x9;&#x9;&#x9;Typically shortname, but sometimes includes a&#xD;&#xA; &#x9;&#x9;&#x9;&#x9;&#x9;prefix on the short name. e.g. emf.validation,&#xD;&#xA; &#x9;&#x9;&#x9;&#x9;&#x9;where the short name might be validation.&#xD;&#xA; &#x9;&#x9;&#x9;&#x9;"/>
+ </eAnnotations>
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="attribute"/>
+ <details key="name" value="projectNamespace"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="shortName" lowerBound="1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="jet"/>
+ </eAnnotations>
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="attribute"/>
+ <details key="name" value="shortName"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="testsAreJarred" lowerBound="1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean"
+ unsettable="true">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="attribute"/>
+ <details key="name" value="testsAreJarred"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="newsgroupPublisherName"
+ lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="&#xD;&#xA; &#x9;&#x9;&#x9;&#x9;&#x9;E-mail address of user who will publish build&#xD;&#xA; &#x9;&#x9;&#x9;&#x9;&#x9;annoucements.&#xD;&#xA; &#x9;&#x9;&#x9;&#x9;"/>
+ </eAnnotations>
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="attribute"/>
+ <details key="name" value="newsgroupPublisherName"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="DocumentRoot">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="name" value=""/>
+ <details key="kind" value="mixed"/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="mixed" unique="false" upperBound="-1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFeatureMapEntry">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="elementWildcard"/>
+ <details key="name" value=":mixed"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="xMLNSPrefixMap" upperBound="-1"
+ eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EStringToStringMapEntry"
+ transient="true" containment="true" resolveProxies="false">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="attribute"/>
+ <details key="name" value="xmlns:prefix"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="xSISchemaLocation" upperBound="-1"
+ eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EStringToStringMapEntry"
+ transient="true" containment="true" resolveProxies="false">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="attribute"/>
+ <details key="name" value="xsi:schemaLocation"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="build" upperBound="-2"
+ eType="#//BuildType" volatile="true" transient="true" derived="true" containment="true"
+ resolveProxies="false">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="element"/>
+ <details key="name" value="build"/>
+ <details key="namespace" value="##targetNamespace"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="extraZIP" upperBound="-2"
+ eType="#//ExtraZIPType" volatile="true" transient="true" derived="true" containment="true"
+ resolveProxies="false">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="element"/>
+ <details key="name" value="extraZIP"/>
+ <details key="namespace" value="##targetNamespace"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="ExtraZIPType">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="name" value="extraZIP_._type"/>
+ <details key="kind" value="empty"/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="kind" value="attribute"/>
+ <details key="name" value="name"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EEnum" name="JreType">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="name" value="jre_._type"/>
+ </eAnnotations>
+ <eLiterals name="J2SE14" literal="J2SE-1.4"/>
+ <eLiterals name="J2SE15" value="1" literal="J2SE-1.5"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EDataType" name="JreTypeObject" instanceClassName="org.eclipse.emf.common.util.Enumerator">
+ <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+ <details key="name" value="jre_._type:Object"/>
+ <details key="baseType" value="jre_._type"/>
+ </eAnnotations>
+ </eClassifiers>
+</ecore:EPackage>
diff --git a/examples/org.eclipse.jet.ec2008.pbpmodel/model/pushbuttonbuild.genmodel b/examples/org.eclipse.jet.ec2008.pbpmodel/model/pushbuttonbuild.genmodel
new file mode 100644
index 0000000..d40603a
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pbpmodel/model/pushbuttonbuild.genmodel
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<genmodel:GenModel xmi:version="2.0"
+ xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
+ xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" modelDirectory="/org.eclipse.jet.ec2008.pbpmodel/src"
+ modelPluginID="org.eclipse.jet.ec2008.pbpmodel" modelName="Pushbuttonbuild" importerID="org.eclipse.emf.importer.ecore"
+ complianceLevel="5.0" copyrightFields="false">
+ <foreignModel>../../org.eclipse.jet.ec2008.pushbuttonbuild.model/model/pushbuttonbuild.ecore</foreignModel>
+ <genPackages prefix="Pushbuttonbuild" basePackage="org.eclipse.jet.ec2008.pbpmodel"
+ resource="XML" disposableProviderFactory="true" ecorePackage="pushbuttonbuild.ecore#/">
+ <genEnums typeSafeEnumCompatible="false" ecoreEnum="pushbuttonbuild.ecore#//JreType">
+ <genEnumLiterals ecoreEnumLiteral="pushbuttonbuild.ecore#//JreType/J2SE14"/>
+ <genEnumLiterals ecoreEnumLiteral="pushbuttonbuild.ecore#//JreType/J2SE15"/>
+ </genEnums>
+ <genDataTypes ecoreDataType="pushbuttonbuild.ecore#//JreTypeObject"/>
+ <genClasses ecoreClass="pushbuttonbuild.ecore#//BuildType">
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference pushbuttonbuild.ecore#//BuildType/extraZIP"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute pushbuttonbuild.ecore#//BuildType/isIncubation"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute pushbuttonbuild.ecore#//BuildType/jre"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute pushbuttonbuild.ecore#//BuildType/newsgroupPublisherEmail"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute pushbuttonbuild.ecore#//BuildType/parentProjectName"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute pushbuttonbuild.ecore#//BuildType/projectNamespace"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute pushbuttonbuild.ecore#//BuildType/shortName"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute pushbuttonbuild.ecore#//BuildType/testsAreJarred"/>
+ </genClasses>
+ <genClasses ecoreClass="pushbuttonbuild.ecore#//DocumentRoot">
+ <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EAttribute pushbuttonbuild.ecore#//DocumentRoot/mixed"/>
+ <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference pushbuttonbuild.ecore#//DocumentRoot/xMLNSPrefixMap"/>
+ <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference pushbuttonbuild.ecore#//DocumentRoot/xSISchemaLocation"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference pushbuttonbuild.ecore#//DocumentRoot/build"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference pushbuttonbuild.ecore#//DocumentRoot/extraZIP"/>
+ </genClasses>
+ <genClasses ecoreClass="pushbuttonbuild.ecore#//ExtraZIPType">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute pushbuttonbuild.ecore#//ExtraZIPType/name"/>
+ </genClasses>
+ </genPackages>
+</genmodel:GenModel>
diff --git a/examples/org.eclipse.jet.ec2008.pbpmodel/plugin.properties b/examples/org.eclipse.jet.ec2008.pbpmodel/plugin.properties
new file mode 100644
index 0000000..c92e811
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pbpmodel/plugin.properties
@@ -0,0 +1,20 @@
+
+# <copyright>
+# </copyright>
+#
+# $Id: plugin.properties,v 1.1 2008/04/04 15:44:22 pelder Exp $
+
+# ====================================================================
+# To code developer:
+# Do NOT change the properties between this line and the
+# "%%% END OF TRANSLATED PROPERTIES %%%" line.
+# Make a new property name, append to the end of the file and change
+# the code to use the new property.
+# ====================================================================
+
+# ====================================================================
+# %%% END OF TRANSLATED PROPERTIES %%%
+# ====================================================================
+
+pluginName = Pushbuttonbuild Model
+providerName = www.example.org
diff --git a/examples/org.eclipse.jet.ec2008.pbpmodel/plugin.xml b/examples/org.eclipse.jet.ec2008.pbpmodel/plugin.xml
new file mode 100644
index 0000000..a6383a4
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pbpmodel/plugin.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+
+<!--
+ <copyright>
+ </copyright>
+
+ $Id: plugin.xml,v 1.1 2008/04/04 15:44:22 pelder Exp $
+-->
+
+<plugin>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <package
+ uri = "http://www.eclipse.org/modeling/pushbuttonbuild/1.0.0"
+ class = "org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.PushbuttonbuildPackage"
+ genModel = "model/pushbuttonbuild.genmodel" />
+ </extension>
+
+ <extension point="org.eclipse.emf.ecore.extension_parser">
+ <parser
+ type="pushbuttonbuild"
+ class="org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.util.PushbuttonbuildResourceFactoryImpl" />
+ </extension>
+
+</plugin>
diff --git a/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/BuildType.java b/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/BuildType.java
new file mode 100644
index 0000000..e254382
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/BuildType.java
@@ -0,0 +1,362 @@
+/**
+ * <copyright>
+ * Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0.
+ * </copyright>
+ *
+ * $Id: BuildType.java,v 1.1 2008/04/04 15:44:22 pelder Exp $
+ */
+package org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Build Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#getExtraZIP <em>Extra ZIP</em>}</li>
+ * <li>{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#isIsIncubation <em>Is Incubation</em>}</li>
+ * <li>{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#getJre <em>Jre</em>}</li>
+ * <li>{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#getNewsgroupPublisherEmail <em>Newsgroup Publisher Email</em>}</li>
+ * <li>{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#getParentProjectName <em>Parent Project Name</em>}</li>
+ * <li>{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#getProjectNamespace <em>Project Namespace</em>}</li>
+ * <li>{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#getShortName <em>Short Name</em>}</li>
+ * <li>{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#isTestsAreJarred <em>Tests Are Jarred</em>}</li>
+ * <li>{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#getNewsgroupPublisherName <em>Newsgroup Publisher Name</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.PushbuttonbuildPackage#getBuildType()
+ * @model extendedMetaData="name='build_._type' kind='elementOnly'"
+ * @generated
+ */
+public interface BuildType extends EObject {
+ /**
+ * Returns the value of the '<em><b>Extra ZIP</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.ExtraZIPType}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Extra ZIP</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Extra ZIP</em>' containment reference list.
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.PushbuttonbuildPackage#getBuildType_ExtraZIP()
+ * @model containment="true"
+ * extendedMetaData="kind='element' name='extraZIP' namespace='##targetNamespace'"
+ * @generated
+ */
+ EList<ExtraZIPType> getExtraZIP();
+
+ /**
+ * Returns the value of the '<em><b>Is Incubation</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Is Incubation</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Is Incubation</em>' attribute.
+ * @see #isSetIsIncubation()
+ * @see #unsetIsIncubation()
+ * @see #setIsIncubation(boolean)
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.PushbuttonbuildPackage#getBuildType_IsIncubation()
+ * @model unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.Boolean" required="true"
+ * extendedMetaData="kind='attribute' name='isIncubation'"
+ * @generated
+ */
+ boolean isIsIncubation();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#isIsIncubation <em>Is Incubation</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Is Incubation</em>' attribute.
+ * @see #isSetIsIncubation()
+ * @see #unsetIsIncubation()
+ * @see #isIsIncubation()
+ * @generated
+ */
+ void setIsIncubation(boolean value);
+
+ /**
+ * Unsets the value of the '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#isIsIncubation <em>Is Incubation</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetIsIncubation()
+ * @see #isIsIncubation()
+ * @see #setIsIncubation(boolean)
+ * @generated
+ */
+ void unsetIsIncubation();
+
+ /**
+ * Returns whether the value of the '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#isIsIncubation <em>Is Incubation</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Is Incubation</em>' attribute is set.
+ * @see #unsetIsIncubation()
+ * @see #isIsIncubation()
+ * @see #setIsIncubation(boolean)
+ * @generated
+ */
+ boolean isSetIsIncubation();
+
+ /**
+ * Returns the value of the '<em><b>Jre</b></em>' attribute.
+ * The default value is <code>"J2SE-1.4"</code>.
+ * The literals are from the enumeration {@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.JreType}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Jre</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Jre</em>' attribute.
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.JreType
+ * @see #isSetJre()
+ * @see #unsetJre()
+ * @see #setJre(JreType)
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.PushbuttonbuildPackage#getBuildType_Jre()
+ * @model default="J2SE-1.4" unsettable="true" required="true"
+ * extendedMetaData="kind='attribute' name='jre'"
+ * @generated
+ */
+ JreType getJre();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#getJre <em>Jre</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Jre</em>' attribute.
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.JreType
+ * @see #isSetJre()
+ * @see #unsetJre()
+ * @see #getJre()
+ * @generated
+ */
+ void setJre(JreType value);
+
+ /**
+ * Unsets the value of the '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#getJre <em>Jre</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetJre()
+ * @see #getJre()
+ * @see #setJre(JreType)
+ * @generated
+ */
+ void unsetJre();
+
+ /**
+ * Returns whether the value of the '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#getJre <em>Jre</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Jre</em>' attribute is set.
+ * @see #unsetJre()
+ * @see #getJre()
+ * @see #setJre(JreType)
+ * @generated
+ */
+ boolean isSetJre();
+
+ /**
+ * Returns the value of the '<em><b>Newsgroup Publisher Email</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * E-mail address of user who will publish build
+ * annoucements.
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Newsgroup Publisher Email</em>' attribute.
+ * @see #setNewsgroupPublisherEmail(String)
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.PushbuttonbuildPackage#getBuildType_NewsgroupPublisherEmail()
+ * @model dataType="org.eclipse.emf.ecore.xml.type.String" required="true"
+ * extendedMetaData="kind='attribute' name='newsgroupPublisherEmail'"
+ * @generated
+ */
+ String getNewsgroupPublisherEmail();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#getNewsgroupPublisherEmail <em>Newsgroup Publisher Email</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Newsgroup Publisher Email</em>' attribute.
+ * @see #getNewsgroupPublisherEmail()
+ * @generated
+ */
+ void setNewsgroupPublisherEmail(String value);
+
+ /**
+ * Returns the value of the '<em><b>Parent Project Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * Ex: m2t, emf, emft
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Parent Project Name</em>' attribute.
+ * @see #setParentProjectName(String)
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.PushbuttonbuildPackage#getBuildType_ParentProjectName()
+ * @model dataType="org.eclipse.emf.ecore.xml.type.String" required="true"
+ * extendedMetaData="kind='attribute' name='parentProjectName'"
+ * @generated
+ */
+ String getParentProjectName();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#getParentProjectName <em>Parent Project Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Parent Project Name</em>' attribute.
+ * @see #getParentProjectName()
+ * @generated
+ */
+ void setParentProjectName(String value);
+
+ /**
+ * Returns the value of the '<em><b>Project Namespace</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * Typically shortname, but sometimes includes a
+ * prefix on the short name. e.g. emf.validation,
+ * where the short name might be validation.
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Project Namespace</em>' attribute.
+ * @see #setProjectNamespace(String)
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.PushbuttonbuildPackage#getBuildType_ProjectNamespace()
+ * @model dataType="org.eclipse.emf.ecore.xml.type.String" required="true"
+ * extendedMetaData="kind='attribute' name='projectNamespace'"
+ * @generated
+ */
+ String getProjectNamespace();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#getProjectNamespace <em>Project Namespace</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Project Namespace</em>' attribute.
+ * @see #getProjectNamespace()
+ * @generated
+ */
+ void setProjectNamespace(String value);
+
+ /**
+ * Returns the value of the '<em><b>Short Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * jet
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Short Name</em>' attribute.
+ * @see #setShortName(String)
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.PushbuttonbuildPackage#getBuildType_ShortName()
+ * @model dataType="org.eclipse.emf.ecore.xml.type.String" required="true"
+ * extendedMetaData="kind='attribute' name='shortName'"
+ * @generated
+ */
+ String getShortName();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#getShortName <em>Short Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Short Name</em>' attribute.
+ * @see #getShortName()
+ * @generated
+ */
+ void setShortName(String value);
+
+ /**
+ * Returns the value of the '<em><b>Tests Are Jarred</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Tests Are Jarred</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Tests Are Jarred</em>' attribute.
+ * @see #isSetTestsAreJarred()
+ * @see #unsetTestsAreJarred()
+ * @see #setTestsAreJarred(boolean)
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.PushbuttonbuildPackage#getBuildType_TestsAreJarred()
+ * @model unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.Boolean" required="true"
+ * extendedMetaData="kind='attribute' name='testsAreJarred'"
+ * @generated
+ */
+ boolean isTestsAreJarred();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#isTestsAreJarred <em>Tests Are Jarred</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Tests Are Jarred</em>' attribute.
+ * @see #isSetTestsAreJarred()
+ * @see #unsetTestsAreJarred()
+ * @see #isTestsAreJarred()
+ * @generated
+ */
+ void setTestsAreJarred(boolean value);
+
+ /**
+ * Unsets the value of the '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#isTestsAreJarred <em>Tests Are Jarred</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetTestsAreJarred()
+ * @see #isTestsAreJarred()
+ * @see #setTestsAreJarred(boolean)
+ * @generated
+ */
+ void unsetTestsAreJarred();
+
+ /**
+ * Returns whether the value of the '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#isTestsAreJarred <em>Tests Are Jarred</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Tests Are Jarred</em>' attribute is set.
+ * @see #unsetTestsAreJarred()
+ * @see #isTestsAreJarred()
+ * @see #setTestsAreJarred(boolean)
+ * @generated
+ */
+ boolean isSetTestsAreJarred();
+
+ /**
+ * Returns the value of the '<em><b>Newsgroup Publisher Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ *
+ * E-mail address of user who will publish build
+ * annoucements.
+ *
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Newsgroup Publisher Name</em>' attribute.
+ * @see #setNewsgroupPublisherName(String)
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.PushbuttonbuildPackage#getBuildType_NewsgroupPublisherName()
+ * @model dataType="org.eclipse.emf.ecore.xml.type.String" required="true"
+ * extendedMetaData="kind='attribute' name='newsgroupPublisherName'"
+ * @generated
+ */
+ String getNewsgroupPublisherName();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#getNewsgroupPublisherName <em>Newsgroup Publisher Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Newsgroup Publisher Name</em>' attribute.
+ * @see #getNewsgroupPublisherName()
+ * @generated
+ */
+ void setNewsgroupPublisherName(String value);
+
+} // BuildType
diff --git a/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/DocumentRoot.java b/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/DocumentRoot.java
new file mode 100644
index 0000000..d1db639
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/DocumentRoot.java
@@ -0,0 +1,144 @@
+/**
+ * <copyright>
+ * Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0.
+ * </copyright>
+ *
+ * $Id: DocumentRoot.java,v 1.1 2008/04/04 15:44:22 pelder Exp $
+ */
+package org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild;
+
+import org.eclipse.emf.common.util.EMap;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.emf.ecore.util.FeatureMap;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Document Root</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.DocumentRoot#getMixed <em>Mixed</em>}</li>
+ * <li>{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.DocumentRoot#getXMLNSPrefixMap <em>XMLNS Prefix Map</em>}</li>
+ * <li>{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.DocumentRoot#getXSISchemaLocation <em>XSI Schema Location</em>}</li>
+ * <li>{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.DocumentRoot#getBuild <em>Build</em>}</li>
+ * <li>{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.DocumentRoot#getExtraZIP <em>Extra ZIP</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.PushbuttonbuildPackage#getDocumentRoot()
+ * @model extendedMetaData="name='' kind='mixed'"
+ * @generated
+ */
+public interface DocumentRoot extends EObject {
+ /**
+ * Returns the value of the '<em><b>Mixed</b></em>' attribute list.
+ * The list contents are of type {@link org.eclipse.emf.ecore.util.FeatureMap.Entry}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Mixed</em>' attribute list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Mixed</em>' attribute list.
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.PushbuttonbuildPackage#getDocumentRoot_Mixed()
+ * @model unique="false" dataType="org.eclipse.emf.ecore.EFeatureMapEntry" many="true"
+ * extendedMetaData="kind='elementWildcard' name=':mixed'"
+ * @generated
+ */
+ FeatureMap getMixed();
+
+ /**
+ * Returns the value of the '<em><b>XMLNS Prefix Map</b></em>' map.
+ * The key is of type {@link java.lang.String},
+ * and the value is of type {@link java.lang.String},
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>XMLNS Prefix Map</em>' map isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>XMLNS Prefix Map</em>' map.
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.PushbuttonbuildPackage#getDocumentRoot_XMLNSPrefixMap()
+ * @model mapType="org.eclipse.emf.ecore.EStringToStringMapEntry<org.eclipse.emf.ecore.EString, org.eclipse.emf.ecore.EString>" transient="true"
+ * extendedMetaData="kind='attribute' name='xmlns:prefix'"
+ * @generated
+ */
+ EMap<String, String> getXMLNSPrefixMap();
+
+ /**
+ * Returns the value of the '<em><b>XSI Schema Location</b></em>' map.
+ * The key is of type {@link java.lang.String},
+ * and the value is of type {@link java.lang.String},
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>XSI Schema Location</em>' map isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>XSI Schema Location</em>' map.
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.PushbuttonbuildPackage#getDocumentRoot_XSISchemaLocation()
+ * @model mapType="org.eclipse.emf.ecore.EStringToStringMapEntry<org.eclipse.emf.ecore.EString, org.eclipse.emf.ecore.EString>" transient="true"
+ * extendedMetaData="kind='attribute' name='xsi:schemaLocation'"
+ * @generated
+ */
+ EMap<String, String> getXSISchemaLocation();
+
+ /**
+ * Returns the value of the '<em><b>Build</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Build</em>' containment reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Build</em>' containment reference.
+ * @see #setBuild(BuildType)
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.PushbuttonbuildPackage#getDocumentRoot_Build()
+ * @model containment="true" upper="-2" transient="true" volatile="true" derived="true"
+ * extendedMetaData="kind='element' name='build' namespace='##targetNamespace'"
+ * @generated
+ */
+ BuildType getBuild();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.DocumentRoot#getBuild <em>Build</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Build</em>' containment reference.
+ * @see #getBuild()
+ * @generated
+ */
+ void setBuild(BuildType value);
+
+ /**
+ * Returns the value of the '<em><b>Extra ZIP</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Extra ZIP</em>' containment reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Extra ZIP</em>' containment reference.
+ * @see #setExtraZIP(ExtraZIPType)
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.PushbuttonbuildPackage#getDocumentRoot_ExtraZIP()
+ * @model containment="true" upper="-2" transient="true" volatile="true" derived="true"
+ * extendedMetaData="kind='element' name='extraZIP' namespace='##targetNamespace'"
+ * @generated
+ */
+ ExtraZIPType getExtraZIP();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.DocumentRoot#getExtraZIP <em>Extra ZIP</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Extra ZIP</em>' containment reference.
+ * @see #getExtraZIP()
+ * @generated
+ */
+ void setExtraZIP(ExtraZIPType value);
+
+} // DocumentRoot
diff --git a/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/ExtraZIPType.java b/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/ExtraZIPType.java
new file mode 100644
index 0000000..751703e
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/ExtraZIPType.java
@@ -0,0 +1,56 @@
+/**
+ * <copyright>
+ * Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0.
+ * </copyright>
+ *
+ * $Id: ExtraZIPType.java,v 1.1 2008/04/04 15:44:22 pelder Exp $
+ */
+package org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Extra ZIP Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.ExtraZIPType#getName <em>Name</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.PushbuttonbuildPackage#getExtraZIPType()
+ * @model extendedMetaData="name='extraZIP_._type' kind='empty'"
+ * @generated
+ */
+public interface ExtraZIPType extends EObject {
+ /**
+ * Returns the value of the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Name</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Name</em>' attribute.
+ * @see #setName(String)
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.PushbuttonbuildPackage#getExtraZIPType_Name()
+ * @model dataType="org.eclipse.emf.ecore.xml.type.String" required="true"
+ * extendedMetaData="kind='attribute' name='name'"
+ * @generated
+ */
+ String getName();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.ExtraZIPType#getName <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Name</em>' attribute.
+ * @see #getName()
+ * @generated
+ */
+ void setName(String value);
+
+} // ExtraZIPType
diff --git a/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/JreType.java b/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/JreType.java
new file mode 100644
index 0000000..c9979b1
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/JreType.java
@@ -0,0 +1,213 @@
+/**
+ * <copyright>
+ * Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0.
+ * </copyright>
+ *
+ * $Id: JreType.java,v 1.1 2008/04/04 15:44:22 pelder Exp $
+ */
+package org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the literals of the enumeration '<em><b>Jre Type</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.PushbuttonbuildPackage#getJreType()
+ * @model extendedMetaData="name='jre_._type'"
+ * @generated
+ */
+public enum JreType implements Enumerator {
+ /**
+ * The '<em><b>J2SE14</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #J2SE14_VALUE
+ * @generated
+ * @ordered
+ */
+ J2SE14(0, "J2SE14", "J2SE-1.4"),
+
+ /**
+ * The '<em><b>J2SE15</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #J2SE15_VALUE
+ * @generated
+ * @ordered
+ */
+ J2SE15(1, "J2SE15", "J2SE-1.5");
+
+ /**
+ * The '<em><b>J2SE14</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>J2SE14</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #J2SE14
+ * @model literal="J2SE-1.4"
+ * @generated
+ * @ordered
+ */
+ public static final int J2SE14_VALUE = 0;
+
+ /**
+ * The '<em><b>J2SE15</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>J2SE15</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #J2SE15
+ * @model literal="J2SE-1.5"
+ * @generated
+ * @ordered
+ */
+ public static final int J2SE15_VALUE = 1;
+
+ /**
+ * An array of all the '<em><b>Jre Type</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static final JreType[] VALUES_ARRAY =
+ new JreType[] {
+ J2SE14,
+ J2SE15,
+ };
+
+ /**
+ * A public read-only list of all the '<em><b>Jre Type</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static final List<JreType> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+ /**
+ * Returns the '<em><b>Jre Type</b></em>' literal with the specified literal value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static JreType get(String literal) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ JreType result = VALUES_ARRAY[i];
+ if (result.toString().equals(literal)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>Jre Type</b></em>' literal with the specified name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static JreType getByName(String name) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ JreType result = VALUES_ARRAY[i];
+ if (result.getName().equals(name)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>Jre Type</b></em>' literal with the specified integer value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static JreType get(int value) {
+ switch (value) {
+ case J2SE14_VALUE: return J2SE14;
+ case J2SE15_VALUE: return J2SE15;
+ }
+ return null;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final int value;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final String name;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final String literal;
+
+ /**
+ * Only this class can construct instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private JreType(int value, String name, String literal) {
+ this.value = value;
+ this.name = name;
+ this.literal = literal;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public int getValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getLiteral() {
+ return literal;
+ }
+
+ /**
+ * Returns the literal value of the enumerator, which is its string representation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ return literal;
+ }
+
+} //JreType
diff --git a/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/PushbuttonbuildFactory.java b/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/PushbuttonbuildFactory.java
new file mode 100644
index 0000000..f39c131
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/PushbuttonbuildFactory.java
@@ -0,0 +1,65 @@
+/**
+ * <copyright>
+ * Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0.
+ * </copyright>
+ *
+ * $Id: PushbuttonbuildFactory.java,v 1.1 2008/04/04 15:44:22 pelder Exp $
+ */
+package org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.PushbuttonbuildPackage
+ * @generated
+ */
+public interface PushbuttonbuildFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ PushbuttonbuildFactory eINSTANCE = org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl.PushbuttonbuildFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Build Type</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Build Type</em>'.
+ * @generated
+ */
+ BuildType createBuildType();
+
+ /**
+ * Returns a new object of class '<em>Document Root</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Document Root</em>'.
+ * @generated
+ */
+ DocumentRoot createDocumentRoot();
+
+ /**
+ * Returns a new object of class '<em>Extra ZIP Type</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Extra ZIP Type</em>'.
+ * @generated
+ */
+ ExtraZIPType createExtraZIPType();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ PushbuttonbuildPackage getPushbuttonbuildPackage();
+
+} //PushbuttonbuildFactory
diff --git a/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/PushbuttonbuildPackage.java b/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/PushbuttonbuildPackage.java
new file mode 100644
index 0000000..6dbda54
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/PushbuttonbuildPackage.java
@@ -0,0 +1,689 @@
+/**
+ * <copyright>
+ * Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0.
+ * </copyright>
+ *
+ * $Id: PushbuttonbuildPackage.java,v 1.1 2008/04/04 15:44:22 pelder Exp $
+ */
+package org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EEnum;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.PushbuttonbuildFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface PushbuttonbuildPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "pushbuttonbuild";
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/modeling/pushbuttonbuild/1.0.0";
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "pushbuttonbuld";
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ PushbuttonbuildPackage eINSTANCE = org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl.PushbuttonbuildPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl.BuildTypeImpl <em>Build Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl.BuildTypeImpl
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl.PushbuttonbuildPackageImpl#getBuildType()
+ * @generated
+ */
+ int BUILD_TYPE = 0;
+
+ /**
+ * The feature id for the '<em><b>Extra ZIP</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BUILD_TYPE__EXTRA_ZIP = 0;
+
+ /**
+ * The feature id for the '<em><b>Is Incubation</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BUILD_TYPE__IS_INCUBATION = 1;
+
+ /**
+ * The feature id for the '<em><b>Jre</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BUILD_TYPE__JRE = 2;
+
+ /**
+ * The feature id for the '<em><b>Newsgroup Publisher Email</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BUILD_TYPE__NEWSGROUP_PUBLISHER_EMAIL = 3;
+
+ /**
+ * The feature id for the '<em><b>Parent Project Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BUILD_TYPE__PARENT_PROJECT_NAME = 4;
+
+ /**
+ * The feature id for the '<em><b>Project Namespace</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BUILD_TYPE__PROJECT_NAMESPACE = 5;
+
+ /**
+ * The feature id for the '<em><b>Short Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BUILD_TYPE__SHORT_NAME = 6;
+
+ /**
+ * The feature id for the '<em><b>Tests Are Jarred</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BUILD_TYPE__TESTS_ARE_JARRED = 7;
+
+ /**
+ * The feature id for the '<em><b>Newsgroup Publisher Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BUILD_TYPE__NEWSGROUP_PUBLISHER_NAME = 8;
+
+ /**
+ * The number of structural features of the '<em>Build Type</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BUILD_TYPE_FEATURE_COUNT = 9;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl.DocumentRootImpl <em>Document Root</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl.DocumentRootImpl
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl.PushbuttonbuildPackageImpl#getDocumentRoot()
+ * @generated
+ */
+ int DOCUMENT_ROOT = 1;
+
+ /**
+ * The feature id for the '<em><b>Mixed</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCUMENT_ROOT__MIXED = 0;
+
+ /**
+ * The feature id for the '<em><b>XMLNS Prefix Map</b></em>' map.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCUMENT_ROOT__XMLNS_PREFIX_MAP = 1;
+
+ /**
+ * The feature id for the '<em><b>XSI Schema Location</b></em>' map.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCUMENT_ROOT__XSI_SCHEMA_LOCATION = 2;
+
+ /**
+ * The feature id for the '<em><b>Build</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCUMENT_ROOT__BUILD = 3;
+
+ /**
+ * The feature id for the '<em><b>Extra ZIP</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCUMENT_ROOT__EXTRA_ZIP = 4;
+
+ /**
+ * The number of structural features of the '<em>Document Root</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCUMENT_ROOT_FEATURE_COUNT = 5;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl.ExtraZIPTypeImpl <em>Extra ZIP Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl.ExtraZIPTypeImpl
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl.PushbuttonbuildPackageImpl#getExtraZIPType()
+ * @generated
+ */
+ int EXTRA_ZIP_TYPE = 2;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EXTRA_ZIP_TYPE__NAME = 0;
+
+ /**
+ * The number of structural features of the '<em>Extra ZIP Type</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EXTRA_ZIP_TYPE_FEATURE_COUNT = 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.JreType <em>Jre Type</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.JreType
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl.PushbuttonbuildPackageImpl#getJreType()
+ * @generated
+ */
+ int JRE_TYPE = 3;
+
+ /**
+ * The meta object id for the '<em>Jre Type Object</em>' data type.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.JreType
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl.PushbuttonbuildPackageImpl#getJreTypeObject()
+ * @generated
+ */
+ int JRE_TYPE_OBJECT = 4;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType <em>Build Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Build Type</em>'.
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType
+ * @generated
+ */
+ EClass getBuildType();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#getExtraZIP <em>Extra ZIP</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Extra ZIP</em>'.
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#getExtraZIP()
+ * @see #getBuildType()
+ * @generated
+ */
+ EReference getBuildType_ExtraZIP();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#isIsIncubation <em>Is Incubation</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Is Incubation</em>'.
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#isIsIncubation()
+ * @see #getBuildType()
+ * @generated
+ */
+ EAttribute getBuildType_IsIncubation();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#getJre <em>Jre</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Jre</em>'.
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#getJre()
+ * @see #getBuildType()
+ * @generated
+ */
+ EAttribute getBuildType_Jre();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#getNewsgroupPublisherEmail <em>Newsgroup Publisher Email</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Newsgroup Publisher Email</em>'.
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#getNewsgroupPublisherEmail()
+ * @see #getBuildType()
+ * @generated
+ */
+ EAttribute getBuildType_NewsgroupPublisherEmail();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#getParentProjectName <em>Parent Project Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Parent Project Name</em>'.
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#getParentProjectName()
+ * @see #getBuildType()
+ * @generated
+ */
+ EAttribute getBuildType_ParentProjectName();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#getProjectNamespace <em>Project Namespace</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Project Namespace</em>'.
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#getProjectNamespace()
+ * @see #getBuildType()
+ * @generated
+ */
+ EAttribute getBuildType_ProjectNamespace();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#getShortName <em>Short Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Short Name</em>'.
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#getShortName()
+ * @see #getBuildType()
+ * @generated
+ */
+ EAttribute getBuildType_ShortName();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#isTestsAreJarred <em>Tests Are Jarred</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Tests Are Jarred</em>'.
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#isTestsAreJarred()
+ * @see #getBuildType()
+ * @generated
+ */
+ EAttribute getBuildType_TestsAreJarred();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#getNewsgroupPublisherName <em>Newsgroup Publisher Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Newsgroup Publisher Name</em>'.
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType#getNewsgroupPublisherName()
+ * @see #getBuildType()
+ * @generated
+ */
+ EAttribute getBuildType_NewsgroupPublisherName();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.DocumentRoot <em>Document Root</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Document Root</em>'.
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.DocumentRoot
+ * @generated
+ */
+ EClass getDocumentRoot();
+
+ /**
+ * Returns the meta object for the attribute list '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.DocumentRoot#getMixed <em>Mixed</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute list '<em>Mixed</em>'.
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.DocumentRoot#getMixed()
+ * @see #getDocumentRoot()
+ * @generated
+ */
+ EAttribute getDocumentRoot_Mixed();
+
+ /**
+ * Returns the meta object for the map '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.DocumentRoot#getXMLNSPrefixMap <em>XMLNS Prefix Map</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the map '<em>XMLNS Prefix Map</em>'.
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.DocumentRoot#getXMLNSPrefixMap()
+ * @see #getDocumentRoot()
+ * @generated
+ */
+ EReference getDocumentRoot_XMLNSPrefixMap();
+
+ /**
+ * Returns the meta object for the map '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.DocumentRoot#getXSISchemaLocation <em>XSI Schema Location</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the map '<em>XSI Schema Location</em>'.
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.DocumentRoot#getXSISchemaLocation()
+ * @see #getDocumentRoot()
+ * @generated
+ */
+ EReference getDocumentRoot_XSISchemaLocation();
+
+ /**
+ * Returns the meta object for the containment reference '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.DocumentRoot#getBuild <em>Build</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Build</em>'.
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.DocumentRoot#getBuild()
+ * @see #getDocumentRoot()
+ * @generated
+ */
+ EReference getDocumentRoot_Build();
+
+ /**
+ * Returns the meta object for the containment reference '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.DocumentRoot#getExtraZIP <em>Extra ZIP</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Extra ZIP</em>'.
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.DocumentRoot#getExtraZIP()
+ * @see #getDocumentRoot()
+ * @generated
+ */
+ EReference getDocumentRoot_ExtraZIP();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.ExtraZIPType <em>Extra ZIP Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Extra ZIP Type</em>'.
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.ExtraZIPType
+ * @generated
+ */
+ EClass getExtraZIPType();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.ExtraZIPType#getName <em>Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Name</em>'.
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.ExtraZIPType#getName()
+ * @see #getExtraZIPType()
+ * @generated
+ */
+ EAttribute getExtraZIPType_Name();
+
+ /**
+ * Returns the meta object for enum '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.JreType <em>Jre Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for enum '<em>Jre Type</em>'.
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.JreType
+ * @generated
+ */
+ EEnum getJreType();
+
+ /**
+ * Returns the meta object for data type '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.JreType <em>Jre Type Object</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for data type '<em>Jre Type Object</em>'.
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.JreType
+ * @model instanceClass="org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.JreType"
+ * extendedMetaData="name='jre_._type:Object' baseType='jre_._type'"
+ * @generated
+ */
+ EDataType getJreTypeObject();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ PushbuttonbuildFactory getPushbuttonbuildFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl.BuildTypeImpl <em>Build Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl.BuildTypeImpl
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl.PushbuttonbuildPackageImpl#getBuildType()
+ * @generated
+ */
+ EClass BUILD_TYPE = eINSTANCE.getBuildType();
+
+ /**
+ * The meta object literal for the '<em><b>Extra ZIP</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference BUILD_TYPE__EXTRA_ZIP = eINSTANCE.getBuildType_ExtraZIP();
+
+ /**
+ * The meta object literal for the '<em><b>Is Incubation</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute BUILD_TYPE__IS_INCUBATION = eINSTANCE.getBuildType_IsIncubation();
+
+ /**
+ * The meta object literal for the '<em><b>Jre</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute BUILD_TYPE__JRE = eINSTANCE.getBuildType_Jre();
+
+ /**
+ * The meta object literal for the '<em><b>Newsgroup Publisher Email</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute BUILD_TYPE__NEWSGROUP_PUBLISHER_EMAIL = eINSTANCE.getBuildType_NewsgroupPublisherEmail();
+
+ /**
+ * The meta object literal for the '<em><b>Parent Project Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute BUILD_TYPE__PARENT_PROJECT_NAME = eINSTANCE.getBuildType_ParentProjectName();
+
+ /**
+ * The meta object literal for the '<em><b>Project Namespace</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute BUILD_TYPE__PROJECT_NAMESPACE = eINSTANCE.getBuildType_ProjectNamespace();
+
+ /**
+ * The meta object literal for the '<em><b>Short Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute BUILD_TYPE__SHORT_NAME = eINSTANCE.getBuildType_ShortName();
+
+ /**
+ * The meta object literal for the '<em><b>Tests Are Jarred</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute BUILD_TYPE__TESTS_ARE_JARRED = eINSTANCE.getBuildType_TestsAreJarred();
+
+ /**
+ * The meta object literal for the '<em><b>Newsgroup Publisher Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute BUILD_TYPE__NEWSGROUP_PUBLISHER_NAME = eINSTANCE.getBuildType_NewsgroupPublisherName();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl.DocumentRootImpl <em>Document Root</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl.DocumentRootImpl
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl.PushbuttonbuildPackageImpl#getDocumentRoot()
+ * @generated
+ */
+ EClass DOCUMENT_ROOT = eINSTANCE.getDocumentRoot();
+
+ /**
+ * The meta object literal for the '<em><b>Mixed</b></em>' attribute list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DOCUMENT_ROOT__MIXED = eINSTANCE.getDocumentRoot_Mixed();
+
+ /**
+ * The meta object literal for the '<em><b>XMLNS Prefix Map</b></em>' map feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DOCUMENT_ROOT__XMLNS_PREFIX_MAP = eINSTANCE.getDocumentRoot_XMLNSPrefixMap();
+
+ /**
+ * The meta object literal for the '<em><b>XSI Schema Location</b></em>' map feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DOCUMENT_ROOT__XSI_SCHEMA_LOCATION = eINSTANCE.getDocumentRoot_XSISchemaLocation();
+
+ /**
+ * The meta object literal for the '<em><b>Build</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DOCUMENT_ROOT__BUILD = eINSTANCE.getDocumentRoot_Build();
+
+ /**
+ * The meta object literal for the '<em><b>Extra ZIP</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DOCUMENT_ROOT__EXTRA_ZIP = eINSTANCE.getDocumentRoot_ExtraZIP();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl.ExtraZIPTypeImpl <em>Extra ZIP Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl.ExtraZIPTypeImpl
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl.PushbuttonbuildPackageImpl#getExtraZIPType()
+ * @generated
+ */
+ EClass EXTRA_ZIP_TYPE = eINSTANCE.getExtraZIPType();
+
+ /**
+ * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute EXTRA_ZIP_TYPE__NAME = eINSTANCE.getExtraZIPType_Name();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.JreType <em>Jre Type</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.JreType
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl.PushbuttonbuildPackageImpl#getJreType()
+ * @generated
+ */
+ EEnum JRE_TYPE = eINSTANCE.getJreType();
+
+ /**
+ * The meta object literal for the '<em>Jre Type Object</em>' data type.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.JreType
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl.PushbuttonbuildPackageImpl#getJreTypeObject()
+ * @generated
+ */
+ EDataType JRE_TYPE_OBJECT = eINSTANCE.getJreTypeObject();
+
+ }
+
+} //PushbuttonbuildPackage
diff --git a/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/impl/BuildTypeImpl.java b/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/impl/BuildTypeImpl.java
new file mode 100644
index 0000000..937b003
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/impl/BuildTypeImpl.java
@@ -0,0 +1,708 @@
+/**
+ * <copyright>
+ * Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0.
+ * </copyright>
+ *
+ * $Id: BuildTypeImpl.java,v 1.1 2008/04/04 15:44:22 pelder Exp $
+ */
+package org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType;
+import org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.ExtraZIPType;
+import org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.JreType;
+import org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.PushbuttonbuildPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Build Type</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl.BuildTypeImpl#getExtraZIP <em>Extra ZIP</em>}</li>
+ * <li>{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl.BuildTypeImpl#isIsIncubation <em>Is Incubation</em>}</li>
+ * <li>{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl.BuildTypeImpl#getJre <em>Jre</em>}</li>
+ * <li>{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl.BuildTypeImpl#getNewsgroupPublisherEmail <em>Newsgroup Publisher Email</em>}</li>
+ * <li>{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl.BuildTypeImpl#getParentProjectName <em>Parent Project Name</em>}</li>
+ * <li>{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl.BuildTypeImpl#getProjectNamespace <em>Project Namespace</em>}</li>
+ * <li>{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl.BuildTypeImpl#getShortName <em>Short Name</em>}</li>
+ * <li>{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl.BuildTypeImpl#isTestsAreJarred <em>Tests Are Jarred</em>}</li>
+ * <li>{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl.BuildTypeImpl#getNewsgroupPublisherName <em>Newsgroup Publisher Name</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class BuildTypeImpl extends EObjectImpl implements BuildType {
+ /**
+ * The cached value of the '{@link #getExtraZIP() <em>Extra ZIP</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getExtraZIP()
+ * @generated
+ * @ordered
+ */
+ protected EList<ExtraZIPType> extraZIP;
+
+ /**
+ * The default value of the '{@link #isIsIncubation() <em>Is Incubation</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isIsIncubation()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean IS_INCUBATION_EDEFAULT = false;
+
+ /**
+ * The cached value of the '{@link #isIsIncubation() <em>Is Incubation</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isIsIncubation()
+ * @generated
+ * @ordered
+ */
+ protected boolean isIncubation = IS_INCUBATION_EDEFAULT;
+
+ /**
+ * This is true if the Is Incubation attribute has been set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean isIncubationESet;
+
+ /**
+ * The default value of the '{@link #getJre() <em>Jre</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getJre()
+ * @generated
+ * @ordered
+ */
+ protected static final JreType JRE_EDEFAULT = JreType.J2SE14;
+
+ /**
+ * The cached value of the '{@link #getJre() <em>Jre</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getJre()
+ * @generated
+ * @ordered
+ */
+ protected JreType jre = JRE_EDEFAULT;
+
+ /**
+ * This is true if the Jre attribute has been set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean jreESet;
+
+ /**
+ * The default value of the '{@link #getNewsgroupPublisherEmail() <em>Newsgroup Publisher Email</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getNewsgroupPublisherEmail()
+ * @generated
+ * @ordered
+ */
+ protected static final String NEWSGROUP_PUBLISHER_EMAIL_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getNewsgroupPublisherEmail() <em>Newsgroup Publisher Email</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getNewsgroupPublisherEmail()
+ * @generated
+ * @ordered
+ */
+ protected String newsgroupPublisherEmail = NEWSGROUP_PUBLISHER_EMAIL_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getParentProjectName() <em>Parent Project Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getParentProjectName()
+ * @generated
+ * @ordered
+ */
+ protected static final String PARENT_PROJECT_NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getParentProjectName() <em>Parent Project Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getParentProjectName()
+ * @generated
+ * @ordered
+ */
+ protected String parentProjectName = PARENT_PROJECT_NAME_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getProjectNamespace() <em>Project Namespace</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getProjectNamespace()
+ * @generated
+ * @ordered
+ */
+ protected static final String PROJECT_NAMESPACE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getProjectNamespace() <em>Project Namespace</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getProjectNamespace()
+ * @generated
+ * @ordered
+ */
+ protected String projectNamespace = PROJECT_NAMESPACE_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getShortName() <em>Short Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getShortName()
+ * @generated
+ * @ordered
+ */
+ protected static final String SHORT_NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getShortName() <em>Short Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getShortName()
+ * @generated
+ * @ordered
+ */
+ protected String shortName = SHORT_NAME_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #isTestsAreJarred() <em>Tests Are Jarred</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isTestsAreJarred()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean TESTS_ARE_JARRED_EDEFAULT = false;
+
+ /**
+ * The cached value of the '{@link #isTestsAreJarred() <em>Tests Are Jarred</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isTestsAreJarred()
+ * @generated
+ * @ordered
+ */
+ protected boolean testsAreJarred = TESTS_ARE_JARRED_EDEFAULT;
+
+ /**
+ * This is true if the Tests Are Jarred attribute has been set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean testsAreJarredESet;
+
+ /**
+ * The default value of the '{@link #getNewsgroupPublisherName() <em>Newsgroup Publisher Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getNewsgroupPublisherName()
+ * @generated
+ * @ordered
+ */
+ protected static final String NEWSGROUP_PUBLISHER_NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getNewsgroupPublisherName() <em>Newsgroup Publisher Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getNewsgroupPublisherName()
+ * @generated
+ * @ordered
+ */
+ protected String newsgroupPublisherName = NEWSGROUP_PUBLISHER_NAME_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected BuildTypeImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return PushbuttonbuildPackage.Literals.BUILD_TYPE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<ExtraZIPType> getExtraZIP() {
+ if (extraZIP == null) {
+ extraZIP = new EObjectContainmentEList<ExtraZIPType>(ExtraZIPType.class, this, PushbuttonbuildPackage.BUILD_TYPE__EXTRA_ZIP);
+ }
+ return extraZIP;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isIsIncubation() {
+ return isIncubation;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setIsIncubation(boolean newIsIncubation) {
+ boolean oldIsIncubation = isIncubation;
+ isIncubation = newIsIncubation;
+ boolean oldIsIncubationESet = isIncubationESet;
+ isIncubationESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, PushbuttonbuildPackage.BUILD_TYPE__IS_INCUBATION, oldIsIncubation, isIncubation, !oldIsIncubationESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetIsIncubation() {
+ boolean oldIsIncubation = isIncubation;
+ boolean oldIsIncubationESet = isIncubationESet;
+ isIncubation = IS_INCUBATION_EDEFAULT;
+ isIncubationESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, PushbuttonbuildPackage.BUILD_TYPE__IS_INCUBATION, oldIsIncubation, IS_INCUBATION_EDEFAULT, oldIsIncubationESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetIsIncubation() {
+ return isIncubationESet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public JreType getJre() {
+ return jre;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setJre(JreType newJre) {
+ JreType oldJre = jre;
+ jre = newJre == null ? JRE_EDEFAULT : newJre;
+ boolean oldJreESet = jreESet;
+ jreESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, PushbuttonbuildPackage.BUILD_TYPE__JRE, oldJre, jre, !oldJreESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetJre() {
+ JreType oldJre = jre;
+ boolean oldJreESet = jreESet;
+ jre = JRE_EDEFAULT;
+ jreESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, PushbuttonbuildPackage.BUILD_TYPE__JRE, oldJre, JRE_EDEFAULT, oldJreESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetJre() {
+ return jreESet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getNewsgroupPublisherEmail() {
+ return newsgroupPublisherEmail;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setNewsgroupPublisherEmail(String newNewsgroupPublisherEmail) {
+ String oldNewsgroupPublisherEmail = newsgroupPublisherEmail;
+ newsgroupPublisherEmail = newNewsgroupPublisherEmail;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, PushbuttonbuildPackage.BUILD_TYPE__NEWSGROUP_PUBLISHER_EMAIL, oldNewsgroupPublisherEmail, newsgroupPublisherEmail));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getParentProjectName() {
+ return parentProjectName;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setParentProjectName(String newParentProjectName) {
+ String oldParentProjectName = parentProjectName;
+ parentProjectName = newParentProjectName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, PushbuttonbuildPackage.BUILD_TYPE__PARENT_PROJECT_NAME, oldParentProjectName, parentProjectName));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getProjectNamespace() {
+ return projectNamespace;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setProjectNamespace(String newProjectNamespace) {
+ String oldProjectNamespace = projectNamespace;
+ projectNamespace = newProjectNamespace;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, PushbuttonbuildPackage.BUILD_TYPE__PROJECT_NAMESPACE, oldProjectNamespace, projectNamespace));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getShortName() {
+ return shortName;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setShortName(String newShortName) {
+ String oldShortName = shortName;
+ shortName = newShortName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, PushbuttonbuildPackage.BUILD_TYPE__SHORT_NAME, oldShortName, shortName));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isTestsAreJarred() {
+ return testsAreJarred;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setTestsAreJarred(boolean newTestsAreJarred) {
+ boolean oldTestsAreJarred = testsAreJarred;
+ testsAreJarred = newTestsAreJarred;
+ boolean oldTestsAreJarredESet = testsAreJarredESet;
+ testsAreJarredESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, PushbuttonbuildPackage.BUILD_TYPE__TESTS_ARE_JARRED, oldTestsAreJarred, testsAreJarred, !oldTestsAreJarredESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetTestsAreJarred() {
+ boolean oldTestsAreJarred = testsAreJarred;
+ boolean oldTestsAreJarredESet = testsAreJarredESet;
+ testsAreJarred = TESTS_ARE_JARRED_EDEFAULT;
+ testsAreJarredESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, PushbuttonbuildPackage.BUILD_TYPE__TESTS_ARE_JARRED, oldTestsAreJarred, TESTS_ARE_JARRED_EDEFAULT, oldTestsAreJarredESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetTestsAreJarred() {
+ return testsAreJarredESet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getNewsgroupPublisherName() {
+ return newsgroupPublisherName;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setNewsgroupPublisherName(String newNewsgroupPublisherName) {
+ String oldNewsgroupPublisherName = newsgroupPublisherName;
+ newsgroupPublisherName = newNewsgroupPublisherName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, PushbuttonbuildPackage.BUILD_TYPE__NEWSGROUP_PUBLISHER_NAME, oldNewsgroupPublisherName, newsgroupPublisherName));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case PushbuttonbuildPackage.BUILD_TYPE__EXTRA_ZIP:
+ return ((InternalEList<?>)getExtraZIP()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case PushbuttonbuildPackage.BUILD_TYPE__EXTRA_ZIP:
+ return getExtraZIP();
+ case PushbuttonbuildPackage.BUILD_TYPE__IS_INCUBATION:
+ return isIsIncubation() ? Boolean.TRUE : Boolean.FALSE;
+ case PushbuttonbuildPackage.BUILD_TYPE__JRE:
+ return getJre();
+ case PushbuttonbuildPackage.BUILD_TYPE__NEWSGROUP_PUBLISHER_EMAIL:
+ return getNewsgroupPublisherEmail();
+ case PushbuttonbuildPackage.BUILD_TYPE__PARENT_PROJECT_NAME:
+ return getParentProjectName();
+ case PushbuttonbuildPackage.BUILD_TYPE__PROJECT_NAMESPACE:
+ return getProjectNamespace();
+ case PushbuttonbuildPackage.BUILD_TYPE__SHORT_NAME:
+ return getShortName();
+ case PushbuttonbuildPackage.BUILD_TYPE__TESTS_ARE_JARRED:
+ return isTestsAreJarred() ? Boolean.TRUE : Boolean.FALSE;
+ case PushbuttonbuildPackage.BUILD_TYPE__NEWSGROUP_PUBLISHER_NAME:
+ return getNewsgroupPublisherName();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case PushbuttonbuildPackage.BUILD_TYPE__EXTRA_ZIP:
+ getExtraZIP().clear();
+ getExtraZIP().addAll((Collection<? extends ExtraZIPType>)newValue);
+ return;
+ case PushbuttonbuildPackage.BUILD_TYPE__IS_INCUBATION:
+ setIsIncubation(((Boolean)newValue).booleanValue());
+ return;
+ case PushbuttonbuildPackage.BUILD_TYPE__JRE:
+ setJre((JreType)newValue);
+ return;
+ case PushbuttonbuildPackage.BUILD_TYPE__NEWSGROUP_PUBLISHER_EMAIL:
+ setNewsgroupPublisherEmail((String)newValue);
+ return;
+ case PushbuttonbuildPackage.BUILD_TYPE__PARENT_PROJECT_NAME:
+ setParentProjectName((String)newValue);
+ return;
+ case PushbuttonbuildPackage.BUILD_TYPE__PROJECT_NAMESPACE:
+ setProjectNamespace((String)newValue);
+ return;
+ case PushbuttonbuildPackage.BUILD_TYPE__SHORT_NAME:
+ setShortName((String)newValue);
+ return;
+ case PushbuttonbuildPackage.BUILD_TYPE__TESTS_ARE_JARRED:
+ setTestsAreJarred(((Boolean)newValue).booleanValue());
+ return;
+ case PushbuttonbuildPackage.BUILD_TYPE__NEWSGROUP_PUBLISHER_NAME:
+ setNewsgroupPublisherName((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case PushbuttonbuildPackage.BUILD_TYPE__EXTRA_ZIP:
+ getExtraZIP().clear();
+ return;
+ case PushbuttonbuildPackage.BUILD_TYPE__IS_INCUBATION:
+ unsetIsIncubation();
+ return;
+ case PushbuttonbuildPackage.BUILD_TYPE__JRE:
+ unsetJre();
+ return;
+ case PushbuttonbuildPackage.BUILD_TYPE__NEWSGROUP_PUBLISHER_EMAIL:
+ setNewsgroupPublisherEmail(NEWSGROUP_PUBLISHER_EMAIL_EDEFAULT);
+ return;
+ case PushbuttonbuildPackage.BUILD_TYPE__PARENT_PROJECT_NAME:
+ setParentProjectName(PARENT_PROJECT_NAME_EDEFAULT);
+ return;
+ case PushbuttonbuildPackage.BUILD_TYPE__PROJECT_NAMESPACE:
+ setProjectNamespace(PROJECT_NAMESPACE_EDEFAULT);
+ return;
+ case PushbuttonbuildPackage.BUILD_TYPE__SHORT_NAME:
+ setShortName(SHORT_NAME_EDEFAULT);
+ return;
+ case PushbuttonbuildPackage.BUILD_TYPE__TESTS_ARE_JARRED:
+ unsetTestsAreJarred();
+ return;
+ case PushbuttonbuildPackage.BUILD_TYPE__NEWSGROUP_PUBLISHER_NAME:
+ setNewsgroupPublisherName(NEWSGROUP_PUBLISHER_NAME_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case PushbuttonbuildPackage.BUILD_TYPE__EXTRA_ZIP:
+ return extraZIP != null && !extraZIP.isEmpty();
+ case PushbuttonbuildPackage.BUILD_TYPE__IS_INCUBATION:
+ return isSetIsIncubation();
+ case PushbuttonbuildPackage.BUILD_TYPE__JRE:
+ return isSetJre();
+ case PushbuttonbuildPackage.BUILD_TYPE__NEWSGROUP_PUBLISHER_EMAIL:
+ return NEWSGROUP_PUBLISHER_EMAIL_EDEFAULT == null ? newsgroupPublisherEmail != null : !NEWSGROUP_PUBLISHER_EMAIL_EDEFAULT.equals(newsgroupPublisherEmail);
+ case PushbuttonbuildPackage.BUILD_TYPE__PARENT_PROJECT_NAME:
+ return PARENT_PROJECT_NAME_EDEFAULT == null ? parentProjectName != null : !PARENT_PROJECT_NAME_EDEFAULT.equals(parentProjectName);
+ case PushbuttonbuildPackage.BUILD_TYPE__PROJECT_NAMESPACE:
+ return PROJECT_NAMESPACE_EDEFAULT == null ? projectNamespace != null : !PROJECT_NAMESPACE_EDEFAULT.equals(projectNamespace);
+ case PushbuttonbuildPackage.BUILD_TYPE__SHORT_NAME:
+ return SHORT_NAME_EDEFAULT == null ? shortName != null : !SHORT_NAME_EDEFAULT.equals(shortName);
+ case PushbuttonbuildPackage.BUILD_TYPE__TESTS_ARE_JARRED:
+ return isSetTestsAreJarred();
+ case PushbuttonbuildPackage.BUILD_TYPE__NEWSGROUP_PUBLISHER_NAME:
+ return NEWSGROUP_PUBLISHER_NAME_EDEFAULT == null ? newsgroupPublisherName != null : !NEWSGROUP_PUBLISHER_NAME_EDEFAULT.equals(newsgroupPublisherName);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (isIncubation: ");
+ if (isIncubationESet) result.append(isIncubation); else result.append("<unset>");
+ result.append(", jre: ");
+ if (jreESet) result.append(jre); else result.append("<unset>");
+ result.append(", newsgroupPublisherEmail: ");
+ result.append(newsgroupPublisherEmail);
+ result.append(", parentProjectName: ");
+ result.append(parentProjectName);
+ result.append(", projectNamespace: ");
+ result.append(projectNamespace);
+ result.append(", shortName: ");
+ result.append(shortName);
+ result.append(", testsAreJarred: ");
+ if (testsAreJarredESet) result.append(testsAreJarred); else result.append("<unset>");
+ result.append(", newsgroupPublisherName: ");
+ result.append(newsgroupPublisherName);
+ result.append(')');
+ return result.toString();
+ }
+
+} //BuildTypeImpl
diff --git a/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/impl/DocumentRootImpl.java b/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/impl/DocumentRootImpl.java
new file mode 100644
index 0000000..ba01576
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/impl/DocumentRootImpl.java
@@ -0,0 +1,328 @@
+/**
+ * <copyright>
+ * Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0.
+ * </copyright>
+ *
+ * $Id: DocumentRootImpl.java,v 1.1 2008/04/04 15:44:22 pelder Exp $
+ */
+package org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl;
+
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EMap;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+import org.eclipse.emf.ecore.impl.EStringToStringMapEntryImpl;
+
+import org.eclipse.emf.ecore.util.BasicFeatureMap;
+import org.eclipse.emf.ecore.util.EcoreEMap;
+import org.eclipse.emf.ecore.util.FeatureMap;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType;
+import org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.DocumentRoot;
+import org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.ExtraZIPType;
+import org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.PushbuttonbuildPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Document Root</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl.DocumentRootImpl#getMixed <em>Mixed</em>}</li>
+ * <li>{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl.DocumentRootImpl#getXMLNSPrefixMap <em>XMLNS Prefix Map</em>}</li>
+ * <li>{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl.DocumentRootImpl#getXSISchemaLocation <em>XSI Schema Location</em>}</li>
+ * <li>{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl.DocumentRootImpl#getBuild <em>Build</em>}</li>
+ * <li>{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl.DocumentRootImpl#getExtraZIP <em>Extra ZIP</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class DocumentRootImpl extends EObjectImpl implements DocumentRoot {
+ /**
+ * The cached value of the '{@link #getMixed() <em>Mixed</em>}' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getMixed()
+ * @generated
+ * @ordered
+ */
+ protected FeatureMap mixed;
+
+ /**
+ * The cached value of the '{@link #getXMLNSPrefixMap() <em>XMLNS Prefix Map</em>}' map.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getXMLNSPrefixMap()
+ * @generated
+ * @ordered
+ */
+ protected EMap<String, String> xMLNSPrefixMap;
+
+ /**
+ * The cached value of the '{@link #getXSISchemaLocation() <em>XSI Schema Location</em>}' map.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getXSISchemaLocation()
+ * @generated
+ * @ordered
+ */
+ protected EMap<String, String> xSISchemaLocation;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected DocumentRootImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return PushbuttonbuildPackage.Literals.DOCUMENT_ROOT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public FeatureMap getMixed() {
+ if (mixed == null) {
+ mixed = new BasicFeatureMap(this, PushbuttonbuildPackage.DOCUMENT_ROOT__MIXED);
+ }
+ return mixed;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EMap<String, String> getXMLNSPrefixMap() {
+ if (xMLNSPrefixMap == null) {
+ xMLNSPrefixMap = new EcoreEMap<String,String>(EcorePackage.Literals.ESTRING_TO_STRING_MAP_ENTRY, EStringToStringMapEntryImpl.class, this, PushbuttonbuildPackage.DOCUMENT_ROOT__XMLNS_PREFIX_MAP);
+ }
+ return xMLNSPrefixMap;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EMap<String, String> getXSISchemaLocation() {
+ if (xSISchemaLocation == null) {
+ xSISchemaLocation = new EcoreEMap<String,String>(EcorePackage.Literals.ESTRING_TO_STRING_MAP_ENTRY, EStringToStringMapEntryImpl.class, this, PushbuttonbuildPackage.DOCUMENT_ROOT__XSI_SCHEMA_LOCATION);
+ }
+ return xSISchemaLocation;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public BuildType getBuild() {
+ return (BuildType)getMixed().get(PushbuttonbuildPackage.Literals.DOCUMENT_ROOT__BUILD, true);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetBuild(BuildType newBuild, NotificationChain msgs) {
+ return ((FeatureMap.Internal)getMixed()).basicAdd(PushbuttonbuildPackage.Literals.DOCUMENT_ROOT__BUILD, newBuild, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBuild(BuildType newBuild) {
+ ((FeatureMap.Internal)getMixed()).set(PushbuttonbuildPackage.Literals.DOCUMENT_ROOT__BUILD, newBuild);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ExtraZIPType getExtraZIP() {
+ return (ExtraZIPType)getMixed().get(PushbuttonbuildPackage.Literals.DOCUMENT_ROOT__EXTRA_ZIP, true);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetExtraZIP(ExtraZIPType newExtraZIP, NotificationChain msgs) {
+ return ((FeatureMap.Internal)getMixed()).basicAdd(PushbuttonbuildPackage.Literals.DOCUMENT_ROOT__EXTRA_ZIP, newExtraZIP, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setExtraZIP(ExtraZIPType newExtraZIP) {
+ ((FeatureMap.Internal)getMixed()).set(PushbuttonbuildPackage.Literals.DOCUMENT_ROOT__EXTRA_ZIP, newExtraZIP);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case PushbuttonbuildPackage.DOCUMENT_ROOT__MIXED:
+ return ((InternalEList<?>)getMixed()).basicRemove(otherEnd, msgs);
+ case PushbuttonbuildPackage.DOCUMENT_ROOT__XMLNS_PREFIX_MAP:
+ return ((InternalEList<?>)getXMLNSPrefixMap()).basicRemove(otherEnd, msgs);
+ case PushbuttonbuildPackage.DOCUMENT_ROOT__XSI_SCHEMA_LOCATION:
+ return ((InternalEList<?>)getXSISchemaLocation()).basicRemove(otherEnd, msgs);
+ case PushbuttonbuildPackage.DOCUMENT_ROOT__BUILD:
+ return basicSetBuild(null, msgs);
+ case PushbuttonbuildPackage.DOCUMENT_ROOT__EXTRA_ZIP:
+ return basicSetExtraZIP(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case PushbuttonbuildPackage.DOCUMENT_ROOT__MIXED:
+ if (coreType) return getMixed();
+ return ((FeatureMap.Internal)getMixed()).getWrapper();
+ case PushbuttonbuildPackage.DOCUMENT_ROOT__XMLNS_PREFIX_MAP:
+ if (coreType) return getXMLNSPrefixMap();
+ else return getXMLNSPrefixMap().map();
+ case PushbuttonbuildPackage.DOCUMENT_ROOT__XSI_SCHEMA_LOCATION:
+ if (coreType) return getXSISchemaLocation();
+ else return getXSISchemaLocation().map();
+ case PushbuttonbuildPackage.DOCUMENT_ROOT__BUILD:
+ return getBuild();
+ case PushbuttonbuildPackage.DOCUMENT_ROOT__EXTRA_ZIP:
+ return getExtraZIP();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case PushbuttonbuildPackage.DOCUMENT_ROOT__MIXED:
+ ((FeatureMap.Internal)getMixed()).set(newValue);
+ return;
+ case PushbuttonbuildPackage.DOCUMENT_ROOT__XMLNS_PREFIX_MAP:
+ ((EStructuralFeature.Setting)getXMLNSPrefixMap()).set(newValue);
+ return;
+ case PushbuttonbuildPackage.DOCUMENT_ROOT__XSI_SCHEMA_LOCATION:
+ ((EStructuralFeature.Setting)getXSISchemaLocation()).set(newValue);
+ return;
+ case PushbuttonbuildPackage.DOCUMENT_ROOT__BUILD:
+ setBuild((BuildType)newValue);
+ return;
+ case PushbuttonbuildPackage.DOCUMENT_ROOT__EXTRA_ZIP:
+ setExtraZIP((ExtraZIPType)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case PushbuttonbuildPackage.DOCUMENT_ROOT__MIXED:
+ getMixed().clear();
+ return;
+ case PushbuttonbuildPackage.DOCUMENT_ROOT__XMLNS_PREFIX_MAP:
+ getXMLNSPrefixMap().clear();
+ return;
+ case PushbuttonbuildPackage.DOCUMENT_ROOT__XSI_SCHEMA_LOCATION:
+ getXSISchemaLocation().clear();
+ return;
+ case PushbuttonbuildPackage.DOCUMENT_ROOT__BUILD:
+ setBuild((BuildType)null);
+ return;
+ case PushbuttonbuildPackage.DOCUMENT_ROOT__EXTRA_ZIP:
+ setExtraZIP((ExtraZIPType)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case PushbuttonbuildPackage.DOCUMENT_ROOT__MIXED:
+ return mixed != null && !mixed.isEmpty();
+ case PushbuttonbuildPackage.DOCUMENT_ROOT__XMLNS_PREFIX_MAP:
+ return xMLNSPrefixMap != null && !xMLNSPrefixMap.isEmpty();
+ case PushbuttonbuildPackage.DOCUMENT_ROOT__XSI_SCHEMA_LOCATION:
+ return xSISchemaLocation != null && !xSISchemaLocation.isEmpty();
+ case PushbuttonbuildPackage.DOCUMENT_ROOT__BUILD:
+ return getBuild() != null;
+ case PushbuttonbuildPackage.DOCUMENT_ROOT__EXTRA_ZIP:
+ return getExtraZIP() != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (mixed: ");
+ result.append(mixed);
+ result.append(')');
+ return result.toString();
+ }
+
+} //DocumentRootImpl
diff --git a/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/impl/ExtraZIPTypeImpl.java b/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/impl/ExtraZIPTypeImpl.java
new file mode 100644
index 0000000..d53149d
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/impl/ExtraZIPTypeImpl.java
@@ -0,0 +1,168 @@
+/**
+ * <copyright>
+ * Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0.
+ * </copyright>
+ *
+ * $Id: ExtraZIPTypeImpl.java,v 1.1 2008/04/04 15:44:22 pelder Exp $
+ */
+package org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+
+import org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.ExtraZIPType;
+import org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.PushbuttonbuildPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Extra ZIP Type</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl.ExtraZIPTypeImpl#getName <em>Name</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ExtraZIPTypeImpl extends EObjectImpl implements ExtraZIPType {
+ /**
+ * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getName()
+ * @generated
+ * @ordered
+ */
+ protected static final String NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getName()
+ * @generated
+ * @ordered
+ */
+ protected String name = NAME_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ExtraZIPTypeImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return PushbuttonbuildPackage.Literals.EXTRA_ZIP_TYPE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setName(String newName) {
+ String oldName = name;
+ name = newName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, PushbuttonbuildPackage.EXTRA_ZIP_TYPE__NAME, oldName, name));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case PushbuttonbuildPackage.EXTRA_ZIP_TYPE__NAME:
+ return getName();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case PushbuttonbuildPackage.EXTRA_ZIP_TYPE__NAME:
+ setName((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case PushbuttonbuildPackage.EXTRA_ZIP_TYPE__NAME:
+ setName(NAME_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case PushbuttonbuildPackage.EXTRA_ZIP_TYPE__NAME:
+ return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (name: ");
+ result.append(name);
+ result.append(')');
+ return result.toString();
+ }
+
+} //ExtraZIPTypeImpl
diff --git a/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/impl/PushbuttonbuildFactoryImpl.java b/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/impl/PushbuttonbuildFactoryImpl.java
new file mode 100644
index 0000000..8007bbd
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/impl/PushbuttonbuildFactoryImpl.java
@@ -0,0 +1,195 @@
+/**
+ * <copyright>
+ * Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0.
+ * </copyright>
+ *
+ * $Id: PushbuttonbuildFactoryImpl.java,v 1.1 2008/04/04 15:44:22 pelder Exp $
+ */
+package org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+
+import org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class PushbuttonbuildFactoryImpl extends EFactoryImpl implements PushbuttonbuildFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static PushbuttonbuildFactory init() {
+ try {
+ PushbuttonbuildFactory thePushbuttonbuildFactory = (PushbuttonbuildFactory)EPackage.Registry.INSTANCE.getEFactory("http://www.eclipse.org/modeling/pushbuttonbuild/1.0.0");
+ if (thePushbuttonbuildFactory != null) {
+ return thePushbuttonbuildFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new PushbuttonbuildFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public PushbuttonbuildFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case PushbuttonbuildPackage.BUILD_TYPE: return createBuildType();
+ case PushbuttonbuildPackage.DOCUMENT_ROOT: return createDocumentRoot();
+ case PushbuttonbuildPackage.EXTRA_ZIP_TYPE: return createExtraZIPType();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object createFromString(EDataType eDataType, String initialValue) {
+ switch (eDataType.getClassifierID()) {
+ case PushbuttonbuildPackage.JRE_TYPE:
+ return createJreTypeFromString(eDataType, initialValue);
+ case PushbuttonbuildPackage.JRE_TYPE_OBJECT:
+ return createJreTypeObjectFromString(eDataType, initialValue);
+ default:
+ throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String convertToString(EDataType eDataType, Object instanceValue) {
+ switch (eDataType.getClassifierID()) {
+ case PushbuttonbuildPackage.JRE_TYPE:
+ return convertJreTypeToString(eDataType, instanceValue);
+ case PushbuttonbuildPackage.JRE_TYPE_OBJECT:
+ return convertJreTypeObjectToString(eDataType, instanceValue);
+ default:
+ throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public BuildType createBuildType() {
+ BuildTypeImpl buildType = new BuildTypeImpl();
+ return buildType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DocumentRoot createDocumentRoot() {
+ DocumentRootImpl documentRoot = new DocumentRootImpl();
+ return documentRoot;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ExtraZIPType createExtraZIPType() {
+ ExtraZIPTypeImpl extraZIPType = new ExtraZIPTypeImpl();
+ return extraZIPType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public JreType createJreTypeFromString(EDataType eDataType, String initialValue) {
+ JreType result = JreType.get(initialValue);
+ if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
+ return result;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String convertJreTypeToString(EDataType eDataType, Object instanceValue) {
+ return instanceValue == null ? null : instanceValue.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public JreType createJreTypeObjectFromString(EDataType eDataType, String initialValue) {
+ return createJreTypeFromString(PushbuttonbuildPackage.Literals.JRE_TYPE, initialValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String convertJreTypeObjectToString(EDataType eDataType, Object instanceValue) {
+ return convertJreTypeToString(PushbuttonbuildPackage.Literals.JRE_TYPE, instanceValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public PushbuttonbuildPackage getPushbuttonbuildPackage() {
+ return (PushbuttonbuildPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static PushbuttonbuildPackage getPackage() {
+ return PushbuttonbuildPackage.eINSTANCE;
+ }
+
+} //PushbuttonbuildFactoryImpl
diff --git a/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/impl/PushbuttonbuildPackageImpl.java b/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/impl/PushbuttonbuildPackageImpl.java
new file mode 100644
index 0000000..1b0c2c0
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/impl/PushbuttonbuildPackageImpl.java
@@ -0,0 +1,599 @@
+/**
+ * <copyright>
+ * Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0.
+ * </copyright>
+ *
+ * $Id: PushbuttonbuildPackageImpl.java,v 1.1 2008/04/04 15:44:22 pelder Exp $
+ */
+package org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.impl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EEnum;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+
+import org.eclipse.emf.ecore.xml.type.XMLTypePackage;
+
+import org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType;
+import org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.DocumentRoot;
+import org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.ExtraZIPType;
+import org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.JreType;
+import org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.PushbuttonbuildFactory;
+import org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.PushbuttonbuildPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class PushbuttonbuildPackageImpl extends EPackageImpl implements PushbuttonbuildPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass buildTypeEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass documentRootEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass extraZIPTypeEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EEnum jreTypeEEnum = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EDataType jreTypeObjectEDataType = null;
+
+ /**
+ * Creates an instance of the model <b>Package</b>, registered with
+ * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+ * package URI value.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.PushbuttonbuildPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private PushbuttonbuildPackageImpl() {
+ super(eNS_URI, PushbuttonbuildFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * Creates, registers, and initializes the <b>Package</b> for this
+ * model, and for any others upon which it depends. Simple
+ * dependencies are satisfied by calling this method on all
+ * dependent packages before doing anything else. This method drives
+ * initialization for interdependent packages directly, in parallel
+ * with this package, itself.
+ * <p>Of this package and its interdependencies, all packages which
+ * have not yet been registered by their URI values are first created
+ * and registered. The packages are then initialized in two steps:
+ * meta-model objects for all of the packages are created before any
+ * are initialized, since one package's meta-model objects may refer to
+ * those of another.
+ * <p>Invocation of this method will not affect any packages that have
+ * already been initialized.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static PushbuttonbuildPackage init() {
+ if (isInited) return (PushbuttonbuildPackage)EPackage.Registry.INSTANCE.getEPackage(PushbuttonbuildPackage.eNS_URI);
+
+ // Obtain or create and register package
+ PushbuttonbuildPackageImpl thePushbuttonbuildPackage = (PushbuttonbuildPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(eNS_URI) instanceof PushbuttonbuildPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(eNS_URI) : new PushbuttonbuildPackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ XMLTypePackage.eINSTANCE.eClass();
+
+ // Create package meta-data objects
+ thePushbuttonbuildPackage.createPackageContents();
+
+ // Initialize created meta-data
+ thePushbuttonbuildPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ thePushbuttonbuildPackage.freeze();
+
+ return thePushbuttonbuildPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getBuildType() {
+ return buildTypeEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getBuildType_ExtraZIP() {
+ return (EReference)buildTypeEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getBuildType_IsIncubation() {
+ return (EAttribute)buildTypeEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getBuildType_Jre() {
+ return (EAttribute)buildTypeEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getBuildType_NewsgroupPublisherEmail() {
+ return (EAttribute)buildTypeEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getBuildType_ParentProjectName() {
+ return (EAttribute)buildTypeEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getBuildType_ProjectNamespace() {
+ return (EAttribute)buildTypeEClass.getEStructuralFeatures().get(5);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getBuildType_ShortName() {
+ return (EAttribute)buildTypeEClass.getEStructuralFeatures().get(6);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getBuildType_TestsAreJarred() {
+ return (EAttribute)buildTypeEClass.getEStructuralFeatures().get(7);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getBuildType_NewsgroupPublisherName() {
+ return (EAttribute)buildTypeEClass.getEStructuralFeatures().get(8);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getDocumentRoot() {
+ return documentRootEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getDocumentRoot_Mixed() {
+ return (EAttribute)documentRootEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDocumentRoot_XMLNSPrefixMap() {
+ return (EReference)documentRootEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDocumentRoot_XSISchemaLocation() {
+ return (EReference)documentRootEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDocumentRoot_Build() {
+ return (EReference)documentRootEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDocumentRoot_ExtraZIP() {
+ return (EReference)documentRootEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getExtraZIPType() {
+ return extraZIPTypeEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getExtraZIPType_Name() {
+ return (EAttribute)extraZIPTypeEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EEnum getJreType() {
+ return jreTypeEEnum;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EDataType getJreTypeObject() {
+ return jreTypeObjectEDataType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public PushbuttonbuildFactory getPushbuttonbuildFactory() {
+ return (PushbuttonbuildFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ buildTypeEClass = createEClass(BUILD_TYPE);
+ createEReference(buildTypeEClass, BUILD_TYPE__EXTRA_ZIP);
+ createEAttribute(buildTypeEClass, BUILD_TYPE__IS_INCUBATION);
+ createEAttribute(buildTypeEClass, BUILD_TYPE__JRE);
+ createEAttribute(buildTypeEClass, BUILD_TYPE__NEWSGROUP_PUBLISHER_EMAIL);
+ createEAttribute(buildTypeEClass, BUILD_TYPE__PARENT_PROJECT_NAME);
+ createEAttribute(buildTypeEClass, BUILD_TYPE__PROJECT_NAMESPACE);
+ createEAttribute(buildTypeEClass, BUILD_TYPE__SHORT_NAME);
+ createEAttribute(buildTypeEClass, BUILD_TYPE__TESTS_ARE_JARRED);
+ createEAttribute(buildTypeEClass, BUILD_TYPE__NEWSGROUP_PUBLISHER_NAME);
+
+ documentRootEClass = createEClass(DOCUMENT_ROOT);
+ createEAttribute(documentRootEClass, DOCUMENT_ROOT__MIXED);
+ createEReference(documentRootEClass, DOCUMENT_ROOT__XMLNS_PREFIX_MAP);
+ createEReference(documentRootEClass, DOCUMENT_ROOT__XSI_SCHEMA_LOCATION);
+ createEReference(documentRootEClass, DOCUMENT_ROOT__BUILD);
+ createEReference(documentRootEClass, DOCUMENT_ROOT__EXTRA_ZIP);
+
+ extraZIPTypeEClass = createEClass(EXTRA_ZIP_TYPE);
+ createEAttribute(extraZIPTypeEClass, EXTRA_ZIP_TYPE__NAME);
+
+ // Create enums
+ jreTypeEEnum = createEEnum(JRE_TYPE);
+
+ // Create data types
+ jreTypeObjectEDataType = createEDataType(JRE_TYPE_OBJECT);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ XMLTypePackage theXMLTypePackage = (XMLTypePackage)EPackage.Registry.INSTANCE.getEPackage(XMLTypePackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+
+ // Initialize classes and features; add operations and parameters
+ initEClass(buildTypeEClass, BuildType.class, "BuildType", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getBuildType_ExtraZIP(), this.getExtraZIPType(), null, "extraZIP", null, 0, -1, BuildType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getBuildType_IsIncubation(), theXMLTypePackage.getBoolean(), "isIncubation", null, 1, 1, BuildType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getBuildType_Jre(), this.getJreType(), "jre", "J2SE-1.4", 1, 1, BuildType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getBuildType_NewsgroupPublisherEmail(), theXMLTypePackage.getString(), "newsgroupPublisherEmail", null, 1, 1, BuildType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getBuildType_ParentProjectName(), theXMLTypePackage.getString(), "parentProjectName", null, 1, 1, BuildType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getBuildType_ProjectNamespace(), theXMLTypePackage.getString(), "projectNamespace", null, 1, 1, BuildType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getBuildType_ShortName(), theXMLTypePackage.getString(), "shortName", null, 1, 1, BuildType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getBuildType_TestsAreJarred(), theXMLTypePackage.getBoolean(), "testsAreJarred", null, 1, 1, BuildType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getBuildType_NewsgroupPublisherName(), theXMLTypePackage.getString(), "newsgroupPublisherName", null, 1, 1, BuildType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(documentRootEClass, DocumentRoot.class, "DocumentRoot", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getDocumentRoot_Mixed(), ecorePackage.getEFeatureMapEntry(), "mixed", null, 0, -1, null, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDocumentRoot_XMLNSPrefixMap(), ecorePackage.getEStringToStringMapEntry(), null, "xMLNSPrefixMap", null, 0, -1, null, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDocumentRoot_XSISchemaLocation(), ecorePackage.getEStringToStringMapEntry(), null, "xSISchemaLocation", null, 0, -1, null, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDocumentRoot_Build(), this.getBuildType(), null, "build", null, 0, -2, null, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
+ initEReference(getDocumentRoot_ExtraZIP(), this.getExtraZIPType(), null, "extraZIP", null, 0, -2, null, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
+
+ initEClass(extraZIPTypeEClass, ExtraZIPType.class, "ExtraZIPType", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getExtraZIPType_Name(), theXMLTypePackage.getString(), "name", null, 1, 1, ExtraZIPType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ // Initialize enums and add enum literals
+ initEEnum(jreTypeEEnum, JreType.class, "JreType");
+ addEEnumLiteral(jreTypeEEnum, JreType.J2SE14);
+ addEEnumLiteral(jreTypeEEnum, JreType.J2SE15);
+
+ // Initialize data types
+ initEDataType(jreTypeObjectEDataType, JreType.class, "JreTypeObject", IS_SERIALIZABLE, IS_GENERATED_INSTANCE_CLASS);
+
+ // Create resource
+ createResource(eNS_URI);
+
+ // Create annotations
+ // http:///org/eclipse/emf/ecore/util/ExtendedMetaData
+ createExtendedMetaDataAnnotations();
+ }
+
+ /**
+ * Initializes the annotations for <b>http:///org/eclipse/emf/ecore/util/ExtendedMetaData</b>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void createExtendedMetaDataAnnotations() {
+ String source = "http:///org/eclipse/emf/ecore/util/ExtendedMetaData";
+ addAnnotation
+ (buildTypeEClass,
+ source,
+ new String[] {
+ "name", "build_._type",
+ "kind", "elementOnly"
+ });
+ addAnnotation
+ (getBuildType_ExtraZIP(),
+ source,
+ new String[] {
+ "kind", "element",
+ "name", "extraZIP",
+ "namespace", "##targetNamespace"
+ });
+ addAnnotation
+ (getBuildType_IsIncubation(),
+ source,
+ new String[] {
+ "kind", "attribute",
+ "name", "isIncubation"
+ });
+ addAnnotation
+ (getBuildType_Jre(),
+ source,
+ new String[] {
+ "kind", "attribute",
+ "name", "jre"
+ });
+ addAnnotation
+ (getBuildType_NewsgroupPublisherEmail(),
+ source,
+ new String[] {
+ "kind", "attribute",
+ "name", "newsgroupPublisherEmail"
+ });
+ addAnnotation
+ (getBuildType_ParentProjectName(),
+ source,
+ new String[] {
+ "kind", "attribute",
+ "name", "parentProjectName"
+ });
+ addAnnotation
+ (getBuildType_ProjectNamespace(),
+ source,
+ new String[] {
+ "kind", "attribute",
+ "name", "projectNamespace"
+ });
+ addAnnotation
+ (getBuildType_ShortName(),
+ source,
+ new String[] {
+ "kind", "attribute",
+ "name", "shortName"
+ });
+ addAnnotation
+ (getBuildType_TestsAreJarred(),
+ source,
+ new String[] {
+ "kind", "attribute",
+ "name", "testsAreJarred"
+ });
+ addAnnotation
+ (getBuildType_NewsgroupPublisherName(),
+ source,
+ new String[] {
+ "kind", "attribute",
+ "name", "newsgroupPublisherName"
+ });
+ addAnnotation
+ (documentRootEClass,
+ source,
+ new String[] {
+ "name", "",
+ "kind", "mixed"
+ });
+ addAnnotation
+ (getDocumentRoot_Mixed(),
+ source,
+ new String[] {
+ "kind", "elementWildcard",
+ "name", ":mixed"
+ });
+ addAnnotation
+ (getDocumentRoot_XMLNSPrefixMap(),
+ source,
+ new String[] {
+ "kind", "attribute",
+ "name", "xmlns:prefix"
+ });
+ addAnnotation
+ (getDocumentRoot_XSISchemaLocation(),
+ source,
+ new String[] {
+ "kind", "attribute",
+ "name", "xsi:schemaLocation"
+ });
+ addAnnotation
+ (getDocumentRoot_Build(),
+ source,
+ new String[] {
+ "kind", "element",
+ "name", "build",
+ "namespace", "##targetNamespace"
+ });
+ addAnnotation
+ (getDocumentRoot_ExtraZIP(),
+ source,
+ new String[] {
+ "kind", "element",
+ "name", "extraZIP",
+ "namespace", "##targetNamespace"
+ });
+ addAnnotation
+ (extraZIPTypeEClass,
+ source,
+ new String[] {
+ "name", "extraZIP_._type",
+ "kind", "empty"
+ });
+ addAnnotation
+ (getExtraZIPType_Name(),
+ source,
+ new String[] {
+ "kind", "attribute",
+ "name", "name"
+ });
+ addAnnotation
+ (jreTypeEEnum,
+ source,
+ new String[] {
+ "name", "jre_._type"
+ });
+ addAnnotation
+ (jreTypeObjectEDataType,
+ source,
+ new String[] {
+ "name", "jre_._type:Object",
+ "baseType", "jre_._type"
+ });
+ }
+
+} //PushbuttonbuildPackageImpl
diff --git a/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/util/PushbuttonbuildAdapterFactory.java b/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/util/PushbuttonbuildAdapterFactory.java
new file mode 100644
index 0000000..506cfa0
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/util/PushbuttonbuildAdapterFactory.java
@@ -0,0 +1,161 @@
+/**
+ * <copyright>
+ * Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0.
+ * </copyright>
+ *
+ * $Id: PushbuttonbuildAdapterFactory.java,v 1.1 2008/04/04 15:44:22 pelder Exp $
+ */
+package org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.PushbuttonbuildPackage
+ * @generated
+ */
+public class PushbuttonbuildAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static PushbuttonbuildPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public PushbuttonbuildAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = PushbuttonbuildPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected PushbuttonbuildSwitch<Adapter> modelSwitch =
+ new PushbuttonbuildSwitch<Adapter>() {
+ @Override
+ public Adapter caseBuildType(BuildType object) {
+ return createBuildTypeAdapter();
+ }
+ @Override
+ public Adapter caseDocumentRoot(DocumentRoot object) {
+ return createDocumentRootAdapter();
+ }
+ @Override
+ public Adapter caseExtraZIPType(ExtraZIPType object) {
+ return createExtraZIPTypeAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType <em>Build Type</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType
+ * @generated
+ */
+ public Adapter createBuildTypeAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.DocumentRoot <em>Document Root</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.DocumentRoot
+ * @generated
+ */
+ public Adapter createDocumentRootAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.ExtraZIPType <em>Extra ZIP Type</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.ExtraZIPType
+ * @generated
+ */
+ public Adapter createExtraZIPTypeAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //PushbuttonbuildAdapterFactory
diff --git a/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/util/PushbuttonbuildResourceFactoryImpl.java b/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/util/PushbuttonbuildResourceFactoryImpl.java
new file mode 100644
index 0000000..2f058c5
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/util/PushbuttonbuildResourceFactoryImpl.java
@@ -0,0 +1,57 @@
+/**
+ * <copyright>
+ * Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0.
+ * </copyright>
+ *
+ * $Id: PushbuttonbuildResourceFactoryImpl.java,v 1.1 2008/04/04 15:44:22 pelder Exp $
+ */
+package org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.util;
+
+import org.eclipse.emf.common.util.URI;
+
+import org.eclipse.emf.ecore.resource.Resource;
+
+import org.eclipse.emf.ecore.resource.impl.ResourceFactoryImpl;
+
+import org.eclipse.emf.ecore.xmi.XMLResource;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Resource Factory</b> associated with the package.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.util.PushbuttonbuildResourceImpl
+ * @generated
+ */
+public class PushbuttonbuildResourceFactoryImpl extends ResourceFactoryImpl {
+ /**
+ * Creates an instance of the resource factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public PushbuttonbuildResourceFactoryImpl() {
+ super();
+ }
+
+ /**
+ * Creates an instance of the resource.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Resource createResource(URI uri) {
+ XMLResource result = new PushbuttonbuildResourceImpl(uri);
+ result.getDefaultSaveOptions().put(XMLResource.OPTION_EXTENDED_META_DATA, Boolean.TRUE);
+ result.getDefaultLoadOptions().put(XMLResource.OPTION_EXTENDED_META_DATA, Boolean.TRUE);
+
+ result.getDefaultSaveOptions().put(XMLResource.OPTION_SCHEMA_LOCATION, Boolean.TRUE);
+
+ result.getDefaultLoadOptions().put(XMLResource.OPTION_USE_ENCODED_ATTRIBUTE_STYLE, Boolean.TRUE);
+ result.getDefaultSaveOptions().put(XMLResource.OPTION_USE_ENCODED_ATTRIBUTE_STYLE, Boolean.TRUE);
+
+ result.getDefaultLoadOptions().put(XMLResource.OPTION_USE_LEXICAL_HANDLER, Boolean.TRUE);
+ return result;
+ }
+
+} //PushbuttonbuildResourceFactoryImpl
diff --git a/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/util/PushbuttonbuildResourceImpl.java b/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/util/PushbuttonbuildResourceImpl.java
new file mode 100644
index 0000000..0442873
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/util/PushbuttonbuildResourceImpl.java
@@ -0,0 +1,33 @@
+/**
+ * <copyright>
+ * Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0.
+ * </copyright>
+ *
+ * $Id: PushbuttonbuildResourceImpl.java,v 1.1 2008/04/04 15:44:22 pelder Exp $
+ */
+package org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.util;
+
+import org.eclipse.emf.common.util.URI;
+
+import org.eclipse.emf.ecore.xmi.impl.XMLResourceImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Resource </b> associated with the package.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.util.PushbuttonbuildResourceFactoryImpl
+ * @generated
+ */
+public class PushbuttonbuildResourceImpl extends XMLResourceImpl {
+ /**
+ * Creates an instance of the resource.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param uri the URI of the new resource.
+ * @generated
+ */
+ public PushbuttonbuildResourceImpl(URI uri) {
+ super(uri);
+ }
+
+} //PushbuttonbuildResourceImpl
diff --git a/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/util/PushbuttonbuildSwitch.java b/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/util/PushbuttonbuildSwitch.java
new file mode 100644
index 0000000..0fd0cad
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/util/PushbuttonbuildSwitch.java
@@ -0,0 +1,173 @@
+/**
+ * <copyright>
+ * Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0.
+ * </copyright>
+ *
+ * $Id: PushbuttonbuildSwitch.java,v 1.1 2008/04/04 15:44:22 pelder Exp $
+ */
+package org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.util;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.PushbuttonbuildPackage
+ * @generated
+ */
+public class PushbuttonbuildSwitch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static PushbuttonbuildPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public PushbuttonbuildSwitch() {
+ if (modelPackage == null) {
+ modelPackage = PushbuttonbuildPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ public T doSwitch(EObject theEObject) {
+ return doSwitch(theEObject.eClass(), theEObject);
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T doSwitch(EClass theEClass, EObject theEObject) {
+ if (theEClass.eContainer() == modelPackage) {
+ return doSwitch(theEClass.getClassifierID(), theEObject);
+ }
+ else {
+ List<EClass> eSuperTypes = theEClass.getESuperTypes();
+ return
+ eSuperTypes.isEmpty() ?
+ defaultCase(theEObject) :
+ doSwitch(eSuperTypes.get(0), theEObject);
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case PushbuttonbuildPackage.BUILD_TYPE: {
+ BuildType buildType = (BuildType)theEObject;
+ T result = caseBuildType(buildType);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case PushbuttonbuildPackage.DOCUMENT_ROOT: {
+ DocumentRoot documentRoot = (DocumentRoot)theEObject;
+ T result = caseDocumentRoot(documentRoot);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case PushbuttonbuildPackage.EXTRA_ZIP_TYPE: {
+ ExtraZIPType extraZIPType = (ExtraZIPType)theEObject;
+ T result = caseExtraZIPType(extraZIPType);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Build Type</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Build Type</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseBuildType(BuildType object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Document Root</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Document Root</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDocumentRoot(DocumentRoot object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Extra ZIP Type</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Extra ZIP Type</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseExtraZIPType(ExtraZIPType object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //PushbuttonbuildSwitch
diff --git a/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/util/PushbuttonbuildXMLProcessor.java b/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/util/PushbuttonbuildXMLProcessor.java
new file mode 100644
index 0000000..e4da220
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pbpmodel/src/org/eclipse/jet/ec2008/pbpmodel/pushbuttonbuild/util/PushbuttonbuildXMLProcessor.java
@@ -0,0 +1,55 @@
+/**
+ * <copyright>
+ * Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0.
+ * </copyright>
+ *
+ * $Id: PushbuttonbuildXMLProcessor.java,v 1.1 2008/04/04 15:44:22 pelder Exp $
+ */
+package org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.util;
+
+import java.util.Map;
+
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.resource.Resource;
+
+import org.eclipse.emf.ecore.xmi.util.XMLProcessor;
+
+import org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.PushbuttonbuildPackage;
+
+/**
+ * This class contains helper methods to serialize and deserialize XML documents
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class PushbuttonbuildXMLProcessor extends XMLProcessor {
+
+ /**
+ * Public constructor to instantiate the helper.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public PushbuttonbuildXMLProcessor() {
+ super((EPackage.Registry.INSTANCE));
+ PushbuttonbuildPackage.eINSTANCE.eClass();
+ }
+
+ /**
+ * Register for "*" and "xml" file extensions the PushbuttonbuildResourceFactoryImpl factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected Map<String, Resource.Factory> getRegistrations() {
+ if (registrations == null) {
+ super.getRegistrations();
+ registrations.put(XML_EXTENSION, new PushbuttonbuildResourceFactoryImpl());
+ registrations.put(STAR_EXTENSION, new PushbuttonbuildResourceFactoryImpl());
+ }
+ return registrations;
+ }
+
+} //PushbuttonbuildXMLProcessor
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/.classpath b/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/.classpath
new file mode 100644
index 0000000..304e861
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/.project b/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/.project
new file mode 100644
index 0000000..937e241
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.jet.ec2008.pushbuttonbuild.wizard</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/.settings/org.eclipse.jdt.core.prefs b/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..3ae5b74
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@
+#Mon Mar 17 15:11:45 PDT 2008
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.5
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/META-INF/MANIFEST.MF b/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..a17f956
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/META-INF/MANIFEST.MF
@@ -0,0 +1,13 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: Wizard Plug-in
+Bundle-SymbolicName: org.eclipse.jet.ec2008.pushbuttonbuild.wizard;singleton:=true
+Bundle-Version: 1.0.0
+Bundle-Activator: org.eclipse.jet.ec2008.pushbuttonbuild.wizard.Activator
+Require-Bundle: org.eclipse.ui,
+ org.eclipse.core.runtime,
+ org.eclipse.jet.ec2008.pbpmodel,
+ org.eclipse.jet;bundle-version="0.9.0"
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Bundle-ActivationPolicy: lazy
+Export-Package: org.eclipse.jet.ec2008.pushbuttonbuild.wizard
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/build.properties b/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/build.properties
new file mode 100644
index 0000000..e9863e2
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/build.properties
@@ -0,0 +1,5 @@
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ plugin.xml
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/icons/sample.gif b/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/icons/sample.gif
new file mode 100644
index 0000000..34fb3c9
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/icons/sample.gif
Binary files differ
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/plugin.xml b/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/plugin.xml
new file mode 100644
index 0000000..eb3d635
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/plugin.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.2"?>
+<plugin>
+ <extension
+ point="org.eclipse.ui.newWizards">
+ <category
+ id="org.eclipse.jet.ec2008.pushbuttonbuild"
+ name="Push Button Build">
+ </category>
+ <wizard
+ class="org.eclipse.jet.ec2008.pushbuttonbuild.wizard.NewRelengProjectWizard"
+ icon="icons/sample.gif"
+ id="org.eclipse.jet.ec2008.pushbuttonbuild.wizard"
+ name="Releng Project for Push Button Build"
+ project="true">
+ </wizard>
+ </extension>
+
+</plugin>
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/src/org/eclipse/jet/ec2008/pushbuttonbuild/wizard/Activator.java b/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/src/org/eclipse/jet/ec2008/pushbuttonbuild/wizard/Activator.java
new file mode 100644
index 0000000..9fbcf07
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/src/org/eclipse/jet/ec2008/pushbuttonbuild/wizard/Activator.java
@@ -0,0 +1,51 @@
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+package org.eclipse.jet.ec2008.pushbuttonbuild.wizard;
+
+import org.eclipse.ui.plugin.AbstractUIPlugin;
+import org.osgi.framework.BundleContext;
+
+/**
+ * The activator class controls the plug-in life cycle
+ */
+public class Activator extends AbstractUIPlugin {
+
+ // The plug-in ID
+ public static final String PLUGIN_ID = "org.eclipse.jet.ec2008.pushbuttonbuild.wizard";
+
+ // The shared instance
+ private static Activator plugin;
+
+ /**
+ * The constructor
+ */
+ public Activator() {
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext)
+ */
+ public void start(BundleContext context) throws Exception {
+ super.start(context);
+ plugin = this;
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext)
+ */
+ public void stop(BundleContext context) throws Exception {
+ plugin = null;
+ super.stop(context);
+ }
+
+ /**
+ * Returns the shared instance
+ *
+ * @return the shared instance
+ */
+ public static Activator getDefault() {
+ return plugin;
+ }
+
+}
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/src/org/eclipse/jet/ec2008/pushbuttonbuild/wizard/NewRelengProjectPage.java b/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/src/org/eclipse/jet/ec2008/pushbuttonbuild/wizard/NewRelengProjectPage.java
new file mode 100644
index 0000000..139fc88
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/src/org/eclipse/jet/ec2008/pushbuttonbuild/wizard/NewRelengProjectPage.java
@@ -0,0 +1,366 @@
+/**
+ * Generated by org.eclipse.jet.ec2008.swtgen.codebehind from /org.eclipse.jet.ec2008.pushbuttonbuild.wizard/wizardPages/NewRelengProjectPage.xml
+ */
+package org.eclipse.jet.ec2008.pushbuttonbuild.wizard;
+
+
+import org.eclipse.jface.layout.GridDataFactory;
+import org.eclipse.jface.layout.GridLayoutFactory;
+
+import org.eclipse.swt.events.SelectionAdapter;
+import org.eclipse.swt.events.SelectionEvent;
+
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Combo;
+import org.eclipse.swt.widgets.Group;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.List;
+import org.eclipse.swt.widgets.Text;
+
+import org.eclipse.jface.dialogs.Dialog;
+import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.jface.wizard.WizardPage;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.SWT;
+
+/**
+ *
+ */
+public class NewRelengProjectPage extends WizardPage {
+
+ /**
+ * Code behind class for NewRelengProjectPage
+ */
+ public static interface CodeBehind {
+
+ /**
+ * Perform any control required initialization. This method is called
+ * by {@link NewRelengProjectPage#createControl(Composite parent)}
+ */
+ public abstract void doInitControls();
+
+ /**
+ * Set the wizardPage of the code-behind class. This method is called by the
+ * wizard page constructor on the passed codeBehind class.
+ */
+ public abstract void setWizardPage(NewRelengProjectPage wizardPage);
+
+ /**
+ * Handle Selection event for bAdd
+ */
+ public abstract void bAdd_selected(SelectionEvent e);
+
+ /**
+ * Handle Selection event for bRemove
+ */
+ public abstract void bRemove_selected(SelectionEvent e);
+
+ }
+
+ public Text txtParentProjectName;
+
+ public Text txtShortName;
+
+ public Text txtProjectNamespace;
+
+ public Text txtNewsgroupPublisherName;
+
+ public Text txtNewsgroupPublisherEmail;
+
+ public Combo ddlbJRE;
+
+ public Button cbxTestsAreJarred;
+
+ public Button cbxIsIncubation;
+
+ public List lstExtraJars;
+
+ public Button bAdd;
+
+ public Button bRemove;
+
+
+ private final CodeBehind codeBehind;
+
+ /**
+ * @param pageName
+ */
+ public NewRelengProjectPage(String pageName, CodeBehind codeBehind) {
+ super(pageName);
+ this.codeBehind = codeBehind;
+ codeBehind.setWizardPage(this);
+ }
+
+ /**
+ * @param pageName
+ * @param title
+ * @param titleImage
+ */
+ public NewRelengProjectPage(String pageName, String title,
+ ImageDescriptor titleImage, CodeBehind codeBehind) {
+ super(pageName, title, titleImage);
+ this.codeBehind = codeBehind;
+ codeBehind.setWizardPage(this);
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.jface.dialogs.IDialogPage#createControl(org.eclipse.swt.widgets.Composite)
+ */
+ public void createControl(Composite parent) {
+ initializeDialogUnits(parent);
+
+ Composite relengComposite
+ = new Composite(
+ parent,
+ SWT.NONE
+ );
+
+ GridLayoutFactory.swtDefaults()
+ .numColumns(2)
+ .applyTo(relengComposite);
+
+ GridDataFactory.defaultsFor(relengComposite)
+ .applyTo(relengComposite);
+
+ Label lblParentProjectName
+ = new Label(
+ relengComposite,
+ SWT.NONE
+ );
+ lblParentProjectName.setText("&Parent project name: ");
+ GridDataFactory.defaultsFor(lblParentProjectName)
+ .applyTo(lblParentProjectName);
+
+ txtParentProjectName
+ = new Text(
+ relengComposite,
+ SWT.NONE
+ |SWT.BORDER
+ );
+ GridDataFactory.defaultsFor(txtParentProjectName)
+ .align(SWT.FILL, SWT.BEGINNING)
+ .grab(true, false)
+ .applyTo(txtParentProjectName);
+
+ Label lblShortName
+ = new Label(
+ relengComposite,
+ SWT.NONE
+ );
+ lblShortName.setText("&Short name: ");
+ GridDataFactory.defaultsFor(lblShortName)
+ .applyTo(lblShortName);
+
+ txtShortName
+ = new Text(
+ relengComposite,
+ SWT.NONE
+ |SWT.BORDER
+ );
+ GridDataFactory.defaultsFor(txtShortName)
+ .align(SWT.FILL, SWT.BEGINNING)
+ .grab(true, false)
+ .applyTo(txtShortName);
+
+ Label lblProjectNamespace
+ = new Label(
+ relengComposite,
+ SWT.NONE
+ );
+ lblProjectNamespace.setText("Project N&amespace: ");
+ GridDataFactory.defaultsFor(lblProjectNamespace)
+ .applyTo(lblProjectNamespace);
+
+ txtProjectNamespace
+ = new Text(
+ relengComposite,
+ SWT.NONE
+ |SWT.BORDER
+ );
+ GridDataFactory.defaultsFor(txtProjectNamespace)
+ .align(SWT.FILL, SWT.BEGINNING)
+ .grab(true, false)
+ .applyTo(txtProjectNamespace);
+
+ Group grpBuildNotifications
+ = new Group(
+ relengComposite,
+ SWT.NONE
+ );
+ grpBuildNotifications.setText("Build Notifications");
+
+ GridLayoutFactory.swtDefaults()
+ .numColumns(2)
+ .applyTo(grpBuildNotifications);
+ GridDataFactory.defaultsFor(grpBuildNotifications)
+ .align(SWT.FILL, SWT.BEGINNING)
+ .grab(true, false)
+ .span(2, 1)
+ .applyTo(grpBuildNotifications);
+
+ Label lblNewsgroupPublisherName
+ = new Label(
+ grpBuildNotifications,
+ SWT.NONE
+ );
+ lblNewsgroupPublisherName.setText("Name of sender: ");
+ GridDataFactory.defaultsFor(lblNewsgroupPublisherName)
+ .applyTo(lblNewsgroupPublisherName);
+
+ txtNewsgroupPublisherName
+ = new Text(
+ grpBuildNotifications,
+ SWT.NONE
+ |SWT.BORDER
+ );
+ GridDataFactory.defaultsFor(txtNewsgroupPublisherName)
+ .align(SWT.FILL, SWT.BEGINNING)
+ .grab(true, false)
+ .applyTo(txtNewsgroupPublisherName);
+
+ Label lblNewsgroupPublisherEmail
+ = new Label(
+ grpBuildNotifications,
+ SWT.NONE
+ );
+ lblNewsgroupPublisherEmail.setText("E-mail address of sender: ");
+ GridDataFactory.defaultsFor(lblNewsgroupPublisherEmail)
+ .applyTo(lblNewsgroupPublisherEmail);
+
+ txtNewsgroupPublisherEmail
+ = new Text(
+ grpBuildNotifications,
+ SWT.NONE
+ |SWT.BORDER
+ );
+ GridDataFactory.defaultsFor(txtNewsgroupPublisherEmail)
+ .align(SWT.FILL, SWT.BEGINNING)
+ .grab(true, false)
+ .applyTo(txtNewsgroupPublisherEmail);
+
+ Label lblJRE
+ = new Label(
+ relengComposite,
+ SWT.NONE
+ );
+ lblJRE.setText("Minimum &JRE: ");
+ GridDataFactory.defaultsFor(lblJRE)
+ .applyTo(lblJRE);
+
+ ddlbJRE
+ = new Combo(
+ relengComposite,
+ SWT.NONE
+ |SWT.READ_ONLY
+ |SWT.DROP_DOWN
+ );
+ ddlbJRE.add("J2SE-1.4");
+ ddlbJRE.add("J2SE-1.5");
+ ddlbJRE.setText("J2SE-1.5");
+ GridDataFactory.defaultsFor(ddlbJRE)
+ .align(SWT.FILL, SWT.BEGINNING)
+ .grab(true, false)
+ .applyTo(ddlbJRE);
+
+ cbxTestsAreJarred
+ = new Button(
+ relengComposite,
+ SWT.CHECK
+ );
+ cbxTestsAreJarred.setText("Tests plug-ins are JAR'd");
+ cbxTestsAreJarred.setSelection(true);
+ GridDataFactory.defaultsFor(cbxTestsAreJarred)
+ .span(2, 1)
+ .applyTo(cbxTestsAreJarred);
+
+ cbxIsIncubation
+ = new Button(
+ relengComposite,
+ SWT.CHECK
+ );
+ cbxIsIncubation.setText("Incubating component/projet");
+ cbxIsIncubation.setSelection(true);
+ GridDataFactory.defaultsFor(cbxIsIncubation)
+ .span(2, 1)
+ .applyTo(cbxIsIncubation);
+
+ Group grpExtraJars
+ = new Group(
+ relengComposite,
+ SWT.NONE
+ );
+ grpExtraJars.setText("Extra JARs to build");
+
+ GridLayoutFactory.swtDefaults()
+ .numColumns(2)
+ .applyTo(grpExtraJars);
+ GridDataFactory.defaultsFor(grpExtraJars)
+ .align(SWT.FILL, SWT.BEGINNING)
+ .span(2, 1)
+ .applyTo(grpExtraJars);
+
+ lstExtraJars
+ = new List(
+ grpExtraJars,
+ SWT.NONE
+ |SWT.BORDER
+ |SWT.SINGLE
+ );
+ GridDataFactory.defaultsFor(lstExtraJars)
+ .align(SWT.FILL, SWT.BEGINNING)
+ .grab(true, true)
+ .span(1, 2)
+ .applyTo(lstExtraJars);
+
+ bAdd
+ = new Button(
+ grpExtraJars,
+ SWT.PUSH
+ );
+ bAdd.setText("Add...");
+ GridDataFactory.defaultsFor(bAdd)
+ .applyTo(bAdd);
+ bAdd.addSelectionListener( new SelectionAdapter() {
+ public void widgetSelected(SelectionEvent e) {
+ if(codeBehind != null) {
+ codeBehind.bAdd_selected(e);
+ }
+
+ }});
+
+ bRemove
+ = new Button(
+ grpExtraJars,
+ SWT.PUSH
+ );
+ bRemove.setText("Remove");
+ GridDataFactory.defaultsFor(bRemove)
+ .applyTo(bRemove);
+ bRemove.addSelectionListener( new SelectionAdapter() {
+ public void widgetSelected(SelectionEvent e) {
+ if(codeBehind != null) {
+ codeBehind.bRemove_selected(e);
+ }
+
+ }});
+
+
+ setControl(relengComposite);
+ Dialog.applyDialogFont(relengComposite);
+
+ if(codeBehind != null) {
+ codeBehind.doInitControls();
+ }
+ }
+
+ @Override
+ public void setVisible(boolean visible) {
+ super.setVisible(visible);
+
+ if(visible) {
+ txtParentProjectName.setFocus();
+ }
+
+ }
+
+}
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/src/org/eclipse/jet/ec2008/pushbuttonbuild/wizard/NewRelengProjectPageCode.java b/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/src/org/eclipse/jet/ec2008/pushbuttonbuild/wizard/NewRelengProjectPageCode.java
new file mode 100644
index 0000000..53de511
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/src/org/eclipse/jet/ec2008/pushbuttonbuild/wizard/NewRelengProjectPageCode.java
@@ -0,0 +1,99 @@
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+/*
+ * Generated by org.eclipse.jet.ec2008.swtgen.codebehind from /org.eclipse.jet.ec2008.pushbuttonbuild.wizard/wizardPages/NewRelengProjectPage.xml.
+ * This class will not be modified by the transformation
+ */
+package org.eclipse.jet.ec2008.pushbuttonbuild.wizard;
+
+
+import org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.BuildType;
+import org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.DocumentRoot;
+import org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.ExtraZIPType;
+import org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.JreType;
+import org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.PushbuttonbuildFactory;
+import org.eclipse.jface.dialogs.IInputValidator;
+import org.eclipse.jface.dialogs.InputDialog;
+import org.eclipse.swt.events.SelectionEvent;
+
+/**
+ *
+ */
+public class NewRelengProjectPageCode implements
+ NewRelengProjectPage.CodeBehind {
+
+ private NewRelengProjectPage wizardPage;
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.eclipse.jet.ec2008.pushbuttonbuild.wizard.NewRelengProjectPage.CodeBehind#setWizardPage(org.eclipse.jet.ec2008.pushbuttonbuild.wizard.NewRelengProjectPage)
+ */
+ public void setWizardPage(NewRelengProjectPage wizardPage) {
+ this.wizardPage = wizardPage;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.eclipse.jet.ec2008.pushbuttonbuild.wizard.NewRelengProjectPage.CodeBehind#doInitControls()
+ */
+ public void doInitControls() {
+ // TODO Generated init method
+ }
+
+ public void bAdd_selected(SelectionEvent e) {
+ InputDialog dialog = new InputDialog(wizardPage.getShell(),
+ "Add Extra ZIP:", "Enter ZIP base name", null,
+ new IInputValidator() {
+
+ public String isValid(String newText) {
+ return newText.length() > 0 ? null
+ : "Enter a base name";
+ }
+ });
+
+ int result = dialog.open();
+
+ if (result == InputDialog.OK) {
+ wizardPage.lstExtraJars.add(dialog.getValue());
+ }
+ }
+
+ public void bRemove_selected(SelectionEvent e) {
+ int index = wizardPage.lstExtraJars.getSelectionIndex();
+ if(index >= 0) {
+ wizardPage.lstExtraJars.remove(index);
+ }
+ }
+
+ public DocumentRoot getStuff() {
+ PushbuttonbuildFactory factory = PushbuttonbuildFactory.eINSTANCE;
+ DocumentRoot dr = factory.createDocumentRoot();
+
+ BuildType build = factory.createBuildType();
+ build.setIsIncubation(wizardPage.cbxIsIncubation.getSelection());
+ build.setJre(JreType.get(wizardPage.ddlbJRE.getText().trim()));
+ build.setNewsgroupPublisherName(wizardPage.txtNewsgroupPublisherName
+ .getText().trim());
+ build.setNewsgroupPublisherEmail(wizardPage.txtNewsgroupPublisherEmail
+ .getText().trim());
+ build.setParentProjectName(wizardPage.txtParentProjectName.getText()
+ .trim());
+ build.setProjectNamespace(wizardPage.txtProjectNamespace.getText()
+ .trim());
+ build.setShortName(wizardPage.txtShortName.getText().trim());
+ build.setTestsAreJarred(wizardPage.cbxTestsAreJarred.getSelection());
+
+ String[] items = wizardPage.lstExtraJars.getItems();
+ for (String item : items) {
+ ExtraZIPType extraZIP = factory.createExtraZIPType();
+ extraZIP.setName(item);
+
+ build.getExtraZIP().add(extraZIP);
+ }
+
+ dr.setBuild(build);
+
+ return dr;
+ }
+}
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/src/org/eclipse/jet/ec2008/pushbuttonbuild/wizard/NewRelengProjectWizard.java b/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/src/org/eclipse/jet/ec2008/pushbuttonbuild/wizard/NewRelengProjectWizard.java
new file mode 100644
index 0000000..6c2edc1
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/src/org/eclipse/jet/ec2008/pushbuttonbuild/wizard/NewRelengProjectWizard.java
@@ -0,0 +1,84 @@
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+/**
+ *
+ */
+package org.eclipse.jet.ec2008.pushbuttonbuild.wizard;
+
+import java.lang.reflect.InvocationTargetException;
+import java.text.MessageFormat;
+
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.jet.JET2Platform;
+import org.eclipse.jet.ec2008.pbpmodel.pushbuttonbuild.DocumentRoot;
+import org.eclipse.jface.operation.IRunnableWithProgress;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.wizard.Wizard;
+import org.eclipse.ui.INewWizard;
+import org.eclipse.ui.IWorkbench;
+import org.eclipse.ui.statushandlers.StatusManager;
+
+/**
+ * @author pelder
+ *
+ */
+public class NewRelengProjectWizard extends Wizard implements INewWizard {
+
+ private static final String JET_TRANSFORM_ID = "org.eclipse.jet.ec2008.pushbuttonbuild";
+ private final NewRelengProjectPageCode newRelengProjectPageCode;
+
+ /**
+ *
+ */
+ public NewRelengProjectWizard() {
+ newRelengProjectPageCode = new NewRelengProjectPageCode();
+ setNeedsProgressMonitor(true);
+ }
+
+ @Override
+ public void addPages() {
+ addPage(new NewRelengProjectPage("releng", "New Releng Project", null, newRelengProjectPageCode));
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.jface.wizard.Wizard#performFinish()
+ */
+ @Override
+ public boolean performFinish() {
+ final DocumentRoot stuff = newRelengProjectPageCode.getStuff();
+
+ try {
+ getContainer().run(false, false, new IRunnableWithProgress() {
+
+ public void run(IProgressMonitor monitor)
+ throws InvocationTargetException, InterruptedException {
+
+ IStatus status = JET2Platform.runTransformOnObject(JET_TRANSFORM_ID, stuff, monitor);
+
+ if(!status.isOK()) {
+ StatusManager.getManager().handle(status, StatusManager.BLOCK);
+ }
+
+ }});
+ } catch (InvocationTargetException e) {
+ IStatus status = new Status(IStatus.ERROR,Activator.PLUGIN_ID,
+ MessageFormat.format("Unexpected error invoking JET transformation {0}", new Object[] {JET_TRANSFORM_ID})
+ , e);
+ StatusManager.getManager().handle(status);
+ } catch (InterruptedException e) {
+ // ignore, cannot happen
+ }
+
+ return true;
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.ui.IWorkbenchWizard#init(org.eclipse.ui.IWorkbench, org.eclipse.jface.viewers.IStructuredSelection)
+ */
+ public void init(IWorkbench workbench, IStructuredSelection selection) {
+ // TODO Auto-generated method stub
+
+ }
+
+}
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/wizardPages/NewRelengProjectPage.xml b/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/wizardPages/NewRelengProjectPage.xml
new file mode 100644
index 0000000..0aecc4f
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/wizardPages/NewRelengProjectPage.xml
@@ -0,0 +1,75 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<wizardPage class="NewRelengProjectPage"
+ package="org.eclipse.jet.ec2008.pushbuttonbuild.wizard"
+ srcFolder="org.eclipse.jet.ec2008.pushbuttonbuild.wizard/src"
+ xmlns="http://www.eclipse.org/modeling/jet/ec2008/wizardPageLayout"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.eclipse.org/modeling/jet/ec2008/wizardPageLayout platform:/resource/org.eclipse.jet.examples.ec2008/wizardPageLayout.xsd ">
+ <composite name="relengComposite">
+ <gridLayout><numColumns numColumns="2"/></gridLayout>
+
+ <label name="lblParentProjectName" text="&amp;Parent project name: "></label>
+ <text name="txtParentProjectName" isField="true">
+ <gridData><grab horizontal="true" vertical="false"/><align hAlign="FILL" vAlign="BEGINNING"/></gridData>
+ </text>
+
+ <label name="lblShortName" text="&amp;Short name: "></label>
+ <text name="txtShortName" isField="true">
+ <gridData><grab horizontal="true" vertical="false"/><align hAlign="FILL" vAlign="BEGINNING"/></gridData>
+ </text>
+
+ <label name="lblProjectNamespace" text="Project N&amp;amespace: "></label>
+ <text name="txtProjectNamespace" isField="true">
+ <gridData><grab horizontal="true" vertical="false"/><align hAlign="FILL" vAlign="BEGINNING"/></gridData>
+ </text>
+
+ <group name="grpBuildNotifications" text="Build Notifications">
+ <gridLayout><numColumns numColumns="2"/></gridLayout>
+ <gridData><span vSpan="1" hSpan="2"/><align hAlign="FILL" vAlign="BEGINNING"/><grab horizontal="true" vertical="false"/></gridData>
+
+ <label name="lblNewsgroupPublisherName" text="Name of sender: "></label>
+ <text name="txtNewsgroupPublisherName" isField="true">
+ <gridData><grab horizontal="true" vertical="false"/><align hAlign="FILL" vAlign="BEGINNING"/></gridData>
+ </text>
+
+ <label name="lblNewsgroupPublisherEmail" text="E-mail address of sender: "></label>
+ <text name="txtNewsgroupPublisherEmail" isField="true">
+ <gridData><grab horizontal="true" vertical="false"/><align hAlign="FILL" vAlign="BEGINNING"/></gridData>
+ </text>
+ </group>
+
+ <label name="lblJRE" text="Minimum &amp;JRE: "></label>
+ <combo name="ddlbJRE" isField="true" readOnly="true" style="DROP_DOWN" text="J2SE-1.5">
+ <item>J2SE-1.4</item>
+ <item>J2SE-1.5</item>
+ <gridData><align hAlign="FILL" vAlign="BEGINNING"/><grab horizontal="true" vertical="false"/></gridData>
+ </combo>
+
+ <button style="CHECK" isField="true" name="cbxTestsAreJarred" selection="true" text="Tests plug-ins are JAR'd">
+ <gridData><span vSpan="1" hSpan="2"/></gridData>
+ </button>
+
+ <button style="CHECK" isField="true" name="cbxIsIncubation" selection="true" text="Incubating component/projet">
+ <gridData><span vSpan="1" hSpan="2"/></gridData>
+ </button>
+
+ <group name="grpExtraJars" text="Extra JARs to build">
+ <gridLayout><numColumns numColumns="2"/></gridLayout>
+ <gridData><span hSpan="2" vSpan="1"/><align hAlign="FILL" vAlign="BEGINNING"/></gridData>
+ <list name="lstExtraJars" isField="true" style="SINGLE">
+ <gridData>
+ <span hSpan="1" vSpan="2"/>
+ <align hAlign="FILL" vAlign="BEGINNING"/>
+ <grab horizontal="true" vertical="true"/>
+ </gridData>
+ </list>
+
+ <button style="PUSH" name="bAdd" isField="true" text="Add...">
+ <event name="Selection"/>
+ </button>
+ <button style="PUSH" name="bRemove" isField="true" text="Remove">
+ <event name="Selection"/>
+ </button>
+ </group>
+ </composite>
+</wizardPage>
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/wizardPages/dump.xml b/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/wizardPages/dump.xml
new file mode 100644
index 0000000..ba99b34
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/wizardPages/dump.xml
@@ -0,0 +1,100 @@
+<?xml version="1.0" encoding="utf-8"?>
+<wizardPage srcFolder="org.eclipse.jet.ec2008.pushbuttonbuild.wizard/src" package="org.eclipse.jet.ec2008.pushbuttonbuild.wizard" class="NewRelengProjectPage" codeBehindClass="NewRelengProjectPageCode">
+ <control type="composite" parent="parent" name="relengComposite" javaType="org.eclipse.swt.widgets.Composite" initControlTemplate="templates/control/composite/initControl.jet" swtStylesTemplate="templates/control/composite/swtStyles.jet">
+ <gridLayout>
+ <numColumns numColumns="2"/>
+ </gridLayout>
+ </control>
+ <control type="label" parent="relengComposite" name="lblParentProjectName" text="&Parent project name: " javaType="org.eclipse.swt.widgets.Label" initControlTemplate="templates/control/label/initControl.jet" swtStylesTemplate="templates/control/label/swtStyles.jet">
+ </control>
+ <control type="text" parent="relengComposite" isField="true" name="txtParentProjectName" javaType="org.eclipse.swt.widgets.Text" initControlTemplate="templates/control/text/initControl.jet" swtStylesTemplate="templates/control/text/swtStyles.jet">
+ <gridData>
+ <align hAlign="FILL" vAlign="BEGINNING"/>
+ <grab horizontal="true" vertical="false"/>
+ </gridData>
+ </control>
+ <control type="label" parent="relengComposite" name="lblShortName" text="&Short name: " javaType="org.eclipse.swt.widgets.Label" initControlTemplate="templates/control/label/initControl.jet" swtStylesTemplate="templates/control/label/swtStyles.jet">
+ </control>
+ <control type="text" parent="relengComposite" isField="true" name="txtShortName" javaType="org.eclipse.swt.widgets.Text" initControlTemplate="templates/control/text/initControl.jet" swtStylesTemplate="templates/control/text/swtStyles.jet">
+ <gridData>
+ <align hAlign="FILL" vAlign="BEGINNING"/>
+ <grab horizontal="true" vertical="false"/>
+ </gridData>
+ </control>
+ <control type="label" parent="relengComposite" name="lblProjectNamespace" text="Project N&amespace: " javaType="org.eclipse.swt.widgets.Label" initControlTemplate="templates/control/label/initControl.jet" swtStylesTemplate="templates/control/label/swtStyles.jet">
+ </control>
+ <control type="text" parent="relengComposite" isField="true" name="txtProjectNamespace" javaType="org.eclipse.swt.widgets.Text" initControlTemplate="templates/control/text/initControl.jet" swtStylesTemplate="templates/control/text/swtStyles.jet">
+ <gridData>
+ <align hAlign="FILL" vAlign="BEGINNING"/>
+ <grab horizontal="true" vertical="false"/>
+ </gridData>
+ </control>
+ <control type="group" parent="relengComposite" name="grpBuildNotifications" text="Build Notifications" javaType="org.eclipse.swt.widgets.Group" initControlTemplate="templates/control/group/initControl.jet" swtStylesTemplate="templates/control/group/swtStyles.jet">
+ <gridLayout>
+ <numColumns numColumns="2"/>
+ </gridLayout>
+ <gridData>
+ <align hAlign="FILL" vAlign="BEGINNING"/>
+ <grab horizontal="true" vertical="false"/>
+ <span hSpan="2" vSpan="1"/>
+ </gridData>
+ </control>
+ <control type="label" parent="grpBuildNotifications" name="lblNewsgroupPublisherName" text="Name of sender: " javaType="org.eclipse.swt.widgets.Label" initControlTemplate="templates/control/label/initControl.jet" swtStylesTemplate="templates/control/label/swtStyles.jet">
+ </control>
+ <control type="text" parent="grpBuildNotifications" isField="true" name="txtNewsgroupPublisherName" javaType="org.eclipse.swt.widgets.Text" initControlTemplate="templates/control/text/initControl.jet" swtStylesTemplate="templates/control/text/swtStyles.jet">
+ <gridData>
+ <align hAlign="FILL" vAlign="BEGINNING"/>
+ <grab horizontal="true" vertical="false"/>
+ </gridData>
+ </control>
+ <control type="label" parent="grpBuildNotifications" name="lblNewsgroupPublisherEmail" text="E-mail address of sender: " javaType="org.eclipse.swt.widgets.Label" initControlTemplate="templates/control/label/initControl.jet" swtStylesTemplate="templates/control/label/swtStyles.jet">
+ </control>
+ <control type="text" parent="grpBuildNotifications" isField="true" name="txtNewsgroupPublisherEmail" javaType="org.eclipse.swt.widgets.Text" initControlTemplate="templates/control/text/initControl.jet" swtStylesTemplate="templates/control/text/swtStyles.jet">
+ <gridData>
+ <align hAlign="FILL" vAlign="BEGINNING"/>
+ <grab horizontal="true" vertical="false"/>
+ </gridData>
+ </control>
+ <control type="label" parent="relengComposite" name="lblJRE" text="Minimum &JRE: " javaType="org.eclipse.swt.widgets.Label" initControlTemplate="templates/control/label/initControl.jet" swtStylesTemplate="templates/control/label/swtStyles.jet">
+ </control>
+ <control type="combo" parent="relengComposite" isField="true" name="ddlbJRE" readOnly="true" style="DROP_DOWN" text="J2SE-1.5" javaType="org.eclipse.swt.widgets.Combo" initControlTemplate="templates/control/combo/initControl.jet" swtStylesTemplate="templates/control/combo/swtStyles.jet">
+ <gridData>
+ <align hAlign="FILL" vAlign="BEGINNING"/>
+ <grab horizontal="true" vertical="false"/>
+ </gridData>
+ <item>J2SE-1.4</item>
+ <item>J2SE-1.5</item>
+ </control>
+ <control type="button" parent="relengComposite" isField="true" name="cbxTestsAreJarred" selection="true" style="CHECK" text="Tests plug-ins are JAR'd" javaType="org.eclipse.swt.widgets.Button" initControlTemplate="templates/control/button/initControl.jet" swtStylesTemplate="templates/control/button/swtStyles.jet">
+ <gridData>
+ <span hSpan="2" vSpan="1"/>
+ </gridData>
+ </control>
+ <control type="button" parent="relengComposite" isField="true" name="cbxIsIncubation" selection="true" style="CHECK" text="Incubating component/projet" javaType="org.eclipse.swt.widgets.Button" initControlTemplate="templates/control/button/initControl.jet" swtStylesTemplate="templates/control/button/swtStyles.jet">
+ <gridData>
+ <span hSpan="2" vSpan="1"/>
+ </gridData>
+ </control>
+ <control type="group" parent="relengComposite" name="grpExtraJars" text="Extra JARs to build" javaType="org.eclipse.swt.widgets.Group" initControlTemplate="templates/control/group/initControl.jet" swtStylesTemplate="templates/control/group/swtStyles.jet">
+ <gridLayout>
+ <numColumns numColumns="2"/>
+ </gridLayout>
+ <gridData>
+ <align hAlign="FILL" vAlign="BEGINNING"/>
+ <span hSpan="2" vSpan="1"/>
+ </gridData>
+ </control>
+ <control type="list" parent="grpExtraJars" isField="true" name="lstExtraJars" style="SINGLE" javaType="org.eclipse.swt.widgets.List" initControlTemplate="templates/control/list/initControl.jet" swtStylesTemplate="templates/control/list/swtStyles.jet">
+ <gridData>
+ <align hAlign="FILL" vAlign="BEGINNING"/>
+ <grab horizontal="true" vertical="true"/>
+ <span hSpan="1" vSpan="2"/>
+ </gridData>
+ </control>
+ <control type="button" parent="grpExtraJars" isField="true" name="bAdd" style="PUSH" text="Add..." javaType="org.eclipse.swt.widgets.Button" initControlTemplate="templates/control/button/initControl.jet" swtStylesTemplate="templates/control/button/swtStyles.jet">
+ <event name="Selection" addListenerMethod="addSelectionListener" handlerBaseClass="org.eclipse.swt.events.SelectionAdapter" handlerMethod="widgetSelected" eventClass="org.eclipse.swt.events.SelectionEvent" delegateMethod="bAdd_selected"/>
+ </control>
+ <control type="button" parent="grpExtraJars" isField="true" name="bRemove" style="PUSH" text="Remove" javaType="org.eclipse.swt.widgets.Button" initControlTemplate="templates/control/button/initControl.jet" swtStylesTemplate="templates/control/button/swtStyles.jet">
+ <event name="Selection" addListenerMethod="addSelectionListener" handlerBaseClass="org.eclipse.swt.events.SelectionAdapter" handlerMethod="widgetSelected" eventClass="org.eclipse.swt.events.SelectionEvent" delegateMethod="bRemove_selected"/>
+ </control>
+</wizardPage>
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/wizardPages/flattened.xml b/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/wizardPages/flattened.xml
new file mode 100644
index 0000000..d7ec496
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild.wizard/wizardPages/flattened.xml
@@ -0,0 +1,177 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<wizardPage
+ srcFolder="org.eclipse.jet.ec2008.pushbuttonbuild.wizard/src"
+ package="org.eclipse.jet.ec2008.pushbuttonbuild.wizard"
+ class="NewRelengProjectPage">
+ <control
+ type="composite"
+ parent="parent"
+ name="relengComposite"
+ >
+ <gridLayout><numColumns numColumns="2"/></gridLayout>
+ </control>
+ <control
+ type="label"
+ parent="relengComposite"
+ name="lblParentProjectName"
+ text="&amp;Parent project name: "
+ >
+ </control>
+ <control
+ type="text"
+ parent="relengComposite"
+ isField="true"
+ name="txtParentProjectName"
+ >
+ <gridData><align hAlign="FILL" vAlign="BEGINNING"/><grab horizontal="true" vertical="false"/></gridData>
+ </control>
+ <control
+ type="label"
+ parent="relengComposite"
+ name="lblShortName"
+ text="&amp;Short name: "
+ >
+ </control>
+ <control
+ type="text"
+ parent="relengComposite"
+ isField="true"
+ name="txtShortName"
+ >
+ <gridData><align hAlign="FILL" vAlign="BEGINNING"/><grab horizontal="true" vertical="false"/></gridData>
+ </control>
+ <control
+ type="label"
+ parent="relengComposite"
+ name="lblProjectNamespace"
+ text="Project N&amp;amespace: "
+ >
+ </control>
+ <control
+ type="text"
+ parent="relengComposite"
+ isField="true"
+ name="txtProjectNamespace"
+ >
+ <gridData><align hAlign="FILL" vAlign="BEGINNING"/><grab horizontal="true" vertical="false"/></gridData>
+ </control>
+ <control
+ type="group"
+ parent="relengComposite"
+ name="grpBuildNotifications"
+ text="Build Notifications"
+ >
+ <gridLayout><numColumns numColumns="2"/></gridLayout>
+ <gridData><align hAlign="FILL" vAlign="BEGINNING"/><grab horizontal="true" vertical="false"/><span hSpan="2" vSpan="1"/></gridData>
+ </control>
+ <control
+ type="label"
+ parent="grpBuildNotifications"
+ name="lblNewsgroupPublisherName"
+ text="Name of sender: "
+ >
+ </control>
+ <control
+ type="text"
+ parent="grpBuildNotifications"
+ isField="true"
+ name="txtNewsgroupPublisherName"
+ >
+ <gridData><align hAlign="FILL" vAlign="BEGINNING"/><grab horizontal="true" vertical="false"/></gridData>
+ </control>
+ <control
+ type="label"
+ parent="grpBuildNotifications"
+ name="lblNewsgroupPublisherEmail"
+ text="E-mail address of sender: "
+ >
+ </control>
+ <control
+ type="text"
+ parent="grpBuildNotifications"
+ isField="true"
+ name="txtNewsgroupPublisherEmail"
+ >
+ <gridData><align hAlign="FILL" vAlign="BEGINNING"/><grab horizontal="true" vertical="false"/></gridData>
+ </control>
+ <control
+ type="label"
+ parent="relengComposite"
+ name="lblJRE"
+ text="Minimum &amp;JRE: "
+ >
+ </control>
+ <control
+ type="combo"
+ parent="relengComposite"
+ isField="true"
+ name="ddlbJRE"
+ readOnly="true"
+ style="DROP_DOWN"
+ text="J2SE-1.5"
+ >
+ <gridData><align hAlign="FILL" vAlign="BEGINNING"/><grab horizontal="true" vertical="false"/></gridData>
+ <item>J2SE-1.4</item>
+ <item>J2SE-1.5</item>
+ </control>
+ <control
+ type="button"
+ parent="relengComposite"
+ isField="true"
+ name="cbxTestsAreJarred"
+ selection="true"
+ style="CHECK"
+ text="Tests plug-ins are JAR'd"
+ >
+ <gridData><span hSpan="2" vSpan="1"/></gridData>
+ </control>
+ <control
+ type="button"
+ parent="relengComposite"
+ isField="true"
+ name="cbxIsIncubation"
+ selection="true"
+ style="CHECK"
+ text="Incubating component/projet"
+ >
+ <gridData><span hSpan="2" vSpan="1"/></gridData>
+ </control>
+ <control
+ type="group"
+ parent="relengComposite"
+ name="grpExtraJars"
+ text="Extra JARs to build"
+ >
+ <gridLayout><numColumns numColumns="2"/></gridLayout>
+ <gridData><align hAlign="FILL" vAlign="BEGINNING"/><span hSpan="2" vSpan="1"/></gridData>
+ </control>
+ <control
+ type="list"
+ parent="grpExtraJars"
+ isField="true"
+ name="lstExtraJars"
+ style="SINGLE"
+ >
+ <gridData><align hAlign="FILL" vAlign="BEGINNING"/><grab horizontal="true" vertical="true"/><span hSpan="1" vSpan="2"/></gridData>
+ </control>
+ <control
+ type="button"
+ parent="grpExtraJars"
+ isField="true"
+ name="bAdd"
+ style="PUSH"
+ text="Add..."
+ >
+ <event name="Selection"/>
+ </control>
+ <control
+ type="button"
+ parent="grpExtraJars"
+ isField="true"
+ name="bRemove"
+ style="PUSH"
+ text="Remove"
+ >
+ <event name="Selection"/>
+ </control>
+</wizardPage> \ No newline at end of file
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/.settings/org.eclipse.jet.prefs b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/.settings/org.eclipse.jet.prefs
index a962fe0..b112de4 100644
--- a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/.settings/org.eclipse.jet.prefs
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/.settings/org.eclipse.jet.prefs
@@ -1,5 +1,5 @@
-#Mon Mar 17 13:52:25 PDT 2008
+#Fri Apr 04 11:44:12 EDT 2008
eclipse.preferences.version=1
org.eclipse.jet.compiledTemplatePackage=org.eclipse.jet.ec2008.pushbuttonbuild.compiled
-org.eclipse.jet.compiledTemplateSrcDir=jet2java
org.eclipse.jet.projectPrefs=true
+org.eclipse.jet.setJavaDerived=false
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/META-INF/MANIFEST.MF b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..768824a
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/META-INF/MANIFEST.MF
@@ -0,0 +1,9 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: Create a Push-button Build
+Bundle-SymbolicName: org.eclipse.jet.ec2008.pushbuttonbuild;singleton:=true
+Bundle-Version: 1.0.0
+Bundle-Vendor:
+Require-Bundle: org.eclipse.jet
+Bundle-ClassPath: .,bin/
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/dump.xml b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/dump.xml
new file mode 100644
index 0000000..4682d77
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/dump.xml
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<build isIncubation="true" jre="J2SE-1.4" newsgroupPublisherEmail="pelder@ca.ibm.com" parentProjectName="m2t" projectNamespace="m2t.jet" shortName="jet" testsAreJarred="true" relengProjectName="org.eclipse.m2t.jet.releng" incubationTag="incubation-">
+ <extraZIP name="editor"/>
+</build>
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/forNick.xml b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/forNick.xml
new file mode 100644
index 0000000..dda7e5e
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/forNick.xml
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<build isIncubation="true" jre="J2SE-1.4" newsgroupPublisherEmail="pelder@ca.ibm.com" parentProjectName="m2t" projectNamespace="m2t.jet" shortName="jet" testsAreJarred="true" xmlns="http://www.eclipse.org/modeling/pushbuttonbuild/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.eclipse.org/modeling/pushbuttonbuild/1.0.0 pushbuttonbuild.xsd ">
+ <extraZIP name="editor"/>
+</build>
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/.placeholder b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/.placeholder
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/.placeholder
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet__SHORTNAME_map.java b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet__SHORTNAME_map.java
new file mode 100644
index 0000000..b53cbd6
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet__SHORTNAME_map.java
@@ -0,0 +1,35 @@
+package org.eclipse.jet.ec2008.pushbuttonbuild.compiled;
+
+import org.eclipse.jet.JET2Context;
+import org.eclipse.jet.JET2Template;
+import org.eclipse.jet.JET2Writer;
+
+public class _jet__SHORTNAME_map implements JET2Template {
+
+
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+
+ public _jet__SHORTNAME_map() {
+ super();
+ }
+
+ private static final String NL = System.getProperty("line.separator"); //$NON-NLS-1$
+
+ public void generate(final JET2Context context, final JET2Writer __out) {
+ JET2Writer out = __out;
+ out.write("!*************** PROJECT CONTRIBUTION ******************************************************** "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("!*** Special entries from eclipse"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("plugin@org.eclipse.test=v20070226,:pserver:anonymous@dev.eclipse.org:/cvsroot/eclipse,"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("fragment@org.eclipse.ant.optional.junit=v20050226,:pserver:anonymous@dev.eclipse.org:/cvsroot/eclipse,"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("!*** Project's plugins, features and fragments"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ }
+}
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet__SHORTNAME_maptemplate.java b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet__SHORTNAME_maptemplate.java
new file mode 100644
index 0000000..d9600d2
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet__SHORTNAME_maptemplate.java
@@ -0,0 +1,37 @@
+package org.eclipse.jet.ec2008.pushbuttonbuild.compiled;
+
+import org.eclipse.jet.JET2Context;
+import org.eclipse.jet.JET2Template;
+import org.eclipse.jet.JET2Writer;
+
+public class _jet__SHORTNAME_maptemplate implements JET2Template {
+
+
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+
+ public _jet__SHORTNAME_maptemplate() {
+ super();
+ }
+
+ private static final String NL = System.getProperty("line.separator"); //$NON-NLS-1$
+
+ public void generate(final JET2Context context, final JET2Writer __out) {
+ JET2Writer out = __out;
+ out.write("!*************** PROJECT CONTRIBUTION ******************************************************** "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("!*** Special entries from eclipse"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("plugin@org.eclipse.test=v20070226,build@buildbox:/cvsroot/eclipse,"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("fragment@org.eclipse.ant.optional.junit=v20050226,build@buildbox:/cvsroot/eclipse,"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("!*** Project's plugins, features and fragments"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("@entries@"); //$NON-NLS-1$
+ out.write(NL);
+ }
+}
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_buildAllxml.java b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_buildAllxml.java
new file mode 100644
index 0000000..576c983
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_buildAllxml.java
@@ -0,0 +1,522 @@
+package org.eclipse.jet.ec2008.pushbuttonbuild.compiled;
+
+import org.eclipse.jet.JET2Context;
+import org.eclipse.jet.JET2Template;
+import org.eclipse.jet.JET2Writer;
+import org.eclipse.jet.taglib.RuntimeTagElement;
+import org.eclipse.jet.taglib.TagInfo;
+
+public class _jet_buildAllxml implements JET2Template {
+ private static final String _jetns_c = "org.eclipse.jet.controlTags"; //$NON-NLS-1$
+
+
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+
+ public _jet_buildAllxml() {
+ super();
+ }
+
+ private static final String NL = System.getProperty("line.separator"); //$NON-NLS-1$
+
+ private static final TagInfo _td_c_choose_11_1 = new TagInfo("c:choose", //$NON-NLS-1$
+ 11, 1,
+ new String[] {
+ },
+ new String[] {
+ } );
+ private static final TagInfo _td_c_when_12_1 = new TagInfo("c:when", //$NON-NLS-1$
+ 12, 1,
+ new String[] {
+ "test", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@jre = 'J2SE-1.4'", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_when_17_1 = new TagInfo("c:when", //$NON-NLS-1$
+ 17, 1,
+ new String[] {
+ "test", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@jre = 'J2SE-1.5'", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_if_30_1 = new TagInfo("c:if", //$NON-NLS-1$
+ 30, 1,
+ new String[] {
+ "test", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@jre = 'J2SE-1.5'", //$NON-NLS-1$
+ } );
+
+ public void generate(final JET2Context context, final JET2Writer __out) {
+ JET2Writer out = __out;
+ out.write("<project default=\"run\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"init\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<echo message=\"Set compilerArgs = '-enableJavadoc -encoding ISO-8859-1 -warn:-serial,nls,unused,unchecked,raw,discouraged'\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"compilerArg\" value=\"-enableJavadoc -encoding ISO-8859-1 -warn:-serial,nls,unused,unchecked,raw,discouraged\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<!-- TODO: set correct source and target levels here -->"); //$NON-NLS-1$
+ out.write(NL);
+ RuntimeTagElement _jettag_c_choose_11_1 = context.getTagFactory().createRuntimeTag(_jetns_c, "choose", "c:choose", _td_c_choose_11_1); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_choose_11_1.setRuntimeParent(null);
+ _jettag_c_choose_11_1.setTagInfo(_td_c_choose_11_1);
+ _jettag_c_choose_11_1.doStart(context, out);
+ JET2Writer _jettag_c_choose_11_1_saved_out = out;
+ while (_jettag_c_choose_11_1.okToProcessBody()) {
+ out = out.newNestedContentWriter();
+ RuntimeTagElement _jettag_c_when_12_1 = context.getTagFactory().createRuntimeTag(_jetns_c, "when", "c:when", _td_c_when_12_1); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_when_12_1.setRuntimeParent(_jettag_c_choose_11_1);
+ _jettag_c_when_12_1.setTagInfo(_td_c_when_12_1);
+ _jettag_c_when_12_1.doStart(context, out);
+ JET2Writer _jettag_c_when_12_1_saved_out = out;
+ while (_jettag_c_when_12_1.okToProcessBody()) {
+ out = out.newNestedContentWriter();
+ out.write("\t\t<echo message=\"Set javacSource and javacTarget = 1.4\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"javacSource\" value=\"1.4\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"javacTarget\" value=\"1.4\" />"); //$NON-NLS-1$
+ out.write(NL);
+ _jettag_c_when_12_1.handleBodyContent(out);
+ }
+ out = _jettag_c_when_12_1_saved_out;
+ _jettag_c_when_12_1.doEnd();
+ RuntimeTagElement _jettag_c_when_17_1 = context.getTagFactory().createRuntimeTag(_jetns_c, "when", "c:when", _td_c_when_17_1); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_when_17_1.setRuntimeParent(_jettag_c_choose_11_1);
+ _jettag_c_when_17_1.setTagInfo(_td_c_when_17_1);
+ _jettag_c_when_17_1.doStart(context, out);
+ JET2Writer _jettag_c_when_17_1_saved_out = out;
+ while (_jettag_c_when_17_1.okToProcessBody()) {
+ out = out.newNestedContentWriter();
+ out.write("\t\t<echo message=\"Set javacSource and javacTarget = 1.5\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"javacSource\" value=\"1.5\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"javacTarget\" value=\"1.5\" />"); //$NON-NLS-1$
+ out.write(NL);
+ _jettag_c_when_17_1.handleBodyContent(out);
+ }
+ out = _jettag_c_when_17_1_saved_out;
+ _jettag_c_when_17_1.doEnd();
+ _jettag_c_choose_11_1.handleBodyContent(out);
+ }
+ out = _jettag_c_choose_11_1_saved_out;
+ _jettag_c_choose_11_1.doEnd();
+ out.write("\t\t<path id=\"bc\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<fileset dir=\"${java.home}/lib\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t\t<include name=\"*.jar\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t</fileset>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</path>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"bootclasspath\" refid=\"bc\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ RuntimeTagElement _jettag_c_if_30_1 = context.getTagFactory().createRuntimeTag(_jetns_c, "if", "c:if", _td_c_if_30_1); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_if_30_1.setRuntimeParent(null);
+ _jettag_c_if_30_1.setTagInfo(_td_c_if_30_1);
+ _jettag_c_if_30_1.doStart(context, out);
+ while (_jettag_c_if_30_1.okToProcessBody()) {
+ out.write("\t\t<echo message=\"Set J2SE-1.5 = ${bootclasspath}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"J2SE-1.5\" value=\"${bootclasspath}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<condition property=\"bundleBootClasspath\" value=\"${J2SE-1.5}\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<isset property=\"J2SE-1.5\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</condition>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<condition property=\"bundleJavacSource\" value=\"1.5\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<isset property=\"J2SE-1.5\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</condition>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<condition property=\"bundleJavacTarget\" value=\"1.5\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<isset property=\"J2SE-1.5\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</condition>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ _jettag_c_if_30_1.handleBodyContent(out);
+ }
+ _jettag_c_if_30_1.doEnd();
+ out.write("\t\t<property name=\"buildingOSGi\" value=\"true\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"collectingFolder\" value=\"eclipse\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"archivePrefix\" value=\"eclipse\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<!-- Reduce the amount of info in the build log -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"javacVerbose\" value=\"false\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<property name=\"buildDirectory\" location=\"${basedir}/../src/eclipse\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property file=\"${basedir}/repoInfo.properties\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"testBase\" location=\"${buildDirectory}/../testing\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<available file=\"${buildDirectory}/label.properties\" property=\"label.properties.exists\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"create.label.properties\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property file=\"${buildDirectory}/label.properties\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<echo message=\"buildAll.xml properties:\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<echo message=\"basedir = ${basedir}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<!-- load a value for ${subprojectName}, among other variables, from build.cfg -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"buildConfigFile\" value=\"${basedir}/../build.cfg\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<available file=\"${buildConfigFile}\" type=\"file\" property=\"buildConfigIsAvailable\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<fail message=\"Can't load build properties from ${buildConfigFile}\" unless=\"buildConfigIsAvailable\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<!-- TODO: set any special build-related properties here by echoing them into ${buildConfigFile}:"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<echo file=\"${buildConfigFile}\" append=\"true\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("# extra properties specific to just this build"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("propertyName=propertyValue"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("</echo>\t-->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<property file=\"${buildConfigFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<echo message=\"buildVer = ${buildVer}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<echo message=\"subprojectName = ${subprojectName}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<!-- <echo message=\"Base OS: ${baseos}; Base Window System: ${basews}\"/> -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<condition property=\"isWindows\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<equals arg1=\"${baseos}.${basews}\" arg2=\"win32.win32\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</condition>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<condition property=\"isLinuxGTK\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<equals arg1=\"${baseos}.${basews}\" arg2=\"linux.gtk\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</condition>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<condition property=\"isLinuxMotif\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<equals arg1=\"${baseos}.${basews}\" arg2=\"linux.motif\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</condition>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<target name=\"create.label.properties\" unless=\"label.properties.exists\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<mkdir dir=\"${buildDirectory}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<tstamp />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"date\" value=\"${DSTAMP}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"time\" value=\"${TSTAMP}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"timestamp\" value=\"${date}${time}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"buildType\" value=\"I\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<!--this naming convention used by php scripts on download server-->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"buildLabel\" value=\"${buildType}${timestamp}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<property name=\"buildAlias\" value=\"${buildLabel}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"buildId\" value=\"${buildAlias}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<!-- this will make all plugins/features have the same qualifier, regardless of tag in mapfile -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<!-- "); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"forceContextQualifier\" value=\"v${timestamp}\"/> "); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t-->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<!--store the build label information in a file-->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<echo file=\"${buildDirectory}/label.properties\" append=\"true\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\tbuildType=${buildType}"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</echo>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<echo file=\"${buildDirectory}/label.properties\" append=\"true\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\tbuildId=${buildId}"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</echo>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<echo file=\"${buildDirectory}/label.properties\" append=\"true\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\ttimestamp=${timestamp}"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</echo>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<echo file=\"${buildDirectory}/label.properties\" append=\"true\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\tbuildLabel=${buildLabel}"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</echo>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<echo file=\"${buildDirectory}/label.properties\" append=\"true\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\tbuildAlias=${buildAlias}"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</echo>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<!-- this will make all plugins/features have the same qualifier, regardless of tag in mapfile -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<!--"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<echo file=\"${buildDirectory}/label.properties\" append=\"true\" >"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\tforceContextQualifier=${forceContextQualifier}"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</echo>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t-->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<target name=\"run\" depends=\"init\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"buildAll\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"test\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"publish\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"cleanUp\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<target name=\"runTestsOnly\" depends=\"init\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<delete dir=\"${buildDirectory}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<mkdir dir=\"${buildDirectory}/${buildLabel}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<copy todir=\"${buildDirectory}/${buildLabel}\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<fileset dir=\"${buildDirectory}/..\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t\t<include name=\"**/*.zip\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t</fileset>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</copy>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"test\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"publish\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"cleanUp\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<target name=\"runWithoutTest\" depends=\"init\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"buildAll\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"publish\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"cleanUp\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<target name=\"buildOnly\" depends=\"init\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"buildAll\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"cleanUp\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<target name=\"buildAll\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant antfile=\"build.xml\" target=\"main\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"component\" value=\"builder/sdk\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<ant antfile=\"build.xml\" target=\"main\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"component\" value=\"builder/runtime\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<ant antfile=\"build.xml\" target=\"main\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"component\" value=\"builder/examples\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<!-- TODO: add other targets if required -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<ant antfile=\"build.xml\" target=\"main\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"component\" value=\"builder/tests\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<!-- doc must be the last execution -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<ant antfile=\"build.xml\" target=\"main\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"component\" value=\"builder/doc\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<!-- TODO: if necessary, you can copy files from the SDK into the runtime or examples zips here -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<!-- for example, see validation/buildAll.xml or cdo/buildAll.xml -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<!-- TODO: if necessary, you can remove 3rd party jars used at build time from the zips here -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<!-- for example, see cdo's buildAll.xml -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<!-- TODO: you can run extra build scripts here, like for building additional zip bundles -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<!-- md5 files generation -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<exec executable=\"bash\" dir=\"${buildDirectory}/${buildLabel}\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<arg line=\"${basedir}/../org.eclipse.modeling.common.releng/scripts/createZipCheckSum.sh\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</exec>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<target name=\"cleanUp\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<echo message=\"** Copying generated zips to drop folder... **\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<copy todir=\"${buildDirectory}/..\" failonerror=\"false\" overwrite=\"true\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<fileset dir=\"${buildDirectory}/${buildLabel}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</copy>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<target name=\"test\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<property name=\"test.xml\" value=\"../org.eclipse.releng.basebuilder/plugins/org.eclipse.build.tools/scripts/test.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"test-win32-local\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"test-linux-gtk-local\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"test-linux-motif-local\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<target name=\"test-win32-local\" if=\"isWindows\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant antfile=\"${test.xml}\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"shell\" value=\"relengbuildwin2.bat\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"tester\" value=\"${basedir}/builder/tests/configs/local\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<target name=\"test-linux-gtk-local\" if=\"isLinuxGTK\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant antfile=\"${test.xml}\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"shell\" value=\"relengbuildgtk.sh\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"tester\" value=\"${basedir}/builder/tests/configs/local\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<target name=\"test-linux-motif-local\" if=\"isLinuxMotif\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant antfile=\"${test.xml}\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"shell\" value=\"relengbuildmotif.sh\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"tester\" value=\"${basedir}/builder/tests/configs/local\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<target name=\"publish\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<copy todir=\"${buildDirectory}/${buildLabel}\" overwrite=\"true\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<fileset dir=\"${buildDirectory}/../org.eclipse.modeling.common.releng/staticDropFiles\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</copy>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("</project>"); //$NON-NLS-1$
+ out.write(NL);
+ }
+}
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_buildcfg.java b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_buildcfg.java
new file mode 100644
index 0000000..3127163
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_buildcfg.java
@@ -0,0 +1,20 @@
+package org.eclipse.jet.ec2008.pushbuttonbuild.compiled;
+
+import org.eclipse.jet.JET2Context;
+import org.eclipse.jet.JET2Template;
+import org.eclipse.jet.JET2Writer;
+
+public class _jet_buildcfg implements JET2Template {
+
+
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+
+ public _jet_buildcfg() {
+ super();
+ }
+
+ public void generate(final JET2Context context, final JET2Writer __out) {
+ JET2Writer out = __out;
+ out.write("# this file's contents are generated"); //$NON-NLS-1$
+ }
+}
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_buildproperties.java b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_buildproperties.java
new file mode 100644
index 0000000..dcceb42
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_buildproperties.java
@@ -0,0 +1,131 @@
+package org.eclipse.jet.ec2008.pushbuttonbuild.compiled;
+
+import org.eclipse.jet.JET2Context;
+import org.eclipse.jet.JET2Template;
+import org.eclipse.jet.JET2Writer;
+import org.eclipse.jet.taglib.RuntimeTagElement;
+import org.eclipse.jet.taglib.TagInfo;
+
+public class _jet_buildproperties implements JET2Template {
+ private static final String _jetns_c = "org.eclipse.jet.controlTags"; //$NON-NLS-1$
+
+
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+
+ public _jet_buildproperties() {
+ super();
+ }
+
+ private static final String NL = System.getProperty("line.separator"); //$NON-NLS-1$
+
+ private static final TagInfo _td_c_choose_4_1 = new TagInfo("c:choose", //$NON-NLS-1$
+ 4, 1,
+ new String[] {
+ },
+ new String[] {
+ } );
+ private static final TagInfo _td_c_when_5_1 = new TagInfo("c:when", //$NON-NLS-1$
+ 5, 1,
+ new String[] {
+ "test", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@jre = 'J2SE-1.5'", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_when_9_1 = new TagInfo("c:when", //$NON-NLS-1$
+ 9, 1,
+ new String[] {
+ "test", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@jre = 'J2SE-1.4'", //$NON-NLS-1$
+ } );
+
+ public void generate(final JET2Context context, final JET2Writer __out) {
+ JET2Writer out = __out;
+ RuntimeTagElement _jettag_c_choose_4_1 = context.getTagFactory().createRuntimeTag(_jetns_c, "choose", "c:choose", _td_c_choose_4_1); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_choose_4_1.setRuntimeParent(null);
+ _jettag_c_choose_4_1.setTagInfo(_td_c_choose_4_1);
+ _jettag_c_choose_4_1.doStart(context, out);
+ JET2Writer _jettag_c_choose_4_1_saved_out = out;
+ while (_jettag_c_choose_4_1.okToProcessBody()) {
+ out = out.newNestedContentWriter();
+ RuntimeTagElement _jettag_c_when_5_1 = context.getTagFactory().createRuntimeTag(_jetns_c, "when", "c:when", _td_c_when_5_1); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_when_5_1.setRuntimeParent(_jettag_c_choose_4_1);
+ _jettag_c_when_5_1.setTagInfo(_td_c_when_5_1);
+ _jettag_c_when_5_1.doStart(context, out);
+ JET2Writer _jettag_c_when_5_1_saved_out = out;
+ while (_jettag_c_when_5_1.okToProcessBody()) {
+ out = out.newNestedContentWriter();
+ out.write("javacSource=5.0"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("javacTarget=5.0"); //$NON-NLS-1$
+ out.write(NL);
+ _jettag_c_when_5_1.handleBodyContent(out);
+ }
+ out = _jettag_c_when_5_1_saved_out;
+ _jettag_c_when_5_1.doEnd();
+ RuntimeTagElement _jettag_c_when_9_1 = context.getTagFactory().createRuntimeTag(_jetns_c, "when", "c:when", _td_c_when_9_1); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_when_9_1.setRuntimeParent(_jettag_c_choose_4_1);
+ _jettag_c_when_9_1.setTagInfo(_td_c_when_9_1);
+ _jettag_c_when_9_1.doStart(context, out);
+ JET2Writer _jettag_c_when_9_1_saved_out = out;
+ while (_jettag_c_when_9_1.okToProcessBody()) {
+ out = out.newNestedContentWriter();
+ out.write("javacSource=1.4"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("javacTarget=1.4"); //$NON-NLS-1$
+ out.write(NL);
+ _jettag_c_when_9_1.handleBodyContent(out);
+ }
+ out = _jettag_c_when_9_1_saved_out;
+ _jettag_c_when_9_1.doEnd();
+ _jettag_c_choose_4_1.handleBodyContent(out);
+ }
+ out = _jettag_c_choose_4_1_saved_out;
+ _jettag_c_choose_4_1.doEnd();
+ out.write(NL);
+ out.write("buildDirectory=${builder}/../eclipse"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("buildType=I"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("buildId=${buildId}"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("buildLabel=${buildLabel}"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("timestamp=0000"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("collPlace=."); //$NON-NLS-1$
+ out.write(NL);
+ out.write("collBase=."); //$NON-NLS-1$
+ out.write(NL);
+ out.write("baseLocation="); //$NON-NLS-1$
+ out.write(NL);
+ out.write("configs=*,*,*"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("baseos=linux"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("basews=gtk"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("basearch=x86"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("bootclasspath=${java.home}/lib/*.jar"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("javacFailOnError=true"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("javacVerbose=true"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("javacDebugInfo=on"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("zipargs="); //$NON-NLS-1$
+ out.write(NL);
+ out.write("archivesFormat = *,*,*-antZip"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("collectingFolder=eclipse"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("archivePrefix=eclipse"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("generateFeatureVersionSuffix=true"); //$NON-NLS-1$
+ out.write(NL);
+ }
+}
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_buildproperties_0.java b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_buildproperties_0.java
new file mode 100644
index 0000000..5d420a0
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_buildproperties_0.java
@@ -0,0 +1,131 @@
+package org.eclipse.jet.ec2008.pushbuttonbuild.compiled;
+
+import org.eclipse.jet.JET2Context;
+import org.eclipse.jet.JET2Template;
+import org.eclipse.jet.JET2Writer;
+import org.eclipse.jet.taglib.RuntimeTagElement;
+import org.eclipse.jet.taglib.TagInfo;
+
+public class _jet_buildproperties_0 implements JET2Template {
+ private static final String _jetns_c = "org.eclipse.jet.controlTags"; //$NON-NLS-1$
+
+
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+
+ public _jet_buildproperties_0() {
+ super();
+ }
+
+ private static final String NL = System.getProperty("line.separator"); //$NON-NLS-1$
+
+ private static final TagInfo _td_c_choose_4_1 = new TagInfo("c:choose", //$NON-NLS-1$
+ 4, 1,
+ new String[] {
+ },
+ new String[] {
+ } );
+ private static final TagInfo _td_c_when_5_1 = new TagInfo("c:when", //$NON-NLS-1$
+ 5, 1,
+ new String[] {
+ "test", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@jre = 'J2SE-1.5'", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_when_9_1 = new TagInfo("c:when", //$NON-NLS-1$
+ 9, 1,
+ new String[] {
+ "test", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@jre = 'J2SE-1.4'", //$NON-NLS-1$
+ } );
+
+ public void generate(final JET2Context context, final JET2Writer __out) {
+ JET2Writer out = __out;
+ RuntimeTagElement _jettag_c_choose_4_1 = context.getTagFactory().createRuntimeTag(_jetns_c, "choose", "c:choose", _td_c_choose_4_1); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_choose_4_1.setRuntimeParent(null);
+ _jettag_c_choose_4_1.setTagInfo(_td_c_choose_4_1);
+ _jettag_c_choose_4_1.doStart(context, out);
+ JET2Writer _jettag_c_choose_4_1_saved_out = out;
+ while (_jettag_c_choose_4_1.okToProcessBody()) {
+ out = out.newNestedContentWriter();
+ RuntimeTagElement _jettag_c_when_5_1 = context.getTagFactory().createRuntimeTag(_jetns_c, "when", "c:when", _td_c_when_5_1); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_when_5_1.setRuntimeParent(_jettag_c_choose_4_1);
+ _jettag_c_when_5_1.setTagInfo(_td_c_when_5_1);
+ _jettag_c_when_5_1.doStart(context, out);
+ JET2Writer _jettag_c_when_5_1_saved_out = out;
+ while (_jettag_c_when_5_1.okToProcessBody()) {
+ out = out.newNestedContentWriter();
+ out.write("javacSource=5.0"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("javacTarget=5.0"); //$NON-NLS-1$
+ out.write(NL);
+ _jettag_c_when_5_1.handleBodyContent(out);
+ }
+ out = _jettag_c_when_5_1_saved_out;
+ _jettag_c_when_5_1.doEnd();
+ RuntimeTagElement _jettag_c_when_9_1 = context.getTagFactory().createRuntimeTag(_jetns_c, "when", "c:when", _td_c_when_9_1); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_when_9_1.setRuntimeParent(_jettag_c_choose_4_1);
+ _jettag_c_when_9_1.setTagInfo(_td_c_when_9_1);
+ _jettag_c_when_9_1.doStart(context, out);
+ JET2Writer _jettag_c_when_9_1_saved_out = out;
+ while (_jettag_c_when_9_1.okToProcessBody()) {
+ out = out.newNestedContentWriter();
+ out.write("javacSource=1.4"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("javacTarget=1.4"); //$NON-NLS-1$
+ out.write(NL);
+ _jettag_c_when_9_1.handleBodyContent(out);
+ }
+ out = _jettag_c_when_9_1_saved_out;
+ _jettag_c_when_9_1.doEnd();
+ _jettag_c_choose_4_1.handleBodyContent(out);
+ }
+ out = _jettag_c_choose_4_1_saved_out;
+ _jettag_c_choose_4_1.doEnd();
+ out.write(NL);
+ out.write("buildDirectory=${builder}/../eclipse"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("buildType=I"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("buildId=${buildId}"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("buildLabel=${buildLabel}"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("timestamp=0000"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("collPlace=."); //$NON-NLS-1$
+ out.write(NL);
+ out.write("collBase=."); //$NON-NLS-1$
+ out.write(NL);
+ out.write("baseLocation="); //$NON-NLS-1$
+ out.write(NL);
+ out.write("configs=*,*,*"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("baseos=linux"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("basews=gtk"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("basearch=x86"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("bootclasspath=${java.home}/lib/*.jar"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("javacFailOnError=true"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("javacVerbose=true"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("javacDebugInfo=on"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("zipargs="); //$NON-NLS-1$
+ out.write(NL);
+ out.write("archivesFormat = *,*,*-antZip"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("collectingFolder=eclipse"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("archivePrefix=eclipse"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("generateFeatureVersionSuffix=true"); //$NON-NLS-1$
+ out.write(NL);
+ }
+}
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_buildproperties_1.java b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_buildproperties_1.java
new file mode 100644
index 0000000..272f7c6
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_buildproperties_1.java
@@ -0,0 +1,131 @@
+package org.eclipse.jet.ec2008.pushbuttonbuild.compiled;
+
+import org.eclipse.jet.JET2Context;
+import org.eclipse.jet.JET2Template;
+import org.eclipse.jet.JET2Writer;
+import org.eclipse.jet.taglib.RuntimeTagElement;
+import org.eclipse.jet.taglib.TagInfo;
+
+public class _jet_buildproperties_1 implements JET2Template {
+ private static final String _jetns_c = "org.eclipse.jet.controlTags"; //$NON-NLS-1$
+
+
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+
+ public _jet_buildproperties_1() {
+ super();
+ }
+
+ private static final String NL = System.getProperty("line.separator"); //$NON-NLS-1$
+
+ private static final TagInfo _td_c_choose_4_1 = new TagInfo("c:choose", //$NON-NLS-1$
+ 4, 1,
+ new String[] {
+ },
+ new String[] {
+ } );
+ private static final TagInfo _td_c_when_5_1 = new TagInfo("c:when", //$NON-NLS-1$
+ 5, 1,
+ new String[] {
+ "test", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@jre = 'J2SE-1.5'", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_when_9_1 = new TagInfo("c:when", //$NON-NLS-1$
+ 9, 1,
+ new String[] {
+ "test", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@jre = 'J2SE-1.4'", //$NON-NLS-1$
+ } );
+
+ public void generate(final JET2Context context, final JET2Writer __out) {
+ JET2Writer out = __out;
+ RuntimeTagElement _jettag_c_choose_4_1 = context.getTagFactory().createRuntimeTag(_jetns_c, "choose", "c:choose", _td_c_choose_4_1); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_choose_4_1.setRuntimeParent(null);
+ _jettag_c_choose_4_1.setTagInfo(_td_c_choose_4_1);
+ _jettag_c_choose_4_1.doStart(context, out);
+ JET2Writer _jettag_c_choose_4_1_saved_out = out;
+ while (_jettag_c_choose_4_1.okToProcessBody()) {
+ out = out.newNestedContentWriter();
+ RuntimeTagElement _jettag_c_when_5_1 = context.getTagFactory().createRuntimeTag(_jetns_c, "when", "c:when", _td_c_when_5_1); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_when_5_1.setRuntimeParent(_jettag_c_choose_4_1);
+ _jettag_c_when_5_1.setTagInfo(_td_c_when_5_1);
+ _jettag_c_when_5_1.doStart(context, out);
+ JET2Writer _jettag_c_when_5_1_saved_out = out;
+ while (_jettag_c_when_5_1.okToProcessBody()) {
+ out = out.newNestedContentWriter();
+ out.write("javacSource=5.0"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("javacTarget=5.0"); //$NON-NLS-1$
+ out.write(NL);
+ _jettag_c_when_5_1.handleBodyContent(out);
+ }
+ out = _jettag_c_when_5_1_saved_out;
+ _jettag_c_when_5_1.doEnd();
+ RuntimeTagElement _jettag_c_when_9_1 = context.getTagFactory().createRuntimeTag(_jetns_c, "when", "c:when", _td_c_when_9_1); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_when_9_1.setRuntimeParent(_jettag_c_choose_4_1);
+ _jettag_c_when_9_1.setTagInfo(_td_c_when_9_1);
+ _jettag_c_when_9_1.doStart(context, out);
+ JET2Writer _jettag_c_when_9_1_saved_out = out;
+ while (_jettag_c_when_9_1.okToProcessBody()) {
+ out = out.newNestedContentWriter();
+ out.write("javacSource=1.4"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("javacTarget=1.4"); //$NON-NLS-1$
+ out.write(NL);
+ _jettag_c_when_9_1.handleBodyContent(out);
+ }
+ out = _jettag_c_when_9_1_saved_out;
+ _jettag_c_when_9_1.doEnd();
+ _jettag_c_choose_4_1.handleBodyContent(out);
+ }
+ out = _jettag_c_choose_4_1_saved_out;
+ _jettag_c_choose_4_1.doEnd();
+ out.write(NL);
+ out.write("buildDirectory=${builder}/../eclipse"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("buildType=I"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("buildId=${buildId}"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("buildLabel=${buildLabel}"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("timestamp=0000"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("collPlace=."); //$NON-NLS-1$
+ out.write(NL);
+ out.write("collBase=."); //$NON-NLS-1$
+ out.write(NL);
+ out.write("baseLocation="); //$NON-NLS-1$
+ out.write(NL);
+ out.write("configs=*,*,*"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("baseos=linux"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("basews=gtk"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("basearch=x86"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("bootclasspath=${java.home}/lib/*.jar"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("javacFailOnError=true"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("javacVerbose=true"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("javacDebugInfo=on"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("zipargs="); //$NON-NLS-1$
+ out.write(NL);
+ out.write("archivesFormat = *,*,*-antZip"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("collectingFolder=eclipse"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("archivePrefix=eclipse"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("generateFeatureVersionSuffix=true"); //$NON-NLS-1$
+ out.write(NL);
+ }
+}
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_buildproperties_2.java b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_buildproperties_2.java
new file mode 100644
index 0000000..614ee63
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_buildproperties_2.java
@@ -0,0 +1,131 @@
+package org.eclipse.jet.ec2008.pushbuttonbuild.compiled;
+
+import org.eclipse.jet.JET2Context;
+import org.eclipse.jet.JET2Template;
+import org.eclipse.jet.JET2Writer;
+import org.eclipse.jet.taglib.RuntimeTagElement;
+import org.eclipse.jet.taglib.TagInfo;
+
+public class _jet_buildproperties_2 implements JET2Template {
+ private static final String _jetns_c = "org.eclipse.jet.controlTags"; //$NON-NLS-1$
+
+
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+
+ public _jet_buildproperties_2() {
+ super();
+ }
+
+ private static final String NL = System.getProperty("line.separator"); //$NON-NLS-1$
+
+ private static final TagInfo _td_c_choose_4_1 = new TagInfo("c:choose", //$NON-NLS-1$
+ 4, 1,
+ new String[] {
+ },
+ new String[] {
+ } );
+ private static final TagInfo _td_c_when_5_1 = new TagInfo("c:when", //$NON-NLS-1$
+ 5, 1,
+ new String[] {
+ "test", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@jre = 'J2SE-1.5'", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_when_9_1 = new TagInfo("c:when", //$NON-NLS-1$
+ 9, 1,
+ new String[] {
+ "test", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@jre = 'J2SE-1.4'", //$NON-NLS-1$
+ } );
+
+ public void generate(final JET2Context context, final JET2Writer __out) {
+ JET2Writer out = __out;
+ RuntimeTagElement _jettag_c_choose_4_1 = context.getTagFactory().createRuntimeTag(_jetns_c, "choose", "c:choose", _td_c_choose_4_1); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_choose_4_1.setRuntimeParent(null);
+ _jettag_c_choose_4_1.setTagInfo(_td_c_choose_4_1);
+ _jettag_c_choose_4_1.doStart(context, out);
+ JET2Writer _jettag_c_choose_4_1_saved_out = out;
+ while (_jettag_c_choose_4_1.okToProcessBody()) {
+ out = out.newNestedContentWriter();
+ RuntimeTagElement _jettag_c_when_5_1 = context.getTagFactory().createRuntimeTag(_jetns_c, "when", "c:when", _td_c_when_5_1); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_when_5_1.setRuntimeParent(_jettag_c_choose_4_1);
+ _jettag_c_when_5_1.setTagInfo(_td_c_when_5_1);
+ _jettag_c_when_5_1.doStart(context, out);
+ JET2Writer _jettag_c_when_5_1_saved_out = out;
+ while (_jettag_c_when_5_1.okToProcessBody()) {
+ out = out.newNestedContentWriter();
+ out.write("javacSource=5.0"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("javacTarget=5.0"); //$NON-NLS-1$
+ out.write(NL);
+ _jettag_c_when_5_1.handleBodyContent(out);
+ }
+ out = _jettag_c_when_5_1_saved_out;
+ _jettag_c_when_5_1.doEnd();
+ RuntimeTagElement _jettag_c_when_9_1 = context.getTagFactory().createRuntimeTag(_jetns_c, "when", "c:when", _td_c_when_9_1); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_when_9_1.setRuntimeParent(_jettag_c_choose_4_1);
+ _jettag_c_when_9_1.setTagInfo(_td_c_when_9_1);
+ _jettag_c_when_9_1.doStart(context, out);
+ JET2Writer _jettag_c_when_9_1_saved_out = out;
+ while (_jettag_c_when_9_1.okToProcessBody()) {
+ out = out.newNestedContentWriter();
+ out.write("javacSource=1.4"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("javacTarget=1.4"); //$NON-NLS-1$
+ out.write(NL);
+ _jettag_c_when_9_1.handleBodyContent(out);
+ }
+ out = _jettag_c_when_9_1_saved_out;
+ _jettag_c_when_9_1.doEnd();
+ _jettag_c_choose_4_1.handleBodyContent(out);
+ }
+ out = _jettag_c_choose_4_1_saved_out;
+ _jettag_c_choose_4_1.doEnd();
+ out.write(NL);
+ out.write("buildDirectory=${builder}/../eclipse"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("buildType=I"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("buildId=${buildId}"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("buildLabel=${buildLabel}"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("timestamp=0000"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("collPlace=."); //$NON-NLS-1$
+ out.write(NL);
+ out.write("collBase=."); //$NON-NLS-1$
+ out.write(NL);
+ out.write("baseLocation="); //$NON-NLS-1$
+ out.write(NL);
+ out.write("configs=*,*,*"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("baseos=linux"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("basews=gtk"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("basearch=x86"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("bootclasspath=${java.home}/lib/*.jar"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("javacFailOnError=true"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("javacVerbose=true"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("javacDebugInfo=on"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("zipargs="); //$NON-NLS-1$
+ out.write(NL);
+ out.write("archivesFormat = *,*,*-antZip"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("collectingFolder=eclipse"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("archivePrefix=eclipse"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("generateFeatureVersionSuffix=true"); //$NON-NLS-1$
+ out.write(NL);
+ }
+}
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_buildproperties_3.java b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_buildproperties_3.java
new file mode 100644
index 0000000..43e89a1
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_buildproperties_3.java
@@ -0,0 +1,131 @@
+package org.eclipse.jet.ec2008.pushbuttonbuild.compiled;
+
+import org.eclipse.jet.JET2Context;
+import org.eclipse.jet.JET2Template;
+import org.eclipse.jet.JET2Writer;
+import org.eclipse.jet.taglib.RuntimeTagElement;
+import org.eclipse.jet.taglib.TagInfo;
+
+public class _jet_buildproperties_3 implements JET2Template {
+ private static final String _jetns_c = "org.eclipse.jet.controlTags"; //$NON-NLS-1$
+
+
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+
+ public _jet_buildproperties_3() {
+ super();
+ }
+
+ private static final String NL = System.getProperty("line.separator"); //$NON-NLS-1$
+
+ private static final TagInfo _td_c_choose_4_1 = new TagInfo("c:choose", //$NON-NLS-1$
+ 4, 1,
+ new String[] {
+ },
+ new String[] {
+ } );
+ private static final TagInfo _td_c_when_5_1 = new TagInfo("c:when", //$NON-NLS-1$
+ 5, 1,
+ new String[] {
+ "test", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@jre = 'J2SE-1.5'", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_when_9_1 = new TagInfo("c:when", //$NON-NLS-1$
+ 9, 1,
+ new String[] {
+ "test", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@jre = 'J2SE-1.4'", //$NON-NLS-1$
+ } );
+
+ public void generate(final JET2Context context, final JET2Writer __out) {
+ JET2Writer out = __out;
+ RuntimeTagElement _jettag_c_choose_4_1 = context.getTagFactory().createRuntimeTag(_jetns_c, "choose", "c:choose", _td_c_choose_4_1); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_choose_4_1.setRuntimeParent(null);
+ _jettag_c_choose_4_1.setTagInfo(_td_c_choose_4_1);
+ _jettag_c_choose_4_1.doStart(context, out);
+ JET2Writer _jettag_c_choose_4_1_saved_out = out;
+ while (_jettag_c_choose_4_1.okToProcessBody()) {
+ out = out.newNestedContentWriter();
+ RuntimeTagElement _jettag_c_when_5_1 = context.getTagFactory().createRuntimeTag(_jetns_c, "when", "c:when", _td_c_when_5_1); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_when_5_1.setRuntimeParent(_jettag_c_choose_4_1);
+ _jettag_c_when_5_1.setTagInfo(_td_c_when_5_1);
+ _jettag_c_when_5_1.doStart(context, out);
+ JET2Writer _jettag_c_when_5_1_saved_out = out;
+ while (_jettag_c_when_5_1.okToProcessBody()) {
+ out = out.newNestedContentWriter();
+ out.write("javacSource=5.0"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("javacTarget=5.0"); //$NON-NLS-1$
+ out.write(NL);
+ _jettag_c_when_5_1.handleBodyContent(out);
+ }
+ out = _jettag_c_when_5_1_saved_out;
+ _jettag_c_when_5_1.doEnd();
+ RuntimeTagElement _jettag_c_when_9_1 = context.getTagFactory().createRuntimeTag(_jetns_c, "when", "c:when", _td_c_when_9_1); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_when_9_1.setRuntimeParent(_jettag_c_choose_4_1);
+ _jettag_c_when_9_1.setTagInfo(_td_c_when_9_1);
+ _jettag_c_when_9_1.doStart(context, out);
+ JET2Writer _jettag_c_when_9_1_saved_out = out;
+ while (_jettag_c_when_9_1.okToProcessBody()) {
+ out = out.newNestedContentWriter();
+ out.write("javacSource=1.4"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("javacTarget=1.4"); //$NON-NLS-1$
+ out.write(NL);
+ _jettag_c_when_9_1.handleBodyContent(out);
+ }
+ out = _jettag_c_when_9_1_saved_out;
+ _jettag_c_when_9_1.doEnd();
+ _jettag_c_choose_4_1.handleBodyContent(out);
+ }
+ out = _jettag_c_choose_4_1_saved_out;
+ _jettag_c_choose_4_1.doEnd();
+ out.write(NL);
+ out.write("buildDirectory=${builder}/../eclipse"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("buildType=I"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("buildId=${buildId}"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("buildLabel=${buildLabel}"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("timestamp=0000"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("collPlace=."); //$NON-NLS-1$
+ out.write(NL);
+ out.write("collBase=."); //$NON-NLS-1$
+ out.write(NL);
+ out.write("baseLocation="); //$NON-NLS-1$
+ out.write(NL);
+ out.write("configs=*,*,*"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("baseos=linux"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("basews=gtk"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("basearch=x86"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("bootclasspath=${java.home}/lib/*.jar"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("javacFailOnError=true"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("javacVerbose=true"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("javacDebugInfo=on"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("zipargs="); //$NON-NLS-1$
+ out.write(NL);
+ out.write("archivesFormat = *,*,*-antZip"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("collectingFolder=eclipse"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("archivePrefix=eclipse"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("generateFeatureVersionSuffix=true"); //$NON-NLS-1$
+ out.write(NL);
+ }
+}
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_buildproperties_4.java b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_buildproperties_4.java
new file mode 100644
index 0000000..06d8e72
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_buildproperties_4.java
@@ -0,0 +1,133 @@
+package org.eclipse.jet.ec2008.pushbuttonbuild.compiled;
+
+import org.eclipse.jet.JET2Context;
+import org.eclipse.jet.JET2Template;
+import org.eclipse.jet.JET2Writer;
+import org.eclipse.jet.taglib.RuntimeTagElement;
+import org.eclipse.jet.taglib.TagInfo;
+
+public class _jet_buildproperties_4 implements JET2Template {
+ private static final String _jetns_c = "org.eclipse.jet.controlTags"; //$NON-NLS-1$
+
+
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+
+ public _jet_buildproperties_4() {
+ super();
+ }
+
+ private static final String NL = System.getProperty("line.separator"); //$NON-NLS-1$
+
+ private static final TagInfo _td_c_choose_4_1 = new TagInfo("c:choose", //$NON-NLS-1$
+ 4, 1,
+ new String[] {
+ },
+ new String[] {
+ } );
+ private static final TagInfo _td_c_when_5_1 = new TagInfo("c:when", //$NON-NLS-1$
+ 5, 1,
+ new String[] {
+ "test", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@jre = 'J2SE-1.5'", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_when_9_1 = new TagInfo("c:when", //$NON-NLS-1$
+ 9, 1,
+ new String[] {
+ "test", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@jre = 'J2SE-1.4'", //$NON-NLS-1$
+ } );
+
+ public void generate(final JET2Context context, final JET2Writer __out) {
+ JET2Writer out = __out;
+ RuntimeTagElement _jettag_c_choose_4_1 = context.getTagFactory().createRuntimeTag(_jetns_c, "choose", "c:choose", _td_c_choose_4_1); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_choose_4_1.setRuntimeParent(null);
+ _jettag_c_choose_4_1.setTagInfo(_td_c_choose_4_1);
+ _jettag_c_choose_4_1.doStart(context, out);
+ JET2Writer _jettag_c_choose_4_1_saved_out = out;
+ while (_jettag_c_choose_4_1.okToProcessBody()) {
+ out = out.newNestedContentWriter();
+ RuntimeTagElement _jettag_c_when_5_1 = context.getTagFactory().createRuntimeTag(_jetns_c, "when", "c:when", _td_c_when_5_1); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_when_5_1.setRuntimeParent(_jettag_c_choose_4_1);
+ _jettag_c_when_5_1.setTagInfo(_td_c_when_5_1);
+ _jettag_c_when_5_1.doStart(context, out);
+ JET2Writer _jettag_c_when_5_1_saved_out = out;
+ while (_jettag_c_when_5_1.okToProcessBody()) {
+ out = out.newNestedContentWriter();
+ out.write("javacSource=5.0"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("javacTarget=5.0"); //$NON-NLS-1$
+ out.write(NL);
+ _jettag_c_when_5_1.handleBodyContent(out);
+ }
+ out = _jettag_c_when_5_1_saved_out;
+ _jettag_c_when_5_1.doEnd();
+ RuntimeTagElement _jettag_c_when_9_1 = context.getTagFactory().createRuntimeTag(_jetns_c, "when", "c:when", _td_c_when_9_1); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_when_9_1.setRuntimeParent(_jettag_c_choose_4_1);
+ _jettag_c_when_9_1.setTagInfo(_td_c_when_9_1);
+ _jettag_c_when_9_1.doStart(context, out);
+ JET2Writer _jettag_c_when_9_1_saved_out = out;
+ while (_jettag_c_when_9_1.okToProcessBody()) {
+ out = out.newNestedContentWriter();
+ out.write("javacSource=1.4"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("javacTarget=1.4"); //$NON-NLS-1$
+ out.write(NL);
+ _jettag_c_when_9_1.handleBodyContent(out);
+ }
+ out = _jettag_c_when_9_1_saved_out;
+ _jettag_c_when_9_1.doEnd();
+ _jettag_c_choose_4_1.handleBodyContent(out);
+ }
+ out = _jettag_c_choose_4_1_saved_out;
+ _jettag_c_choose_4_1.doEnd();
+ out.write(NL);
+ out.write("buildDirectory=${builder}/../eclipse"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("buildType=I"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("buildId=${buildId}"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("buildLabel=${buildLabel}"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("timestamp=0000"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("collPlace=."); //$NON-NLS-1$
+ out.write(NL);
+ out.write("collBase=."); //$NON-NLS-1$
+ out.write(NL);
+ out.write("baseLocation="); //$NON-NLS-1$
+ out.write(NL);
+ out.write("configs=*,*,*"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("baseos=linux"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("basews=gtk"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("basearch=x86"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("bootclasspath=${java.home}/lib/*.jar"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("javacFailOnError=true"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("javacVerbose=true"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("javacDebugInfo=on"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("zipargs="); //$NON-NLS-1$
+ out.write(NL);
+ out.write("archivesFormat = *,*,*-antZip"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("collectingFolder=eclipse"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("archivePrefix=eclipse"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("generateFeatureVersionSuffix=true"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("generateVersionsList=true"); //$NON-NLS-1$
+ out.write(NL);
+ }
+}
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_buildxml.java b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_buildxml.java
new file mode 100644
index 0000000..59fad35
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_buildxml.java
@@ -0,0 +1,71 @@
+package org.eclipse.jet.ec2008.pushbuttonbuild.compiled;
+
+import org.eclipse.jet.JET2Context;
+import org.eclipse.jet.JET2Template;
+import org.eclipse.jet.JET2Writer;
+
+public class _jet_buildxml implements JET2Template {
+
+
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+
+ public _jet_buildxml() {
+ super();
+ }
+
+ private static final String NL = System.getProperty("line.separator"); //$NON-NLS-1$
+
+ public void generate(final JET2Context context, final JET2Writer __out) {
+ JET2Writer out = __out;
+ out.write("<project default=\"main\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<property name=\"pde.build.scripts\" value=\"../org.eclipse.releng.basebuilder/plugins/org.eclipse.pde.build/scripts\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<target name=\"init\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<tstamp/>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<touch file=\"${user.home}/.cvspass\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"timestamp\" value=\"${DSTAMP}${TSTAMP}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"buildDirectory\" value=\"${basedir}/src/eclipse\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<property name=\"buildType\" value=\"I\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"buildId\" value=\"${buildType}${timestamp}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<!-- Verify buildDirectory ends in eclipse. -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"fullBuild\" location=\"${buildDirectory}\"/>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<basename file=\"${fullBuild}\" property=\"lastSeg\"/>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<condition property=\"endsInEclipse\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<equals arg1=\"${lastSeg}\" arg2=\"eclipse\"/>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</condition>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<fail message=\"buildDirectory's last segment is not eclipse.\" unless=\"endsInEclipse\"/>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<target name=\"main\" depends=\"init\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant antfile=\"build.xml\" dir=\"${pde.build.scripts}\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"builder\" value=\"${basedir}/${component}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("</project>"); //$NON-NLS-1$
+ }
+}
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_chkpii_ignore_listtxt.java b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_chkpii_ignore_listtxt.java
new file mode 100644
index 0000000..486cfcc
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_chkpii_ignore_listtxt.java
@@ -0,0 +1,25 @@
+package org.eclipse.jet.ec2008.pushbuttonbuild.compiled;
+
+import org.eclipse.jet.JET2Context;
+import org.eclipse.jet.JET2Template;
+import org.eclipse.jet.JET2Writer;
+
+public class _jet_chkpii_ignore_listtxt implements JET2Template {
+
+
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+
+ public _jet_chkpii_ignore_listtxt() {
+ super();
+ }
+
+ private static final String NL = System.getProperty("line.separator"); //$NON-NLS-1$
+
+ public void generate(final JET2Context context, final JET2Writer __out) {
+ JET2Writer out = __out;
+ out.write("references/javadoc/*.html"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("**/epl-v10.html"); //$NON-NLS-1$
+ out.write(NL);
+ }
+}
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_customTargetsxml.java b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_customTargetsxml.java
new file mode 100644
index 0000000..7704247
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_customTargetsxml.java
@@ -0,0 +1,492 @@
+package org.eclipse.jet.ec2008.pushbuttonbuild.compiled;
+
+import org.eclipse.jet.JET2Context;
+import org.eclipse.jet.JET2Template;
+import org.eclipse.jet.JET2Writer;
+import org.eclipse.jet.taglib.RuntimeTagElement;
+import org.eclipse.jet.taglib.TagInfo;
+
+public class _jet_customTargetsxml implements JET2Template {
+ private static final String _jetns_c = "org.eclipse.jet.controlTags"; //$NON-NLS-1$
+
+
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+
+ public _jet_customTargetsxml() {
+ super();
+ }
+
+ private static final String NL = System.getProperty("line.separator"); //$NON-NLS-1$
+
+ private static final TagInfo _td_c_get_12_43 = new TagInfo("c:get", //$NON-NLS-1$
+ 12, 43,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@projectNamespace", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_23_37 = new TagInfo("c:get", //$NON-NLS-1$
+ 23, 37,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@projectNamespace", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_24_39 = new TagInfo("c:get", //$NON-NLS-1$
+ 24, 39,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@parentProjectName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_24_105 = new TagInfo("c:get", //$NON-NLS-1$
+ 24, 105,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@incubationTag", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_195_57 = new TagInfo("c:get", //$NON-NLS-1$
+ 195, 57,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@projectNamespace", //$NON-NLS-1$
+ } );
+
+ public void generate(final JET2Context context, final JET2Writer __out) {
+ JET2Writer out = __out;
+ out.write("<project name=\"Build specific targets and properties\" default=\"noDefault\" basedir=\".\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Run a given ${target} on all elements being built -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"allElements\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant antfile=\"${genericTargets}\" target=\"${target}\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"type\" value=\"feature\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"id\" value=\"org.eclipse."); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_12_43 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_12_43); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_12_43.setRuntimeParent(null);
+ _jettag_c_get_12_43.setTagInfo(_td_c_get_12_43);
+ _jettag_c_get_12_43.doStart(context, out);
+ _jettag_c_get_12_43.doEnd();
+ out.write(".doc\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Targets to assemble the built elements for particular configurations -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- These generally call the generated assemble scripts (named in -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ${assembleScriptName}) but may also add pre and post processing -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Add one target for each root element and each configuration -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<target name=\"assemble.org.eclipse."); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_23_37 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_23_37); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_23_37.setRuntimeParent(null);
+ _jettag_c_get_23_37.setTagInfo(_td_c_get_23_37);
+ _jettag_c_get_23_37.doStart(context, out);
+ _jettag_c_get_23_37.doEnd();
+ out.write(".doc\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"archiveName\" value=\""); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_24_39 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_24_39); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_24_39.setRuntimeParent(null);
+ _jettag_c_get_24_39.setTagInfo(_td_c_get_24_39);
+ _jettag_c_get_24_39.doStart(context, out);
+ _jettag_c_get_24_39.doEnd();
+ out.write("-${subprojectName}-SDK-"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_24_105 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_24_105); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_24_105.setRuntimeParent(null);
+ _jettag_c_get_24_105.setTagInfo(_td_c_get_24_105);
+ _jettag_c_get_24_105.doStart(context, out);
+ _jettag_c_get_24_105.doEnd();
+ out.write("${buildAlias}.zip\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant antfile=\"${assembleScriptName}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<!-- ADD POST STEPS -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Check out map files from correct repository -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Replace values for cvsRoot, package and mapVersionTag as desired. -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"checkLocal\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<available property=\"mapsLocal\" file=\"${buildDirectory}/maps\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<target name=\"getMapFiles\" depends=\"checkLocal\" unless=\"mapsLocal\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<!-- *** change the repo info -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"mapCvsRoot\" value=\":${cvsReadProtocol}:${cvsReadUser}@${cvsHost}:${cvsRep}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"mapVersionTag\" value=\"HEAD\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"packagePath\" value=\"org.eclipse.${projectName}/org.eclipse.${subprojectName2}.releng/maps\"/>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<cvs cvsRsh=\"ssh\" cvsRoot=\"${mapCvsRoot}\" tag=\"${mapVersionTag}\" "); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\tpackage=\"${packagePath}\" dest=\"${buildDirectory}/maps\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<copy todir=\"${buildDirectory}/maps/CVS\" overwrite=\"true\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<fileset dir=\"${buildDirectory}/maps/${packagePath}/CVS\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</copy>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<copy todir=\"${buildDirectory}/maps\" overwrite=\"true\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<fileset dir=\"${buildDirectory}/maps/${packagePath}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</copy>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<delete dir=\"${buildDirectory}/maps/org.eclipse.${projectName}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<!--tag the map files project-->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"tagMapFiles\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<target name=\"tagMapFiles\" if=\"tagMaps\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<cvs cvsRsh=\"ssh\" dest=\"${buildDirectory}/maps\" command=\"tag v${timestamp}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do before setup -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"preSetup\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<mkdir dir=\"${buildDirectory}/${buildLabel}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do after setup but before starting the build proper -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"postSetup\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<!-- TODO: if your project requires more dependencies, add them here; if it does not require all of these, remove those not required -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<echo message=\"Download, then unpack: Eclipse, EMF, UML2, OCL, Query, Transaction, Validation, GEF, GMF ...\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${eclipseURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${eclipseFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.platform.doc.isv/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${emfURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${emfFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.emf.ecore/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${uml2URL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${uml2File}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.uml2/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${oclURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${oclFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.emf.ocl/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${queryURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${queryFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.emf.query/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${transactionURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${transactionFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.emf.transaction/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${validationURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${validationFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.emf.validation/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${gefURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${gefFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.gef/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${gmfURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${gmfFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.gmf/META-INF/MANIFEST.MF\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do before fetching the build elements -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"preFetch\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do after the fetch -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"postFetch\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<replace dir=\"${buildDirectory}/plugins\" value=\"${timestamp}\" token=\"@buildid@\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<include name=\"**/about.mappings\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</replace>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do before generating build scripts -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"preGenerate\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do after generating the build scripts -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"postGenerate\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"clean\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do before assembling -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"preAssemble\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do after assembling-->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"postAssemble\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do before running the build.xmls for the elements being built. -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"preProcess\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<replace dir=\"${buildDirectory}/plugins\" value=\"${timestamp}\" token=\"@build@\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<include name=\"**/about.mappings\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</replace>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do after running the build.xmls for the elements being built. -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"postProcess\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do after everything is built and assembled -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- (e.g., testing, posting, emailing, ...) -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"postBuild\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"gatherLogs\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Helper targets -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"gatherLogs\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<mkdir dir=\"${buildDirectory}/${buildLabel}/compilelogs\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"allElements\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<param name=\"target\" value=\"gatherLogs\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</antcall>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<unzip dest=\"${buildDirectory}/${buildLabel}/compilelogs\" overwrite=\"true\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<fileset dir=\"${buildDirectory}/features/org.eclipse."); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_195_57 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_195_57); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_195_57.setRuntimeParent(null);
+ _jettag_c_get_195_57.setTagInfo(_td_c_get_195_57);
+ _jettag_c_get_195_57.doStart(context, out);
+ _jettag_c_get_195_57.doEnd();
+ out.write(".doc\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t\t<include name=\"*.log.zip\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t</fileset>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</unzip>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<target name=\"clean\" unless=\"noclean\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"allElements\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<param name=\"target\" value=\"cleanElement\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</antcall>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Default target -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"noDefault\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<echo message=\"You must specify a target when invoking this file\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("</project>"); //$NON-NLS-1$
+ out.write(NL);
+ }
+}
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_customTargetsxml_0.java b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_customTargetsxml_0.java
new file mode 100644
index 0000000..2f74c82
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_customTargetsxml_0.java
@@ -0,0 +1,550 @@
+package org.eclipse.jet.ec2008.pushbuttonbuild.compiled;
+
+import org.eclipse.jet.JET2Context;
+import org.eclipse.jet.JET2Template;
+import org.eclipse.jet.JET2Writer;
+import org.eclipse.jet.taglib.RuntimeTagElement;
+import org.eclipse.jet.taglib.TagInfo;
+
+public class _jet_customTargetsxml_0 implements JET2Template {
+ private static final String _jetns_c = "org.eclipse.jet.controlTags"; //$NON-NLS-1$
+
+
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+
+ public _jet_customTargetsxml_0() {
+ super();
+ }
+
+ private static final String NL = System.getProperty("line.separator"); //$NON-NLS-1$
+
+ private static final TagInfo _td_c_get_6_38 = new TagInfo("c:get", //$NON-NLS-1$
+ 6, 38,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@parentProjectName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_6_100 = new TagInfo("c:get", //$NON-NLS-1$
+ 6, 100,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$extraZIP/@name", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_6_134 = new TagInfo("c:get", //$NON-NLS-1$
+ 6, 134,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@incubationTag", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_13_43 = new TagInfo("c:get", //$NON-NLS-1$
+ 13, 43,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@projectNamespace", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_13_86 = new TagInfo("c:get", //$NON-NLS-1$
+ 13, 86,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$extraZIP/@name", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_24_37 = new TagInfo("c:get", //$NON-NLS-1$
+ 24, 37,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@projectNamespace", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_24_80 = new TagInfo("c:get", //$NON-NLS-1$
+ 24, 80,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$extraZIP/@name", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_197_57 = new TagInfo("c:get", //$NON-NLS-1$
+ 197, 57,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@projectNamespace", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_197_100 = new TagInfo("c:get", //$NON-NLS-1$
+ 197, 100,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$extraZIP/@name", //$NON-NLS-1$
+ } );
+
+ public void generate(final JET2Context context, final JET2Writer __out) {
+ JET2Writer out = __out;
+ out.write("<project name=\"Build specific targets and properties\" default=\"noDefault\" basedir=\".\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<property name=\"archiveName\" value=\""); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_6_38 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_6_38); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_6_38.setRuntimeParent(null);
+ _jettag_c_get_6_38.setTagInfo(_td_c_get_6_38);
+ _jettag_c_get_6_38.doStart(context, out);
+ _jettag_c_get_6_38.doEnd();
+ out.write("-${subprojectName}-"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_6_100 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_6_100); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_6_100.setRuntimeParent(null);
+ _jettag_c_get_6_100.setTagInfo(_td_c_get_6_100);
+ _jettag_c_get_6_100.doStart(context, out);
+ _jettag_c_get_6_100.doEnd();
+ out.write("-"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_6_134 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_6_134); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_6_134.setRuntimeParent(null);
+ _jettag_c_get_6_134.setTagInfo(_td_c_get_6_134);
+ _jettag_c_get_6_134.doStart(context, out);
+ _jettag_c_get_6_134.doEnd();
+ out.write("${buildAlias}.zip\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Run a given ${target} on all elements being built -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"allElements\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant antfile=\"${genericTargets}\" target=\"${target}\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"type\" value=\"feature\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"id\" value=\"org.eclipse."); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_13_43 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_13_43); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_13_43.setRuntimeParent(null);
+ _jettag_c_get_13_43.setTagInfo(_td_c_get_13_43);
+ _jettag_c_get_13_43.doStart(context, out);
+ _jettag_c_get_13_43.doEnd();
+ out.write("."); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_13_86 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_13_86); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_13_86.setRuntimeParent(null);
+ _jettag_c_get_13_86.setTagInfo(_td_c_get_13_86);
+ _jettag_c_get_13_86.doStart(context, out);
+ _jettag_c_get_13_86.doEnd();
+ out.write("\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Targets to assemble the built elements for particular configurations -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- These generally call the generated assemble scripts (named in -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ${assembleScriptName}) but may also add pre and post processing -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Add one target for each root element and each configuration -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<target name=\"assemble.org.eclipse."); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_24_37 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_24_37); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_24_37.setRuntimeParent(null);
+ _jettag_c_get_24_37.setTagInfo(_td_c_get_24_37);
+ _jettag_c_get_24_37.doStart(context, out);
+ _jettag_c_get_24_37.doEnd();
+ out.write("."); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_24_80 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_24_80); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_24_80.setRuntimeParent(null);
+ _jettag_c_get_24_80.setTagInfo(_td_c_get_24_80);
+ _jettag_c_get_24_80.doStart(context, out);
+ _jettag_c_get_24_80.doEnd();
+ out.write("\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant antfile=\"${assembleScriptName}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<!-- ADD POST STEPS -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Check out map files from correct repository -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Replace values for cvsRoot, package and mapVersionTag as desired. -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"checkLocal\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<available property=\"mapsLocal\" file=\"${buildDirectory}/maps\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<target name=\"getMapFiles\" depends=\"checkLocal\" unless=\"mapsLocal\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<!-- *** change the repo info -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"mapCvsRoot\" value=\":${cvsReadProtocol}:${cvsReadUser}@${cvsHost}:${cvsRep}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<property name=\"mapVersionTag\" value=\"HEAD\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"packagePath\" value=\"org.eclipse.${projectName}/org.eclipse.${subprojectName2}.releng/maps\"/>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<cvs cvsRsh=\"ssh\" cvsRoot=\"${mapCvsRoot}\" tag=\"${mapVersionTag}\" "); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\tpackage=\"${packagePath}\" dest=\"${buildDirectory}/maps\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<copy todir=\"${buildDirectory}/maps/CVS\" overwrite=\"true\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<fileset dir=\"${buildDirectory}/maps/${packagePath}/CVS\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</copy>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<copy todir=\"${buildDirectory}/maps\" overwrite=\"true\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<fileset dir=\"${buildDirectory}/maps/${packagePath}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</copy>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<delete dir=\"${buildDirectory}/maps/org.eclipse.${projectName}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<!--tag the map files project-->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"tagMapFiles\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<target name=\"tagMapFiles\" if=\"tagMaps\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<cvs cvsRsh=\"ssh\" dest=\"${buildDirectory}/maps\" command=\"tag v${timestamp}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do before setup -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"preSetup\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<mkdir dir=\"${buildDirectory}/${buildLabel}\"/>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do after setup but before starting the build proper -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"postSetup\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<!-- TODO: if your project requires more dependencies, add them here -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<!-- TODO: if your project requires more dependencies, add them here; if it does not require all of these, remove those not required -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<echo message=\"Download, then unpack: Eclipse, EMF, UML2, OCL, Query, Transaction, Validation, GEF, GMF ...\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${eclipseURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${eclipseFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.platform.doc.isv/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${emfURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${emfFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.emf.ecore/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${uml2URL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${uml2File}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.uml2/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${oclURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${oclFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.emf.ocl/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${queryURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${queryFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.emf.query/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${transactionURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${transactionFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.emf.transaction/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${validationURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${validationFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.emf.validation/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${gefURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${gefFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.gef/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${gmfURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${gmfFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.gmf/META-INF/MANIFEST.MF\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do before fetching the build elements -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"preFetch\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do after the fetch -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"postFetch\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<replace dir=\"${buildDirectory}/plugins\" value=\"${timestamp}\" token=\"@buildid@\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<include name=\"**/about.mappings\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</replace>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do before generating build scripts -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"preGenerate\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do after generating the build scripts -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"postGenerate\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"clean\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do before assembling -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"preAssemble\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do after assembling-->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"postAssemble\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do before running the build.xmls for the elements being built. -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"preProcess\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<replace dir=\"${buildDirectory}/plugins\" value=\"${timestamp}\" token=\"@build@\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<include name=\"**/about.mappings\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</replace>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do after running the build.xmls for the elements being built. -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"postProcess\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do after everything is built and assembled -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- (e.g., testing, posting, emailing, ...) -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"postBuild\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"gatherLogs\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Helper targets -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"gatherLogs\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<mkdir dir=\"${buildDirectory}/${buildLabel}/compilelogs\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"allElements\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<param name=\"target\" value=\"gatherLogs\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</antcall>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<unzip dest=\"${buildDirectory}/${buildLabel}/compilelogs\" overwrite=\"true\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<fileset dir=\"${buildDirectory}/features/org.eclipse."); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_197_57 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_197_57); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_197_57.setRuntimeParent(null);
+ _jettag_c_get_197_57.setTagInfo(_td_c_get_197_57);
+ _jettag_c_get_197_57.doStart(context, out);
+ _jettag_c_get_197_57.doEnd();
+ out.write("."); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_197_100 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_197_100); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_197_100.setRuntimeParent(null);
+ _jettag_c_get_197_100.setTagInfo(_td_c_get_197_100);
+ _jettag_c_get_197_100.doStart(context, out);
+ _jettag_c_get_197_100.doEnd();
+ out.write("\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t\t<include name=\"*.log.zip\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t</fileset>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</unzip>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"clean\" unless=\"noclean\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"allElements\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<param name=\"target\" value=\"cleanElement\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</antcall>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Default target -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"noDefault\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<echo message=\"You must specify a target when invoking this file\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("</project>"); //$NON-NLS-1$
+ out.write(NL);
+ }
+}
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_customTargetsxml_1.java b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_customTargetsxml_1.java
new file mode 100644
index 0000000..8640bc7
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_customTargetsxml_1.java
@@ -0,0 +1,492 @@
+package org.eclipse.jet.ec2008.pushbuttonbuild.compiled;
+
+import org.eclipse.jet.JET2Context;
+import org.eclipse.jet.JET2Template;
+import org.eclipse.jet.JET2Writer;
+import org.eclipse.jet.taglib.RuntimeTagElement;
+import org.eclipse.jet.taglib.TagInfo;
+
+public class _jet_customTargetsxml_1 implements JET2Template {
+ private static final String _jetns_c = "org.eclipse.jet.controlTags"; //$NON-NLS-1$
+
+
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+
+ public _jet_customTargetsxml_1() {
+ super();
+ }
+
+ private static final String NL = System.getProperty("line.separator"); //$NON-NLS-1$
+
+ private static final TagInfo _td_c_get_12_43 = new TagInfo("c:get", //$NON-NLS-1$
+ 12, 43,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@projectNamespace", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_23_37 = new TagInfo("c:get", //$NON-NLS-1$
+ 23, 37,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@projectNamespace", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_24_39 = new TagInfo("c:get", //$NON-NLS-1$
+ 24, 39,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@parentProjectName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_24_109 = new TagInfo("c:get", //$NON-NLS-1$
+ 24, 109,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@incubationTag", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_196_57 = new TagInfo("c:get", //$NON-NLS-1$
+ 196, 57,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@projectNamespace", //$NON-NLS-1$
+ } );
+
+ public void generate(final JET2Context context, final JET2Writer __out) {
+ JET2Writer out = __out;
+ out.write("<project name=\"Build specific targets and properties\" default=\"noDefault\" basedir=\".\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Run a given ${target} on all elements being built -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"allElements\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant antfile=\"${genericTargets}\" target=\"${target}\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"type\" value=\"feature\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"id\" value=\"org.eclipse."); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_12_43 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_12_43); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_12_43.setRuntimeParent(null);
+ _jettag_c_get_12_43.setTagInfo(_td_c_get_12_43);
+ _jettag_c_get_12_43.doStart(context, out);
+ _jettag_c_get_12_43.doEnd();
+ out.write("\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Targets to assemble the built elements for particular configurations -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- These generally call the generated assemble scripts (named in -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ${assembleScriptName}) but may also add pre and post processing -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Add one target for each root element and each configuration -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<target name=\"assemble.org.eclipse."); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_23_37 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_23_37); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_23_37.setRuntimeParent(null);
+ _jettag_c_get_23_37.setTagInfo(_td_c_get_23_37);
+ _jettag_c_get_23_37.doStart(context, out);
+ _jettag_c_get_23_37.doEnd();
+ out.write("\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"archiveName\" value=\""); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_24_39 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_24_39); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_24_39.setRuntimeParent(null);
+ _jettag_c_get_24_39.setTagInfo(_td_c_get_24_39);
+ _jettag_c_get_24_39.doStart(context, out);
+ _jettag_c_get_24_39.doEnd();
+ out.write("-${subprojectName}-runtime-"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_24_109 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_24_109); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_24_109.setRuntimeParent(null);
+ _jettag_c_get_24_109.setTagInfo(_td_c_get_24_109);
+ _jettag_c_get_24_109.doStart(context, out);
+ _jettag_c_get_24_109.doEnd();
+ out.write("${buildAlias}.zip\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant antfile=\"${assembleScriptName}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<!-- ADD POST STEPS -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Check out map files from correct repository -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Replace values for cvsRoot, package and mapVersionTag as desired. -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"checkLocal\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<available property=\"mapsLocal\" file=\"${buildDirectory}/maps\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<target name=\"getMapFiles\" depends=\"checkLocal\" unless=\"mapsLocal\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<!-- *** change the repo info -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"mapCvsRoot\" value=\":${cvsReadProtocol}:${cvsReadUser}@${cvsHost}:${cvsRep}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"mapVersionTag\" value=\"HEAD\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"packagePath\" value=\"org.eclipse.${projectName}/org.eclipse.${subprojectName2}.releng/maps\"/>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<cvs cvsRsh=\"ssh\" cvsRoot=\"${mapCvsRoot}\" tag=\"${mapVersionTag}\" "); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\tpackage=\"${packagePath}\" dest=\"${buildDirectory}/maps\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<copy todir=\"${buildDirectory}/maps/CVS\" overwrite=\"true\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<fileset dir=\"${buildDirectory}/maps/${packagePath}/CVS\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</copy>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<copy todir=\"${buildDirectory}/maps\" overwrite=\"true\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<fileset dir=\"${buildDirectory}/maps/${packagePath}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</copy>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<delete dir=\"${buildDirectory}/maps/org.eclipse.${projectName}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<!--tag the map files project-->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"tagMapFiles\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<target name=\"tagMapFiles\" if=\"tagMaps\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<cvs cvsRsh=\"ssh\" dest=\"${buildDirectory}/maps\" command=\"tag v${timestamp}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do before setup -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"preSetup\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<mkdir dir=\"${buildDirectory}/${buildLabel}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do after setup but before starting the build proper -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"postSetup\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<!-- TODO: if your project requires more dependencies, add them here; if it does not require all of these, remove those not required -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<echo message=\"Download, then unpack: Eclipse, EMF, UML2, OCL, Query, Transaction, Validation, GEF, GMF ...\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${eclipseURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${eclipseFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.platform.doc.isv/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${emfURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${emfFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.emf.ecore/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${uml2URL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${uml2File}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.uml2/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${oclURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${oclFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.emf.ocl/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${queryURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${queryFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.emf.query/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${transactionURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${transactionFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.emf.transaction/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${validationURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${validationFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.emf.validation/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${gefURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${gefFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.gef/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${gmfURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${gmfFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.gmf/META-INF/MANIFEST.MF\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do before fetching the build elements -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"preFetch\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do after the fetch -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"postFetch\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<replace dir=\"${buildDirectory}/plugins\" value=\"${timestamp}\" token=\"@buildid@\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<include name=\"**/about.mappings\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</replace>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do before generating build scripts -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"preGenerate\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do after generating the build scripts -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"postGenerate\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"clean\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do before assembling -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"preAssemble\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do after assembling-->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"postAssemble\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do before running the build.xmls for the elements being built. -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"preProcess\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<replace dir=\"${buildDirectory}/plugins\" value=\"${timestamp}\" token=\"@build@\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<include name=\"**/about.mappings\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</replace>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do after running the build.xmls for the elements being built. -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"postProcess\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do after everything is built and assembled -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- (e.g., testing, posting, emailing, ...) -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"postBuild\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"gatherLogs\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Helper targets -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"gatherLogs\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<mkdir dir=\"${buildDirectory}/${buildLabel}/compilelogs\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"allElements\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<param name=\"target\" value=\"gatherLogs\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</antcall>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<unzip dest=\"${buildDirectory}/${buildLabel}/compilelogs\" overwrite=\"true\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<fileset dir=\"${buildDirectory}/features/org.eclipse."); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_196_57 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_196_57); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_196_57.setRuntimeParent(null);
+ _jettag_c_get_196_57.setTagInfo(_td_c_get_196_57);
+ _jettag_c_get_196_57.doStart(context, out);
+ _jettag_c_get_196_57.doEnd();
+ out.write("\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t\t<include name=\"*.log.zip\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t</fileset>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</unzip>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"clean\" unless=\"noclean\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"allElements\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<param name=\"target\" value=\"cleanElement\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</antcall>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Default target -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"noDefault\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<echo message=\"You must specify a target when invoking this file\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("</project>"); //$NON-NLS-1$
+ out.write(NL);
+ }
+}
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_customTargetsxml_2.java b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_customTargetsxml_2.java
new file mode 100644
index 0000000..bf5a614
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_customTargetsxml_2.java
@@ -0,0 +1,597 @@
+package org.eclipse.jet.ec2008.pushbuttonbuild.compiled;
+
+import org.eclipse.jet.JET2Context;
+import org.eclipse.jet.JET2Template;
+import org.eclipse.jet.JET2Writer;
+import org.eclipse.jet.taglib.RuntimeTagElement;
+import org.eclipse.jet.taglib.TagInfo;
+
+public class _jet_customTargetsxml_2 implements JET2Template {
+ private static final String _jetns_c = "org.eclipse.jet.controlTags"; //$NON-NLS-1$
+
+
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+
+ public _jet_customTargetsxml_2() {
+ super();
+ }
+
+ private static final String NL = System.getProperty("line.separator"); //$NON-NLS-1$
+
+ private static final TagInfo _td_c_get_12_42 = new TagInfo("c:get", //$NON-NLS-1$
+ 12, 42,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@projectNamespace", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_23_36 = new TagInfo("c:get", //$NON-NLS-1$
+ 23, 36,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@projectNamespace", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_24_38 = new TagInfo("c:get", //$NON-NLS-1$
+ 24, 38,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@parentProjectName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_151_56 = new TagInfo("c:get", //$NON-NLS-1$
+ 151, 56,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@projectNamespace", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_164_47 = new TagInfo("c:get", //$NON-NLS-1$
+ 164, 47,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@parentProjectName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_172_68 = new TagInfo("c:get", //$NON-NLS-1$
+ 172, 68,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@parentProjectName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_187_36 = new TagInfo("c:get", //$NON-NLS-1$
+ 187, 36,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@projectNamespace", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_206_45 = new TagInfo("c:get", //$NON-NLS-1$
+ 206, 45,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@parentProjectName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_222_49 = new TagInfo("c:get", //$NON-NLS-1$
+ 222, 49,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@parentProjectName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_226_48 = new TagInfo("c:get", //$NON-NLS-1$
+ 226, 48,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@parentProjectName", //$NON-NLS-1$
+ } );
+
+ public void generate(final JET2Context context, final JET2Writer __out) {
+ JET2Writer out = __out;
+ out.write("<project name=\"Build specific targets and properties\" default=\"noDefault\" basedir=\".\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<!-- Run a given ${target} on all elements being built -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<target name=\"allElements\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<ant antfile=\"${genericTargets}\" target=\"${target}\" >"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"type\" value=\"feature\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"id\" value=\"org.eclipse."); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_12_42 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_12_42); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_12_42.setRuntimeParent(null);
+ _jettag_c_get_12_42.setTagInfo(_td_c_get_12_42);
+ _jettag_c_get_12_42.doStart(context, out);
+ _jettag_c_get_12_42.doEnd();
+ out.write(".tests\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<!-- Targets to assemble the built elements for particular configurations -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<!-- These generally call the generated assemble scripts (named in -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<!-- ${assembleScriptName}) but may also add pre and post processing -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<!-- Add one target for each root element and each configuration -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("<target name=\"assemble.org.eclipse."); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_23_36 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_23_36); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_23_36.setRuntimeParent(null);
+ _jettag_c_get_23_36.setTagInfo(_td_c_get_23_36);
+ _jettag_c_get_23_36.doStart(context, out);
+ _jettag_c_get_23_36.doEnd();
+ out.write(".tests\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<property name=\"archiveName\" value=\""); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_24_38 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_24_38); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_24_38.setRuntimeParent(null);
+ _jettag_c_get_24_38.setTagInfo(_td_c_get_24_38);
+ _jettag_c_get_24_38.doStart(context, out);
+ _jettag_c_get_24_38.doEnd();
+ out.write("-${subprojectName}-junit-tests-${buildAlias}.zip\"/>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<ant antfile=\"${assembleScriptName}\"/>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<!-- ADD POST STEPS -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<!-- Check out map files from correct repository -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<!-- Replace values for cvsRoot, package and mapVersionTag as desired. -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<target name=\"checkLocal\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<available property=\"mapsLocal\" file=\"${buildDirectory}/maps\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("<target name=\"getMapFiles\" depends=\"checkLocal\" unless=\"mapsLocal\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- *** change the repo info -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<property name=\"mapCvsRoot\" value=\":${cvsReadProtocol}:${cvsReadUser}@${cvsHost}:${cvsRep}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<property name=\"mapVersionTag\" value=\"HEAD\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<property name=\"packagePath\" value=\"org.eclipse.${projectName}/org.eclipse.${subprojectName2}.releng/maps\"/>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<cvs cvsRsh=\"ssh\" cvsRoot=\"${mapCvsRoot}\" tag=\"${mapVersionTag}\" "); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\tpackage=\"${packagePath}\" dest=\"${buildDirectory}/maps\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<copy todir=\"${buildDirectory}/maps/CVS\" overwrite=\"true\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<fileset dir=\"${buildDirectory}/maps/${packagePath}/CVS\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</copy>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<copy todir=\"${buildDirectory}/maps\" overwrite=\"true\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<fileset dir=\"${buildDirectory}/maps/${packagePath}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</copy>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<delete dir=\"${buildDirectory}/maps/org.eclipse.${projectName}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!--tag the map files project-->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<antcall target=\"tagMapFiles\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("<target name=\"tagMapFiles\" if=\"tagMaps\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<cvs dest=\"${buildDirectory}/maps/org.eclipse.${subprojectName2}\" command=\"tag v${timestamp}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<!-- Steps to do before setup -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<target name=\"preSetup\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<!-- Steps to do after setup but before starting the build proper -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<target name=\"postSetup\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<!-- Steps to do before fetching the build elements -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<target name=\"preFetch\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<!-- Steps to do after the fetch -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<target name=\"postFetch\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<replace dir=\"${buildDirectory}/plugins\" value=\"${timestamp}\" token=\"@buildid@\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<include name=\"**/about.mappings\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</replace>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<!-- Steps to do before generating build scripts -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<target name=\"preGenerate\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<!-- Steps to do after generating the build scripts -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<target name=\"postGenerate\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<antcall target=\"clean\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<!-- Steps to do before assembling -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<target name=\"preAssemble\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<!-- Steps to do after assembling-->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<target name=\"postAssemble\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<!-- Steps to do before running the build.xmls for the elements being built. -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<target name=\"preProcess\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<replace dir=\"${buildDirectory}/plugins\" value=\"${timestamp}\" token=\"@build@\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<include name=\"**/about.mappings\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</replace>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<!-- Steps to do after running the build.xmls for the elements being built. -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<target name=\"postProcess\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<condition property=\"logsAvailable\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<istrue value=\"${javacVerbose}\"/> "); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</condition>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<antcall target=\"gatherLogs\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<!-- Steps to do after everything is built and assembled -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<!-- (e.g., testing, posting, emailing, ...) -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<target name=\"postBuild\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<antcall target=\"packageTestFramework\" />\t"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<!-- Helper targets -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<target name=\"gatherLogs\" if=\"logsAvailable\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<mkdir dir=\"${buildDirectory}/${buildLabel}/compilelogs\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<antcall target=\"allElements\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<param name=\"target\" value=\"gatherLogs\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</antcall>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<unzip dest=\"${buildDirectory}/${buildLabel}/compilelogs\" overwrite=\"true\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<fileset dir=\"${buildDirectory}/features/org.eclipse."); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_151_56 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_151_56); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_151_56.setRuntimeParent(null);
+ _jettag_c_get_151_56.setTagInfo(_td_c_get_151_56);
+ _jettag_c_get_151_56.doStart(context, out);
+ _jettag_c_get_151_56.doEnd();
+ out.write(".tests\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<include name=\"*.log.zip\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</fileset>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</unzip>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("<target name=\"clean\" unless=\"noclean\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<antcall target=\"allElements\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<param name=\"target\" value=\"cleanElement\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</antcall>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("<target name=\"packageTestFramework\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!--package automated test framework used in "); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_164_47 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_164_47); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_164_47.setRuntimeParent(null);
+ _jettag_c_get_164_47.setTagInfo(_td_c_get_164_47);
+ _jettag_c_get_164_47.doStart(context, out);
+ _jettag_c_get_164_47.doEnd();
+ out.write("-${subprojectName} builds-->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<property name=\"workingDirectory\" value=\"${buildDirectory}/test.assembly\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<echo message=\"workingDirectory: ${workingDirectory}\"/>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!--unzip the junit tests-->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <mkdir dir=\"${workingDirectory}/eclipse\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<unzip dest=\"${workingDirectory}\" overwrite=\"true\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<fileset dir=\"${buildDirectory}/${buildLabel}\"><include name=\"**/"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_172_68 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_172_68); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_172_68.setRuntimeParent(null);
+ _jettag_c_get_172_68.setTagInfo(_td_c_get_172_68);
+ _jettag_c_get_172_68.doStart(context, out);
+ _jettag_c_get_172_68.doEnd();
+ out.write("-${subprojectName}-junit-tests*.zip\"/></fileset>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</unzip>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- create top level testing directory--> "); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<delete dir=\"${workingDirectory}/testing\"/>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <mkdir dir=\"${workingDirectory}/testing\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!--compile the tool used to generate the test.properties file, then run it.-->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!--test.properties maps test plugin id's to the name of the plugin directory-->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <!--eclipse.home is relative to the scripts directory in the org.eclipse.pde.build plugin. Assume the plugins used in the classpath are in the same directory as org.eclipse.pde.build-->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <property name=\"eclipse.home\" value=\"../../..\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write(" <generateTestProperties "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" buildDirectory=\"${buildDirectory}\" "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" featureId=\"org.eclipse."); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_187_36 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_187_36); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_187_36.setRuntimeParent(null);
+ _jettag_c_get_187_36.setTagInfo(_td_c_get_187_36);
+ _jettag_c_get_187_36.doStart(context, out);
+ _jettag_c_get_187_36.doEnd();
+ out.write(".tests\" "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" outputFile=\"${workingDirectory}/testing/test.properties\" "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" /> "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!--load the property file created with the directory names for all test plugins-->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<property file=\"${workingDirectory}/testing/test.properties\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- Remove the plugin version number appended to the org.eclipse.test plugin directory."); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" \t This is so that contributors of test.xml's do not have to update their paths to "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" \t library.xml in org.eclipse.test whenever its version is updated."); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" \t -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" \t<move todir=\"${workingDirectory}/eclipse/plugins/org.eclipse.test\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" \t\t<fileset dir=\"${workingDirectory}/eclipse/plugins/${org.eclipse.test}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" \t</move>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" \t"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" \t<!--the Ant move task leaves behind an empty directory-->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" \t<delete dir=\"${workingDirectory}/eclipse/plugins/${org.eclipse.test}\" includeEmptyDirs=\"true\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" \t<!-- rezip the JUnit plugin tests -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<zip destfile=\"${workingDirectory}/testing/"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_206_45 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_206_45); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_206_45.setRuntimeParent(null);
+ _jettag_c_get_206_45.setTagInfo(_td_c_get_206_45);
+ _jettag_c_get_206_45.doStart(context, out);
+ _jettag_c_get_206_45.doEnd();
+ out.write("-${subprojectName}-junit-tests-${buildAlias}.zip\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t <zipfileset dir=\"${workingDirectory}/eclipse\" prefix=\"eclipse\"/>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</zip>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" \t"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" \t<!--Copy scripts and doc used in the automated testing to the testing directory-->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <copy todir=\"${workingDirectory}/testing\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" \t<fileset dir=\"${buildDirectory}/plugins/org.eclipse.test\" includes=\"testframework.html,JUNIT.XSL\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" </copy>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <copy todir=\"${workingDirectory}/testing\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" \t<fileset dir=\"${builderDirectory}/scripts\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" </copy>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!--copy in the file containing the URL of the Eclipse build used for testing-->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <copy todir=\"${workingDirectory}/testing\" file=\"${buildDirectory}/../build.cfg\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!--create zip file of the automated testing framework-->\t"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<zip destfile=\"${buildDirectory}/${buildLabel}/"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_222_49 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_222_49); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_222_49.setRuntimeParent(null);
+ _jettag_c_get_222_49.setTagInfo(_td_c_get_222_49);
+ _jettag_c_get_222_49.doStart(context, out);
+ _jettag_c_get_222_49.doEnd();
+ out.write("-${subprojectName}-automated-tests-${buildAlias}.zip\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t <zipfileset dir=\"${workingDirectory}/testing\" prefix=\"testing\"/>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</zip>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<delete file=\"${buildDirectory}/${buildLabel}/"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_226_48 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_226_48); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_226_48.setRuntimeParent(null);
+ _jettag_c_get_226_48.setTagInfo(_td_c_get_226_48);
+ _jettag_c_get_226_48.doStart(context, out);
+ _jettag_c_get_226_48.doEnd();
+ out.write("-${subprojectName}-junit-tests-${buildAlias}.zip\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<!-- Default target -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<target name=\"noDefault\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<echo message=\"You must specify a target when invoking this file\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("</project>"); //$NON-NLS-1$
+ out.write(NL);
+ }
+}
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_customTargetsxml_3.java b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_customTargetsxml_3.java
new file mode 100644
index 0000000..a156f2f
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_customTargetsxml_3.java
@@ -0,0 +1,494 @@
+package org.eclipse.jet.ec2008.pushbuttonbuild.compiled;
+
+import org.eclipse.jet.JET2Context;
+import org.eclipse.jet.JET2Template;
+import org.eclipse.jet.JET2Writer;
+import org.eclipse.jet.taglib.RuntimeTagElement;
+import org.eclipse.jet.taglib.TagInfo;
+
+public class _jet_customTargetsxml_3 implements JET2Template {
+ private static final String _jetns_c = "org.eclipse.jet.controlTags"; //$NON-NLS-1$
+
+
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+
+ public _jet_customTargetsxml_3() {
+ super();
+ }
+
+ private static final String NL = System.getProperty("line.separator"); //$NON-NLS-1$
+
+ private static final TagInfo _td_c_get_6_38 = new TagInfo("c:get", //$NON-NLS-1$
+ 6, 38,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@parentProjectName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_6_104 = new TagInfo("c:get", //$NON-NLS-1$
+ 6, 104,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@incubationTag", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_13_43 = new TagInfo("c:get", //$NON-NLS-1$
+ 13, 43,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@projectNamespace", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_24_37 = new TagInfo("c:get", //$NON-NLS-1$
+ 24, 37,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@projectNamespace", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_197_57 = new TagInfo("c:get", //$NON-NLS-1$
+ 197, 57,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@projectNamespace", //$NON-NLS-1$
+ } );
+
+ public void generate(final JET2Context context, final JET2Writer __out) {
+ JET2Writer out = __out;
+ out.write("<project name=\"Build specific targets and properties\" default=\"noDefault\" basedir=\".\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<property name=\"archiveName\" value=\""); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_6_38 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_6_38); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_6_38.setRuntimeParent(null);
+ _jettag_c_get_6_38.setTagInfo(_td_c_get_6_38);
+ _jettag_c_get_6_38.doStart(context, out);
+ _jettag_c_get_6_38.doEnd();
+ out.write("-${subprojectName}-SDK-"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_6_104 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_6_104); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_6_104.setRuntimeParent(null);
+ _jettag_c_get_6_104.setTagInfo(_td_c_get_6_104);
+ _jettag_c_get_6_104.doStart(context, out);
+ _jettag_c_get_6_104.doEnd();
+ out.write("${buildAlias}.zip\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Run a given ${target} on all elements being built -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"allElements\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant antfile=\"${genericTargets}\" target=\"${target}\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"type\" value=\"feature\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"id\" value=\"org.eclipse."); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_13_43 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_13_43); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_13_43.setRuntimeParent(null);
+ _jettag_c_get_13_43.setTagInfo(_td_c_get_13_43);
+ _jettag_c_get_13_43.doStart(context, out);
+ _jettag_c_get_13_43.doEnd();
+ out.write(".sdk\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Targets to assemble the built elements for particular configurations -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- These generally call the generated assemble scripts (named in -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ${assembleScriptName}) but may also add pre and post processing -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Add one target for each root element and each configuration -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<target name=\"assemble.org.eclipse."); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_24_37 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_24_37); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_24_37.setRuntimeParent(null);
+ _jettag_c_get_24_37.setTagInfo(_td_c_get_24_37);
+ _jettag_c_get_24_37.doStart(context, out);
+ _jettag_c_get_24_37.doEnd();
+ out.write(".sdk\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant antfile=\"${assembleScriptName}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<!-- ADD POST STEPS -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Check out map files from correct repository -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Replace values for cvsRoot, package and mapVersionTag as desired. -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"checkLocal\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<available property=\"mapsLocal\" file=\"${buildDirectory}/maps\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<target name=\"getMapFiles\" depends=\"checkLocal\" unless=\"mapsLocal\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<!-- *** change the repo info -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"mapCvsRoot\" value=\":${cvsReadProtocol}:${cvsReadUser}@${cvsHost}:${cvsRep}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<property name=\"mapVersionTag\" value=\"HEAD\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"packagePath\" value=\"org.eclipse.${projectName}/org.eclipse.${subprojectName2}.releng/maps\"/>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<cvs cvsRsh=\"ssh\" cvsRoot=\"${mapCvsRoot}\" tag=\"${mapVersionTag}\" "); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\tpackage=\"${packagePath}\" dest=\"${buildDirectory}/maps\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<copy todir=\"${buildDirectory}/maps/CVS\" overwrite=\"true\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<fileset dir=\"${buildDirectory}/maps/${packagePath}/CVS\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</copy>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<copy todir=\"${buildDirectory}/maps\" overwrite=\"true\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<fileset dir=\"${buildDirectory}/maps/${packagePath}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</copy>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<delete dir=\"${buildDirectory}/maps/org.eclipse.${projectName}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<!--tag the map files project-->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"tagMapFiles\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<target name=\"tagMapFiles\" if=\"tagMaps\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<cvs cvsRsh=\"ssh\" dest=\"${buildDirectory}/maps\" command=\"tag v${timestamp}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do before setup -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"preSetup\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<mkdir dir=\"${buildDirectory}/${buildLabel}\"/>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do after setup but before starting the build proper -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"postSetup\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<!-- TODO: if your project requires more dependencies, add them here -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<!-- TODO: if your project requires more dependencies, add them here; if it does not require all of these, remove those not required -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<echo message=\"Download, then unpack: Eclipse, EMF, UML2, OCL, Query, Transaction, Validation, GEF, GMF ...\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${eclipseURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${eclipseFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.platform.doc.isv/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${emfURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${emfFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.emf.ecore/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${uml2URL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${uml2File}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.uml2/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${oclURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${oclFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.emf.ocl/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${queryURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${queryFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.emf.query/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${transactionURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${transactionFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.emf.transaction/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${validationURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${validationFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.emf.validation/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${gefURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${gefFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.gef/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${gmfURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${gmfFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.gmf/META-INF/MANIFEST.MF\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do before fetching the build elements -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"preFetch\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do after the fetch -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"postFetch\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<replace dir=\"${buildDirectory}/plugins\" value=\"${timestamp}\" token=\"@buildid@\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<include name=\"**/about.mappings\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</replace>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do before generating build scripts -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"preGenerate\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do after generating the build scripts -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"postGenerate\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"clean\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do before assembling -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"preAssemble\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do after assembling-->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"postAssemble\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do before running the build.xmls for the elements being built. -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"preProcess\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<replace dir=\"${buildDirectory}/plugins\" value=\"${timestamp}\" token=\"@build@\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<include name=\"**/about.mappings\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</replace>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do after running the build.xmls for the elements being built. -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"postProcess\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do after everything is built and assembled -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- (e.g., testing, posting, emailing, ...) -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"postBuild\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"gatherLogs\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Helper targets -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"gatherLogs\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<mkdir dir=\"${buildDirectory}/${buildLabel}/compilelogs\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"allElements\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<param name=\"target\" value=\"gatherLogs\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</antcall>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<unzip dest=\"${buildDirectory}/${buildLabel}/compilelogs\" overwrite=\"true\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<fileset dir=\"${buildDirectory}/features/org.eclipse."); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_197_57 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_197_57); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_197_57.setRuntimeParent(null);
+ _jettag_c_get_197_57.setTagInfo(_td_c_get_197_57);
+ _jettag_c_get_197_57.doStart(context, out);
+ _jettag_c_get_197_57.doEnd();
+ out.write(".sdk\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t\t<include name=\"*.log.zip\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t</fileset>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</unzip>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"clean\" unless=\"noclean\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"allElements\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<param name=\"target\" value=\"cleanElement\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</antcall>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Default target -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"noDefault\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<echo message=\"You must specify a target when invoking this file\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("</project>"); //$NON-NLS-1$
+ out.write(NL);
+ }
+}
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_customTargetsxml_4.java b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_customTargetsxml_4.java
new file mode 100644
index 0000000..6becd5b
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_customTargetsxml_4.java
@@ -0,0 +1,492 @@
+package org.eclipse.jet.ec2008.pushbuttonbuild.compiled;
+
+import org.eclipse.jet.JET2Context;
+import org.eclipse.jet.JET2Template;
+import org.eclipse.jet.JET2Writer;
+import org.eclipse.jet.taglib.RuntimeTagElement;
+import org.eclipse.jet.taglib.TagInfo;
+
+public class _jet_customTargetsxml_4 implements JET2Template {
+ private static final String _jetns_c = "org.eclipse.jet.controlTags"; //$NON-NLS-1$
+
+
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+
+ public _jet_customTargetsxml_4() {
+ super();
+ }
+
+ private static final String NL = System.getProperty("line.separator"); //$NON-NLS-1$
+
+ private static final TagInfo _td_c_get_12_43 = new TagInfo("c:get", //$NON-NLS-1$
+ 12, 43,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@projectNamespace", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_23_37 = new TagInfo("c:get", //$NON-NLS-1$
+ 23, 37,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@projectNamespace", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_24_39 = new TagInfo("c:get", //$NON-NLS-1$
+ 24, 39,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@parentProjectName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_24_110 = new TagInfo("c:get", //$NON-NLS-1$
+ 24, 110,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@incubationTag", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_195_57 = new TagInfo("c:get", //$NON-NLS-1$
+ 195, 57,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@projectNamespace", //$NON-NLS-1$
+ } );
+
+ public void generate(final JET2Context context, final JET2Writer __out) {
+ JET2Writer out = __out;
+ out.write("<project name=\"Build specific targets and properties\" default=\"noDefault\" basedir=\".\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Run a given ${target} on all elements being built -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"allElements\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant antfile=\"${genericTargets}\" target=\"${target}\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"type\" value=\"feature\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"id\" value=\"org.eclipse."); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_12_43 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_12_43); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_12_43.setRuntimeParent(null);
+ _jettag_c_get_12_43.setTagInfo(_td_c_get_12_43);
+ _jettag_c_get_12_43.doStart(context, out);
+ _jettag_c_get_12_43.doEnd();
+ out.write(".examples\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Targets to assemble the built elements for particular configurations -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- These generally call the generated assemble scripts (named in -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ${assembleScriptName}) but may also add pre and post processing -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Add one target for each root element and each configuration -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<target name=\"assemble.org.eclipse."); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_23_37 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_23_37); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_23_37.setRuntimeParent(null);
+ _jettag_c_get_23_37.setTagInfo(_td_c_get_23_37);
+ _jettag_c_get_23_37.doStart(context, out);
+ _jettag_c_get_23_37.doEnd();
+ out.write(".examples\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"archiveName\" value=\""); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_24_39 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_24_39); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_24_39.setRuntimeParent(null);
+ _jettag_c_get_24_39.setTagInfo(_td_c_get_24_39);
+ _jettag_c_get_24_39.doStart(context, out);
+ _jettag_c_get_24_39.doEnd();
+ out.write("-${subprojectName}-examples-"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_24_110 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_24_110); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_24_110.setRuntimeParent(null);
+ _jettag_c_get_24_110.setTagInfo(_td_c_get_24_110);
+ _jettag_c_get_24_110.doStart(context, out);
+ _jettag_c_get_24_110.doEnd();
+ out.write("${buildAlias}.zip\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant antfile=\"${assembleScriptName}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<!-- ADD POST STEPS -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Check out map files from correct repository -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Replace values for cvsRoot, package and mapVersionTag as desired. -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"checkLocal\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<available property=\"mapsLocal\" file=\"${buildDirectory}/maps\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<target name=\"getMapFiles\" depends=\"checkLocal\" unless=\"mapsLocal\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<!-- *** change the repo info -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"mapCvsRoot\" value=\":${cvsReadProtocol}:${cvsReadUser}@${cvsHost}:${cvsRep}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"mapVersionTag\" value=\"HEAD\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"packagePath\" value=\"org.eclipse.${projectName}/org.eclipse.${subprojectName2}.releng/maps\"/>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<cvs cvsRsh=\"ssh\" cvsRoot=\"${mapCvsRoot}\" tag=\"${mapVersionTag}\" "); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\tpackage=\"${packagePath}\" dest=\"${buildDirectory}/maps\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<copy todir=\"${buildDirectory}/maps/CVS\" overwrite=\"true\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<fileset dir=\"${buildDirectory}/maps/${packagePath}/CVS\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</copy>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<copy todir=\"${buildDirectory}/maps\" overwrite=\"true\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<fileset dir=\"${buildDirectory}/maps/${packagePath}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</copy>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<delete dir=\"${buildDirectory}/maps/org.eclipse.${projectName}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<!--tag the map files project-->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"tagMapFiles\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<target name=\"tagMapFiles\" if=\"tagMaps\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<cvs cvsRsh=\"ssh\" dest=\"${buildDirectory}/maps\" command=\"tag v${timestamp}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do before setup -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"preSetup\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<mkdir dir=\"${buildDirectory}/${buildLabel}\"/>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do after setup but before starting the build proper -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"postSetup\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<!-- TODO: if your project requires more dependencies, add them here; if it does not require all of these, remove those not required -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<echo message=\"Download, then unpack: Eclipse, EMF, UML2, OCL, Query, Transaction, Validation, GEF, GMF ...\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${eclipseURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${eclipseFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.platform.doc.isv/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${emfURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${emfFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.emf.ecore/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${uml2URL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${uml2File}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.uml2/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${oclURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${oclFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.emf.ocl/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${queryURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${queryFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.emf.query/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${transactionURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${transactionFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.emf.transaction/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${validationURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${validationFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.emf.validation/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${gefURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${gefFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.gef/plugin.xml\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getDependency\" antfile=\"${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${gmfURL}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${gmfFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"isUnpackedFile\" value=\"${buildDirectory}/plugins/org.eclipse.gmf/META-INF/MANIFEST.MF\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do before fetching the build elements -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"preFetch\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do after the fetch -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"postFetch\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<replace dir=\"${buildDirectory}/plugins\" value=\"${timestamp}\" token=\"@buildid@\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<include name=\"**/about.mappings\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</replace>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do before generating build scripts -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"preGenerate\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do after generating the build scripts -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"postGenerate\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"clean\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do before assembling -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"preAssemble\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do after assembling-->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"postAssemble\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do before running the build.xmls for the elements being built. -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"preProcess\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<replace dir=\"${buildDirectory}/plugins\" value=\"${timestamp}\" token=\"@build@\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<include name=\"**/about.mappings\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</replace>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do after running the build.xmls for the elements being built. -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"postProcess\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Steps to do after everything is built and assembled -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- (e.g., testing, posting, emailing, ...) -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"postBuild\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"gatherLogs\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Helper targets -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"gatherLogs\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<mkdir dir=\"${buildDirectory}/${buildLabel}/compilelogs\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"allElements\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<param name=\"target\" value=\"gatherLogs\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</antcall>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<unzip dest=\"${buildDirectory}/${buildLabel}/compilelogs\" overwrite=\"true\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<fileset dir=\"${buildDirectory}/features/org.eclipse."); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_195_57 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_195_57); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_195_57.setRuntimeParent(null);
+ _jettag_c_get_195_57.setTagInfo(_td_c_get_195_57);
+ _jettag_c_get_195_57.doStart(context, out);
+ _jettag_c_get_195_57.doEnd();
+ out.write(".examples\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t\t<include name=\"*.log.zip\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t</fileset>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</unzip>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<target name=\"clean\" unless=\"noclean\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"allElements\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<param name=\"target\" value=\"cleanElement\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</antcall>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- Default target -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<!-- ===================================================================== -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<target name=\"noDefault\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<echo message=\"You must specify a target when invoking this file\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("</project>"); //$NON-NLS-1$
+ out.write(NL);
+ }
+}
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_customTestxml.java b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_customTestxml.java
new file mode 100644
index 0000000..88bb95e
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_customTestxml.java
@@ -0,0 +1,98 @@
+package org.eclipse.jet.ec2008.pushbuttonbuild.compiled;
+
+import org.eclipse.jet.JET2Context;
+import org.eclipse.jet.JET2Template;
+import org.eclipse.jet.JET2Writer;
+
+public class _jet_customTestxml implements JET2Template {
+
+
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+
+ public _jet_customTestxml() {
+ super();
+ }
+
+ private static final String NL = System.getProperty("line.separator"); //$NON-NLS-1$
+
+ public void generate(final JET2Context context, final JET2Writer __out) {
+ JET2Writer out = __out;
+ out.write("<project name=\"Customized testing instructions\" default=\"customSetup\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<property name=\"buildConfigFile\" value=\"${testDir}/../../build.cfg\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<available file=\"${buildConfigFile}\" type=\"file\" property=\"buildConfigIsAvailable\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<target name=\"loadbuildConfig\" if=\"buildConfigIsAvailable\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property file=\"${buildConfigFile}\" />"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t<target name=\"customSetup\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<fail unless=\"buildConfigIsAvailable\" message=\"ERROR! Can't find ${buildConfigFile}\"/>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<antcall target=\"loadbuildConfig\"/>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<echo message=\"Unpack Eclipse SDK to ${testDir}...\"/>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<echo message=\"customTest.xml: basedir = ${basedir}\"/>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"getTestDependencies.xml\" value=\"${testDir}/../../org.eclipse.modeling.common.releng/scripts/getTestDependencies.xml\"/>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<ant target=\"getTestDependency\" antfile=\"${getTestDependencies.xml}\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"basedir\" value=\"${basedir}\"/>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"url\" value=\"${eclipseURL}\"/>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"file\" value=\"${eclipseFile}\"/>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<property name=\"unpackDest\" value=\"${testDir}\"/>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</ant>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<!-- TODO: if your project requires more dependencies for testing, add them here -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<echo message=\"Copy EMF SDK + Eclipse SDK to ${executionDir}...\"/>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<copy todir=\"${executionDir}\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t<fileset dir=\"${downloadsDir}\" includes=\"${emfFile},${eclipseFile}\"/>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t</copy>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<property name=\"shell\" value=\"relengbuildgtk.sh\"/>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<!--copy the script which invokes the tests -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<copy file=\"${tester}/${shell}\" todir=\"${executionDir}\"/>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<chmod file=\"${executionDir}/${shell}\" perm=\"ugo+rx\"/>\t\t"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<!--copy the testing.property files -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<copy file=\"${tester}/testing.properties\" todir=\"${executionDir}\"/>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("\t\t<!-- at this point, we exit from this script and back into the parent script (presumably in pde or eclipse.releng?) -->"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t<echo message=\"Running ${shell} ...\"/>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</target>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("</project>"); //$NON-NLS-1$
+ out.write(NL);
+ }
+}
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_cvsignore.java b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_cvsignore.java
new file mode 100644
index 0000000..38e829e
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_cvsignore.java
@@ -0,0 +1,23 @@
+package org.eclipse.jet.ec2008.pushbuttonbuild.compiled;
+
+import org.eclipse.jet.JET2Context;
+import org.eclipse.jet.JET2Template;
+import org.eclipse.jet.JET2Writer;
+
+public class _jet_cvsignore implements JET2Template {
+
+
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+
+ public _jet_cvsignore() {
+ super();
+ }
+
+ private static final String NL = System.getProperty("line.separator"); //$NON-NLS-1$
+
+ public void generate(final JET2Context context, final JET2Writer __out) {
+ JET2Writer out = __out;
+ out.write(".project"); //$NON-NLS-1$
+ out.write(NL);
+ }
+}
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_dump.java b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_dump.java
new file mode 100644
index 0000000..4264696
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_dump.java
@@ -0,0 +1,45 @@
+package org.eclipse.jet.ec2008.pushbuttonbuild.compiled;
+
+import org.eclipse.jet.JET2Context;
+import org.eclipse.jet.JET2Template;
+import org.eclipse.jet.JET2Writer;
+import org.eclipse.jet.taglib.RuntimeTagElement;
+import org.eclipse.jet.taglib.TagInfo;
+
+public class _jet_dump implements JET2Template {
+ private static final String _jetns_c = "org.eclipse.jet.controlTags"; //$NON-NLS-1$
+
+
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+
+ public _jet_dump() {
+ super();
+ }
+
+ private static final String NL = System.getProperty("line.separator"); //$NON-NLS-1$
+
+ private static final TagInfo _td_c_dump_5_1 = new TagInfo("c:dump", //$NON-NLS-1$
+ 5, 1,
+ new String[] {
+ "select", //$NON-NLS-1$
+ "format", //$NON-NLS-1$
+ "entities", //$NON-NLS-1$
+ },
+ new String[] {
+ "/*", //$NON-NLS-1$
+ "true", //$NON-NLS-1$
+ "true", //$NON-NLS-1$
+ } );
+
+ public void generate(final JET2Context context, final JET2Writer __out) {
+ JET2Writer out = __out;
+ out.write("<?xml version=\"1.0\" encoding=\"utf-8\"?>"); //$NON-NLS-1$
+ out.write(NL);
+ RuntimeTagElement _jettag_c_dump_5_1 = context.getTagFactory().createRuntimeTag(_jetns_c, "dump", "c:dump", _td_c_dump_5_1); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_dump_5_1.setRuntimeParent(null);
+ _jettag_c_dump_5_1.setTagInfo(_td_c_dump_5_1);
+ _jettag_c_dump_5_1.doStart(context, out);
+ _jettag_c_dump_5_1.doEnd();
+ out.write(NL);
+ }
+}
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_main.java b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_main.java
new file mode 100644
index 0000000..eeeedcc
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_main.java
@@ -0,0 +1,848 @@
+package org.eclipse.jet.ec2008.pushbuttonbuild.compiled;
+
+import org.eclipse.jet.JET2Context;
+import org.eclipse.jet.JET2Template;
+import org.eclipse.jet.JET2Writer;
+import org.eclipse.jet.taglib.RuntimeTagElement;
+import org.eclipse.jet.taglib.TagInfo;
+
+public class _jet_main implements JET2Template {
+ private static final String _jetns_c = "org.eclipse.jet.controlTags"; //$NON-NLS-1$
+ private static final String _jetns_ws = "org.eclipse.jet.workspaceTags"; //$NON-NLS-1$
+
+
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+
+ public _jet_main() {
+ super();
+ }
+
+ private static final String NL = System.getProperty("line.separator"); //$NON-NLS-1$
+
+ private static final TagInfo _td_c_setVariable_11_1 = new TagInfo("c:setVariable", //$NON-NLS-1$
+ 11, 1,
+ new String[] {
+ "var", //$NON-NLS-1$
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "build", //$NON-NLS-1$
+ "/*", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_set_13_1 = new TagInfo("c:set", //$NON-NLS-1$
+ 13, 1,
+ new String[] {
+ "select", //$NON-NLS-1$
+ "name", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build", //$NON-NLS-1$
+ "relengProjectName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_13_61 = new TagInfo("c:get", //$NON-NLS-1$
+ 13, 61,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@projectNamespace", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_set_14_1 = new TagInfo("c:set", //$NON-NLS-1$
+ 14, 1,
+ new String[] {
+ "select", //$NON-NLS-1$
+ "name", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build", //$NON-NLS-1$
+ "incubationTag", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_if_15_1 = new TagInfo("c:if", //$NON-NLS-1$
+ 15, 1,
+ new String[] {
+ "test", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@isIncubation = 'true'", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_set_16_2 = new TagInfo("c:set", //$NON-NLS-1$
+ 16, 2,
+ new String[] {
+ "select", //$NON-NLS-1$
+ "name", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build", //$NON-NLS-1$
+ "incubationTag", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_project_22_1 = new TagInfo("ws:project", //$NON-NLS-1$
+ 22, 1,
+ new String[] {
+ "name", //$NON-NLS-1$
+ },
+ new String[] {
+ "{$build/@relengProjectName}", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_file_23_2 = new TagInfo("ws:file", //$NON-NLS-1$
+ 23, 2,
+ new String[] {
+ "path", //$NON-NLS-1$
+ "template", //$NON-NLS-1$
+ },
+ new String[] {
+ ".project", //$NON-NLS-1$
+ "templates/project/project.jet", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_file_24_2 = new TagInfo("ws:file", //$NON-NLS-1$
+ 24, 2,
+ new String[] {
+ "path", //$NON-NLS-1$
+ "template", //$NON-NLS-1$
+ },
+ new String[] {
+ "build.xml", //$NON-NLS-1$
+ "templates/project/build.xml.jet", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_file_25_2 = new TagInfo("ws:file", //$NON-NLS-1$
+ 25, 2,
+ new String[] {
+ "path", //$NON-NLS-1$
+ "template", //$NON-NLS-1$
+ },
+ new String[] {
+ "buildAll.xml", //$NON-NLS-1$
+ "templates/project/buildAll.xml.jet", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_file_26_2 = new TagInfo("ws:file", //$NON-NLS-1$
+ 26, 2,
+ new String[] {
+ "path", //$NON-NLS-1$
+ "template", //$NON-NLS-1$
+ },
+ new String[] {
+ "projectToEclipse.{$build/@shortName}.properties", //$NON-NLS-1$
+ "templates/project/promoteToEclipse._SHORTNAME_.properties.jet", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_file_27_2 = new TagInfo("ws:file", //$NON-NLS-1$
+ 27, 2,
+ new String[] {
+ "path", //$NON-NLS-1$
+ "template", //$NON-NLS-1$
+ },
+ new String[] {
+ "repoInfo.properties", //$NON-NLS-1$
+ "templates/project/repoInfo.properties.jet", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_file_28_2 = new TagInfo("ws:file", //$NON-NLS-1$
+ 28, 2,
+ new String[] {
+ "path", //$NON-NLS-1$
+ "template", //$NON-NLS-1$
+ },
+ new String[] {
+ "testManifest.xml", //$NON-NLS-1$
+ "templates/project/testManifest.xml.jet", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_folder_29_2 = new TagInfo("ws:folder", //$NON-NLS-1$
+ 29, 2,
+ new String[] {
+ "path", //$NON-NLS-1$
+ },
+ new String[] {
+ "builder", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_folder_30_3 = new TagInfo("ws:folder", //$NON-NLS-1$
+ 30, 3,
+ new String[] {
+ "path", //$NON-NLS-1$
+ },
+ new String[] {
+ "doc", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_file_31_4 = new TagInfo("ws:file", //$NON-NLS-1$
+ 31, 4,
+ new String[] {
+ "path", //$NON-NLS-1$
+ "template", //$NON-NLS-1$
+ },
+ new String[] {
+ "build.properties", //$NON-NLS-1$
+ "templates/project/builder/doc/build.properties.jet", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_file_32_4 = new TagInfo("ws:file", //$NON-NLS-1$
+ 32, 4,
+ new String[] {
+ "path", //$NON-NLS-1$
+ "template", //$NON-NLS-1$
+ },
+ new String[] {
+ "customTargets.xml", //$NON-NLS-1$
+ "templates/project/builder/doc/customTargets.xml.jet", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_folder_34_3 = new TagInfo("ws:folder", //$NON-NLS-1$
+ 34, 3,
+ new String[] {
+ "path", //$NON-NLS-1$
+ },
+ new String[] {
+ "examples", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_file_35_4 = new TagInfo("ws:file", //$NON-NLS-1$
+ 35, 4,
+ new String[] {
+ "path", //$NON-NLS-1$
+ "template", //$NON-NLS-1$
+ },
+ new String[] {
+ "build.properties", //$NON-NLS-1$
+ "templates/project/builder/examples/build.properties.jet", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_file_36_4 = new TagInfo("ws:file", //$NON-NLS-1$
+ 36, 4,
+ new String[] {
+ "path", //$NON-NLS-1$
+ "template", //$NON-NLS-1$
+ },
+ new String[] {
+ "customTargets.xml", //$NON-NLS-1$
+ "templates/project/builder/examples/customTargets.xml.jet", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_folder_38_3 = new TagInfo("ws:folder", //$NON-NLS-1$
+ 38, 3,
+ new String[] {
+ "path", //$NON-NLS-1$
+ },
+ new String[] {
+ "runtime", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_file_39_4 = new TagInfo("ws:file", //$NON-NLS-1$
+ 39, 4,
+ new String[] {
+ "path", //$NON-NLS-1$
+ "template", //$NON-NLS-1$
+ },
+ new String[] {
+ "build.properties", //$NON-NLS-1$
+ "templates/project/builder/runtime/build.properties.jet", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_file_40_4 = new TagInfo("ws:file", //$NON-NLS-1$
+ 40, 4,
+ new String[] {
+ "path", //$NON-NLS-1$
+ "template", //$NON-NLS-1$
+ },
+ new String[] {
+ "customTargets.xml", //$NON-NLS-1$
+ "templates/project/builder/runtime/customTargets.xml.jet", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_folder_42_3 = new TagInfo("ws:folder", //$NON-NLS-1$
+ 42, 3,
+ new String[] {
+ "path", //$NON-NLS-1$
+ },
+ new String[] {
+ "sdk", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_file_43_4 = new TagInfo("ws:file", //$NON-NLS-1$
+ 43, 4,
+ new String[] {
+ "path", //$NON-NLS-1$
+ "template", //$NON-NLS-1$
+ },
+ new String[] {
+ "build.properties", //$NON-NLS-1$
+ "templates/project/builder/sdk/build.properties.jet", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_file_44_4 = new TagInfo("ws:file", //$NON-NLS-1$
+ 44, 4,
+ new String[] {
+ "path", //$NON-NLS-1$
+ "template", //$NON-NLS-1$
+ },
+ new String[] {
+ "customTargets.xml", //$NON-NLS-1$
+ "templates/project/builder/sdk/customTargets.xml.jet", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_folder_46_3 = new TagInfo("ws:folder", //$NON-NLS-1$
+ 46, 3,
+ new String[] {
+ "path", //$NON-NLS-1$
+ },
+ new String[] {
+ "tests", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_folder_47_4 = new TagInfo("ws:folder", //$NON-NLS-1$
+ 47, 4,
+ new String[] {
+ "path", //$NON-NLS-1$
+ },
+ new String[] {
+ "configs/local", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_file_48_5 = new TagInfo("ws:file", //$NON-NLS-1$
+ 48, 5,
+ new String[] {
+ "path", //$NON-NLS-1$
+ "template", //$NON-NLS-1$
+ },
+ new String[] {
+ "chkpii_ignore_list.txt", //$NON-NLS-1$
+ "templates/project/builder/tests/configs/local/chkpii_ignore_list.txt.jet", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_file_49_5 = new TagInfo("ws:file", //$NON-NLS-1$
+ 49, 5,
+ new String[] {
+ "path", //$NON-NLS-1$
+ "template", //$NON-NLS-1$
+ },
+ new String[] {
+ "customTest.xml", //$NON-NLS-1$
+ "templates/project/builder/tests/configs/local/customTest.xml.jet", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_file_50_5 = new TagInfo("ws:file", //$NON-NLS-1$
+ 50, 5,
+ new String[] {
+ "path", //$NON-NLS-1$
+ "template", //$NON-NLS-1$
+ },
+ new String[] {
+ "relengbuildgtk.sh", //$NON-NLS-1$
+ "templates/project/builder/tests/configs/local/relengbuildgtk.sh.jet", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_file_51_5 = new TagInfo("ws:file", //$NON-NLS-1$
+ 51, 5,
+ new String[] {
+ "path", //$NON-NLS-1$
+ "template", //$NON-NLS-1$
+ },
+ new String[] {
+ "testing.properties", //$NON-NLS-1$
+ "templates/project/builder/tests/configs/local/testing.properties.jet", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_folder_53_4 = new TagInfo("ws:folder", //$NON-NLS-1$
+ 53, 4,
+ new String[] {
+ "path", //$NON-NLS-1$
+ },
+ new String[] {
+ "scripts", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_file_54_5 = new TagInfo("ws:file", //$NON-NLS-1$
+ 54, 5,
+ new String[] {
+ "path", //$NON-NLS-1$
+ "template", //$NON-NLS-1$
+ },
+ new String[] {
+ "readme.html", //$NON-NLS-1$
+ "templates/project/builder/tests/scripts/readme.html.jet", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_file_55_5 = new TagInfo("ws:file", //$NON-NLS-1$
+ 55, 5,
+ new String[] {
+ "path", //$NON-NLS-1$
+ "template", //$NON-NLS-1$
+ },
+ new String[] {
+ "test.xml", //$NON-NLS-1$
+ "templates/project/builder/tests/scripts/test.xml.jet", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_file_57_4 = new TagInfo("ws:file", //$NON-NLS-1$
+ 57, 4,
+ new String[] {
+ "path", //$NON-NLS-1$
+ "template", //$NON-NLS-1$
+ },
+ new String[] {
+ "build.properties", //$NON-NLS-1$
+ "templates/project/builder/tests/build.properties.jet", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_file_58_4 = new TagInfo("ws:file", //$NON-NLS-1$
+ 58, 4,
+ new String[] {
+ "path", //$NON-NLS-1$
+ "template", //$NON-NLS-1$
+ },
+ new String[] {
+ "customTargets.xml", //$NON-NLS-1$
+ "templates/project/builder/tests/customTargets.xml.jet", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_folder_61_2 = new TagInfo("ws:folder", //$NON-NLS-1$
+ 61, 2,
+ new String[] {
+ "path", //$NON-NLS-1$
+ },
+ new String[] {
+ "maps", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_file_62_3 = new TagInfo("ws:file", //$NON-NLS-1$
+ 62, 3,
+ new String[] {
+ "path", //$NON-NLS-1$
+ "template", //$NON-NLS-1$
+ },
+ new String[] {
+ "{$build/@shortName}.map", //$NON-NLS-1$
+ "templates/project/maps/_SHORTNAME_.map.jet", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_file_63_3 = new TagInfo("ws:file", //$NON-NLS-1$
+ 63, 3,
+ new String[] {
+ "path", //$NON-NLS-1$
+ "template", //$NON-NLS-1$
+ },
+ new String[] {
+ "build.cfg", //$NON-NLS-1$
+ "templates/project/maps/build.cfg.jet", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_folder_65_2 = new TagInfo("ws:folder", //$NON-NLS-1$
+ 65, 2,
+ new String[] {
+ "path", //$NON-NLS-1$
+ },
+ new String[] {
+ "templateFiles", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_file_66_3 = new TagInfo("ws:file", //$NON-NLS-1$
+ 66, 3,
+ new String[] {
+ "path", //$NON-NLS-1$
+ "template", //$NON-NLS-1$
+ },
+ new String[] {
+ "{$build/@shortName}.map.template", //$NON-NLS-1$
+ "templates/project/templateFiles/_SHORTNAME_.map.template.jet", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_file_67_3 = new TagInfo("ws:file", //$NON-NLS-1$
+ 67, 3,
+ new String[] {
+ "path", //$NON-NLS-1$
+ "template", //$NON-NLS-1$
+ },
+ new String[] {
+ "testManifest.xml.template", //$NON-NLS-1$
+ "templates/project/templateFiles/testManifest.xml.template.jet", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_iterate_72_1 = new TagInfo("c:iterate", //$NON-NLS-1$
+ 72, 1,
+ new String[] {
+ "select", //$NON-NLS-1$
+ "var", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/extraZIP", //$NON-NLS-1$
+ "extraZIP", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_folder_73_2 = new TagInfo("ws:folder", //$NON-NLS-1$
+ 73, 2,
+ new String[] {
+ "path", //$NON-NLS-1$
+ },
+ new String[] {
+ "{$build/@relengProjectName}/builder/{$extraZIP/@name}", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_file_74_4 = new TagInfo("ws:file", //$NON-NLS-1$
+ 74, 4,
+ new String[] {
+ "path", //$NON-NLS-1$
+ "template", //$NON-NLS-1$
+ },
+ new String[] {
+ "build.properties", //$NON-NLS-1$
+ "templates/extraZIP/build.properties.jet", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_file_75_4 = new TagInfo("ws:file", //$NON-NLS-1$
+ 75, 4,
+ new String[] {
+ "path", //$NON-NLS-1$
+ "template", //$NON-NLS-1$
+ },
+ new String[] {
+ "customTargets.xml", //$NON-NLS-1$
+ "templates/extraZIP/customTargets.xml.jet", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_ws_file_85_1 = new TagInfo("ws:file", //$NON-NLS-1$
+ 85, 1,
+ new String[] {
+ "template", //$NON-NLS-1$
+ "path", //$NON-NLS-1$
+ },
+ new String[] {
+ "templates/dump.jet", //$NON-NLS-1$
+ "{$org.eclipse.jet.resource.project.name}/dump.xml", //$NON-NLS-1$
+ } );
+
+ public void generate(final JET2Context context, final JET2Writer __out) {
+ JET2Writer out = __out;
+ out.write(NL);
+ RuntimeTagElement _jettag_c_setVariable_11_1 = context.getTagFactory().createRuntimeTag(_jetns_c, "setVariable", "c:setVariable", _td_c_setVariable_11_1); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_setVariable_11_1.setRuntimeParent(null);
+ _jettag_c_setVariable_11_1.setTagInfo(_td_c_setVariable_11_1);
+ _jettag_c_setVariable_11_1.doStart(context, out);
+ _jettag_c_setVariable_11_1.doEnd();
+ out.write(NL);
+ RuntimeTagElement _jettag_c_set_13_1 = context.getTagFactory().createRuntimeTag(_jetns_c, "set", "c:set", _td_c_set_13_1); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_set_13_1.setRuntimeParent(null);
+ _jettag_c_set_13_1.setTagInfo(_td_c_set_13_1);
+ _jettag_c_set_13_1.doStart(context, out);
+ JET2Writer _jettag_c_set_13_1_saved_out = out;
+ while (_jettag_c_set_13_1.okToProcessBody()) {
+ out = out.newNestedContentWriter();
+ out.write("org.eclipse."); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_13_61 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_13_61); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_13_61.setRuntimeParent(_jettag_c_set_13_1);
+ _jettag_c_get_13_61.setTagInfo(_td_c_get_13_61);
+ _jettag_c_get_13_61.doStart(context, out);
+ _jettag_c_get_13_61.doEnd();
+ out.write(".releng"); //$NON-NLS-1$
+ _jettag_c_set_13_1.handleBodyContent(out);
+ }
+ out = _jettag_c_set_13_1_saved_out;
+ _jettag_c_set_13_1.doEnd();
+ out.write(NL);
+ RuntimeTagElement _jettag_c_set_14_1 = context.getTagFactory().createRuntimeTag(_jetns_c, "set", "c:set", _td_c_set_14_1); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_set_14_1.setRuntimeParent(null);
+ _jettag_c_set_14_1.setTagInfo(_td_c_set_14_1);
+ _jettag_c_set_14_1.doStart(context, out);
+ JET2Writer _jettag_c_set_14_1_saved_out = out;
+ while (_jettag_c_set_14_1.okToProcessBody()) {
+ out = out.newNestedContentWriter();
+ _jettag_c_set_14_1.handleBodyContent(out);
+ }
+ out = _jettag_c_set_14_1_saved_out;
+ _jettag_c_set_14_1.doEnd();
+ out.write(NL);
+ RuntimeTagElement _jettag_c_if_15_1 = context.getTagFactory().createRuntimeTag(_jetns_c, "if", "c:if", _td_c_if_15_1); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_if_15_1.setRuntimeParent(null);
+ _jettag_c_if_15_1.setTagInfo(_td_c_if_15_1);
+ _jettag_c_if_15_1.doStart(context, out);
+ while (_jettag_c_if_15_1.okToProcessBody()) {
+ out.write("\t"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_set_16_2 = context.getTagFactory().createRuntimeTag(_jetns_c, "set", "c:set", _td_c_set_16_2); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_set_16_2.setRuntimeParent(_jettag_c_if_15_1);
+ _jettag_c_set_16_2.setTagInfo(_td_c_set_16_2);
+ _jettag_c_set_16_2.doStart(context, out);
+ JET2Writer _jettag_c_set_16_2_saved_out = out;
+ while (_jettag_c_set_16_2.okToProcessBody()) {
+ out = out.newNestedContentWriter();
+ out.write("incubation-"); //$NON-NLS-1$
+ _jettag_c_set_16_2.handleBodyContent(out);
+ }
+ out = _jettag_c_set_16_2_saved_out;
+ _jettag_c_set_16_2.doEnd();
+ out.write(NL);
+ _jettag_c_if_15_1.handleBodyContent(out);
+ }
+ _jettag_c_if_15_1.doEnd();
+ RuntimeTagElement _jettag_ws_project_22_1 = context.getTagFactory().createRuntimeTag(_jetns_ws, "project", "ws:project", _td_ws_project_22_1); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_project_22_1.setRuntimeParent(null);
+ _jettag_ws_project_22_1.setTagInfo(_td_ws_project_22_1);
+ _jettag_ws_project_22_1.doStart(context, out);
+ while (_jettag_ws_project_22_1.okToProcessBody()) {
+ out.write("\t"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_ws_file_23_2 = context.getTagFactory().createRuntimeTag(_jetns_ws, "file", "ws:file", _td_ws_file_23_2); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_file_23_2.setRuntimeParent(_jettag_ws_project_22_1);
+ _jettag_ws_file_23_2.setTagInfo(_td_ws_file_23_2);
+ _jettag_ws_file_23_2.doStart(context, out);
+ _jettag_ws_file_23_2.doEnd();
+ out.write(NL);
+ out.write("\t"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_ws_file_24_2 = context.getTagFactory().createRuntimeTag(_jetns_ws, "file", "ws:file", _td_ws_file_24_2); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_file_24_2.setRuntimeParent(_jettag_ws_project_22_1);
+ _jettag_ws_file_24_2.setTagInfo(_td_ws_file_24_2);
+ _jettag_ws_file_24_2.doStart(context, out);
+ _jettag_ws_file_24_2.doEnd();
+ out.write(NL);
+ out.write("\t"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_ws_file_25_2 = context.getTagFactory().createRuntimeTag(_jetns_ws, "file", "ws:file", _td_ws_file_25_2); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_file_25_2.setRuntimeParent(_jettag_ws_project_22_1);
+ _jettag_ws_file_25_2.setTagInfo(_td_ws_file_25_2);
+ _jettag_ws_file_25_2.doStart(context, out);
+ _jettag_ws_file_25_2.doEnd();
+ out.write(NL);
+ out.write("\t"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_ws_file_26_2 = context.getTagFactory().createRuntimeTag(_jetns_ws, "file", "ws:file", _td_ws_file_26_2); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_file_26_2.setRuntimeParent(_jettag_ws_project_22_1);
+ _jettag_ws_file_26_2.setTagInfo(_td_ws_file_26_2);
+ _jettag_ws_file_26_2.doStart(context, out);
+ _jettag_ws_file_26_2.doEnd();
+ out.write(NL);
+ out.write("\t"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_ws_file_27_2 = context.getTagFactory().createRuntimeTag(_jetns_ws, "file", "ws:file", _td_ws_file_27_2); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_file_27_2.setRuntimeParent(_jettag_ws_project_22_1);
+ _jettag_ws_file_27_2.setTagInfo(_td_ws_file_27_2);
+ _jettag_ws_file_27_2.doStart(context, out);
+ _jettag_ws_file_27_2.doEnd();
+ out.write(NL);
+ out.write("\t"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_ws_file_28_2 = context.getTagFactory().createRuntimeTag(_jetns_ws, "file", "ws:file", _td_ws_file_28_2); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_file_28_2.setRuntimeParent(_jettag_ws_project_22_1);
+ _jettag_ws_file_28_2.setTagInfo(_td_ws_file_28_2);
+ _jettag_ws_file_28_2.doStart(context, out);
+ _jettag_ws_file_28_2.doEnd();
+ out.write(NL);
+ RuntimeTagElement _jettag_ws_folder_29_2 = context.getTagFactory().createRuntimeTag(_jetns_ws, "folder", "ws:folder", _td_ws_folder_29_2); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_folder_29_2.setRuntimeParent(_jettag_ws_project_22_1);
+ _jettag_ws_folder_29_2.setTagInfo(_td_ws_folder_29_2);
+ _jettag_ws_folder_29_2.doStart(context, out);
+ while (_jettag_ws_folder_29_2.okToProcessBody()) {
+ RuntimeTagElement _jettag_ws_folder_30_3 = context.getTagFactory().createRuntimeTag(_jetns_ws, "folder", "ws:folder", _td_ws_folder_30_3); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_folder_30_3.setRuntimeParent(_jettag_ws_folder_29_2);
+ _jettag_ws_folder_30_3.setTagInfo(_td_ws_folder_30_3);
+ _jettag_ws_folder_30_3.doStart(context, out);
+ while (_jettag_ws_folder_30_3.okToProcessBody()) {
+ out.write("\t\t\t"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_ws_file_31_4 = context.getTagFactory().createRuntimeTag(_jetns_ws, "file", "ws:file", _td_ws_file_31_4); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_file_31_4.setRuntimeParent(_jettag_ws_folder_30_3);
+ _jettag_ws_file_31_4.setTagInfo(_td_ws_file_31_4);
+ _jettag_ws_file_31_4.doStart(context, out);
+ _jettag_ws_file_31_4.doEnd();
+ out.write(NL);
+ out.write("\t\t\t"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_ws_file_32_4 = context.getTagFactory().createRuntimeTag(_jetns_ws, "file", "ws:file", _td_ws_file_32_4); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_file_32_4.setRuntimeParent(_jettag_ws_folder_30_3);
+ _jettag_ws_file_32_4.setTagInfo(_td_ws_file_32_4);
+ _jettag_ws_file_32_4.doStart(context, out);
+ _jettag_ws_file_32_4.doEnd();
+ out.write(NL);
+ _jettag_ws_folder_30_3.handleBodyContent(out);
+ }
+ _jettag_ws_folder_30_3.doEnd();
+ RuntimeTagElement _jettag_ws_folder_34_3 = context.getTagFactory().createRuntimeTag(_jetns_ws, "folder", "ws:folder", _td_ws_folder_34_3); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_folder_34_3.setRuntimeParent(_jettag_ws_folder_29_2);
+ _jettag_ws_folder_34_3.setTagInfo(_td_ws_folder_34_3);
+ _jettag_ws_folder_34_3.doStart(context, out);
+ while (_jettag_ws_folder_34_3.okToProcessBody()) {
+ out.write("\t\t\t"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_ws_file_35_4 = context.getTagFactory().createRuntimeTag(_jetns_ws, "file", "ws:file", _td_ws_file_35_4); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_file_35_4.setRuntimeParent(_jettag_ws_folder_34_3);
+ _jettag_ws_file_35_4.setTagInfo(_td_ws_file_35_4);
+ _jettag_ws_file_35_4.doStart(context, out);
+ _jettag_ws_file_35_4.doEnd();
+ out.write(NL);
+ out.write("\t\t\t"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_ws_file_36_4 = context.getTagFactory().createRuntimeTag(_jetns_ws, "file", "ws:file", _td_ws_file_36_4); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_file_36_4.setRuntimeParent(_jettag_ws_folder_34_3);
+ _jettag_ws_file_36_4.setTagInfo(_td_ws_file_36_4);
+ _jettag_ws_file_36_4.doStart(context, out);
+ _jettag_ws_file_36_4.doEnd();
+ out.write(NL);
+ _jettag_ws_folder_34_3.handleBodyContent(out);
+ }
+ _jettag_ws_folder_34_3.doEnd();
+ RuntimeTagElement _jettag_ws_folder_38_3 = context.getTagFactory().createRuntimeTag(_jetns_ws, "folder", "ws:folder", _td_ws_folder_38_3); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_folder_38_3.setRuntimeParent(_jettag_ws_folder_29_2);
+ _jettag_ws_folder_38_3.setTagInfo(_td_ws_folder_38_3);
+ _jettag_ws_folder_38_3.doStart(context, out);
+ while (_jettag_ws_folder_38_3.okToProcessBody()) {
+ out.write("\t\t\t"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_ws_file_39_4 = context.getTagFactory().createRuntimeTag(_jetns_ws, "file", "ws:file", _td_ws_file_39_4); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_file_39_4.setRuntimeParent(_jettag_ws_folder_38_3);
+ _jettag_ws_file_39_4.setTagInfo(_td_ws_file_39_4);
+ _jettag_ws_file_39_4.doStart(context, out);
+ _jettag_ws_file_39_4.doEnd();
+ out.write(NL);
+ out.write("\t\t\t"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_ws_file_40_4 = context.getTagFactory().createRuntimeTag(_jetns_ws, "file", "ws:file", _td_ws_file_40_4); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_file_40_4.setRuntimeParent(_jettag_ws_folder_38_3);
+ _jettag_ws_file_40_4.setTagInfo(_td_ws_file_40_4);
+ _jettag_ws_file_40_4.doStart(context, out);
+ _jettag_ws_file_40_4.doEnd();
+ out.write(NL);
+ _jettag_ws_folder_38_3.handleBodyContent(out);
+ }
+ _jettag_ws_folder_38_3.doEnd();
+ RuntimeTagElement _jettag_ws_folder_42_3 = context.getTagFactory().createRuntimeTag(_jetns_ws, "folder", "ws:folder", _td_ws_folder_42_3); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_folder_42_3.setRuntimeParent(_jettag_ws_folder_29_2);
+ _jettag_ws_folder_42_3.setTagInfo(_td_ws_folder_42_3);
+ _jettag_ws_folder_42_3.doStart(context, out);
+ while (_jettag_ws_folder_42_3.okToProcessBody()) {
+ out.write("\t\t\t"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_ws_file_43_4 = context.getTagFactory().createRuntimeTag(_jetns_ws, "file", "ws:file", _td_ws_file_43_4); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_file_43_4.setRuntimeParent(_jettag_ws_folder_42_3);
+ _jettag_ws_file_43_4.setTagInfo(_td_ws_file_43_4);
+ _jettag_ws_file_43_4.doStart(context, out);
+ _jettag_ws_file_43_4.doEnd();
+ out.write(NL);
+ out.write("\t\t\t"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_ws_file_44_4 = context.getTagFactory().createRuntimeTag(_jetns_ws, "file", "ws:file", _td_ws_file_44_4); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_file_44_4.setRuntimeParent(_jettag_ws_folder_42_3);
+ _jettag_ws_file_44_4.setTagInfo(_td_ws_file_44_4);
+ _jettag_ws_file_44_4.doStart(context, out);
+ _jettag_ws_file_44_4.doEnd();
+ out.write(NL);
+ _jettag_ws_folder_42_3.handleBodyContent(out);
+ }
+ _jettag_ws_folder_42_3.doEnd();
+ RuntimeTagElement _jettag_ws_folder_46_3 = context.getTagFactory().createRuntimeTag(_jetns_ws, "folder", "ws:folder", _td_ws_folder_46_3); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_folder_46_3.setRuntimeParent(_jettag_ws_folder_29_2);
+ _jettag_ws_folder_46_3.setTagInfo(_td_ws_folder_46_3);
+ _jettag_ws_folder_46_3.doStart(context, out);
+ while (_jettag_ws_folder_46_3.okToProcessBody()) {
+ RuntimeTagElement _jettag_ws_folder_47_4 = context.getTagFactory().createRuntimeTag(_jetns_ws, "folder", "ws:folder", _td_ws_folder_47_4); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_folder_47_4.setRuntimeParent(_jettag_ws_folder_46_3);
+ _jettag_ws_folder_47_4.setTagInfo(_td_ws_folder_47_4);
+ _jettag_ws_folder_47_4.doStart(context, out);
+ while (_jettag_ws_folder_47_4.okToProcessBody()) {
+ out.write("\t\t\t\t"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_ws_file_48_5 = context.getTagFactory().createRuntimeTag(_jetns_ws, "file", "ws:file", _td_ws_file_48_5); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_file_48_5.setRuntimeParent(_jettag_ws_folder_47_4);
+ _jettag_ws_file_48_5.setTagInfo(_td_ws_file_48_5);
+ _jettag_ws_file_48_5.doStart(context, out);
+ _jettag_ws_file_48_5.doEnd();
+ out.write(NL);
+ out.write("\t\t\t\t"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_ws_file_49_5 = context.getTagFactory().createRuntimeTag(_jetns_ws, "file", "ws:file", _td_ws_file_49_5); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_file_49_5.setRuntimeParent(_jettag_ws_folder_47_4);
+ _jettag_ws_file_49_5.setTagInfo(_td_ws_file_49_5);
+ _jettag_ws_file_49_5.doStart(context, out);
+ _jettag_ws_file_49_5.doEnd();
+ out.write(NL);
+ out.write("\t\t\t\t"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_ws_file_50_5 = context.getTagFactory().createRuntimeTag(_jetns_ws, "file", "ws:file", _td_ws_file_50_5); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_file_50_5.setRuntimeParent(_jettag_ws_folder_47_4);
+ _jettag_ws_file_50_5.setTagInfo(_td_ws_file_50_5);
+ _jettag_ws_file_50_5.doStart(context, out);
+ _jettag_ws_file_50_5.doEnd();
+ out.write(NL);
+ out.write("\t\t\t\t"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_ws_file_51_5 = context.getTagFactory().createRuntimeTag(_jetns_ws, "file", "ws:file", _td_ws_file_51_5); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_file_51_5.setRuntimeParent(_jettag_ws_folder_47_4);
+ _jettag_ws_file_51_5.setTagInfo(_td_ws_file_51_5);
+ _jettag_ws_file_51_5.doStart(context, out);
+ _jettag_ws_file_51_5.doEnd();
+ out.write(NL);
+ _jettag_ws_folder_47_4.handleBodyContent(out);
+ }
+ _jettag_ws_folder_47_4.doEnd();
+ RuntimeTagElement _jettag_ws_folder_53_4 = context.getTagFactory().createRuntimeTag(_jetns_ws, "folder", "ws:folder", _td_ws_folder_53_4); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_folder_53_4.setRuntimeParent(_jettag_ws_folder_46_3);
+ _jettag_ws_folder_53_4.setTagInfo(_td_ws_folder_53_4);
+ _jettag_ws_folder_53_4.doStart(context, out);
+ while (_jettag_ws_folder_53_4.okToProcessBody()) {
+ out.write("\t\t\t\t"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_ws_file_54_5 = context.getTagFactory().createRuntimeTag(_jetns_ws, "file", "ws:file", _td_ws_file_54_5); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_file_54_5.setRuntimeParent(_jettag_ws_folder_53_4);
+ _jettag_ws_file_54_5.setTagInfo(_td_ws_file_54_5);
+ _jettag_ws_file_54_5.doStart(context, out);
+ _jettag_ws_file_54_5.doEnd();
+ out.write(NL);
+ out.write("\t\t\t\t"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_ws_file_55_5 = context.getTagFactory().createRuntimeTag(_jetns_ws, "file", "ws:file", _td_ws_file_55_5); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_file_55_5.setRuntimeParent(_jettag_ws_folder_53_4);
+ _jettag_ws_file_55_5.setTagInfo(_td_ws_file_55_5);
+ _jettag_ws_file_55_5.doStart(context, out);
+ _jettag_ws_file_55_5.doEnd();
+ out.write(NL);
+ _jettag_ws_folder_53_4.handleBodyContent(out);
+ }
+ _jettag_ws_folder_53_4.doEnd();
+ out.write("\t\t\t"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_ws_file_57_4 = context.getTagFactory().createRuntimeTag(_jetns_ws, "file", "ws:file", _td_ws_file_57_4); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_file_57_4.setRuntimeParent(_jettag_ws_folder_46_3);
+ _jettag_ws_file_57_4.setTagInfo(_td_ws_file_57_4);
+ _jettag_ws_file_57_4.doStart(context, out);
+ _jettag_ws_file_57_4.doEnd();
+ out.write(NL);
+ out.write("\t\t\t"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_ws_file_58_4 = context.getTagFactory().createRuntimeTag(_jetns_ws, "file", "ws:file", _td_ws_file_58_4); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_file_58_4.setRuntimeParent(_jettag_ws_folder_46_3);
+ _jettag_ws_file_58_4.setTagInfo(_td_ws_file_58_4);
+ _jettag_ws_file_58_4.doStart(context, out);
+ _jettag_ws_file_58_4.doEnd();
+ out.write(NL);
+ _jettag_ws_folder_46_3.handleBodyContent(out);
+ }
+ _jettag_ws_folder_46_3.doEnd();
+ _jettag_ws_folder_29_2.handleBodyContent(out);
+ }
+ _jettag_ws_folder_29_2.doEnd();
+ RuntimeTagElement _jettag_ws_folder_61_2 = context.getTagFactory().createRuntimeTag(_jetns_ws, "folder", "ws:folder", _td_ws_folder_61_2); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_folder_61_2.setRuntimeParent(_jettag_ws_project_22_1);
+ _jettag_ws_folder_61_2.setTagInfo(_td_ws_folder_61_2);
+ _jettag_ws_folder_61_2.doStart(context, out);
+ while (_jettag_ws_folder_61_2.okToProcessBody()) {
+ out.write("\t\t"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_ws_file_62_3 = context.getTagFactory().createRuntimeTag(_jetns_ws, "file", "ws:file", _td_ws_file_62_3); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_file_62_3.setRuntimeParent(_jettag_ws_folder_61_2);
+ _jettag_ws_file_62_3.setTagInfo(_td_ws_file_62_3);
+ _jettag_ws_file_62_3.doStart(context, out);
+ _jettag_ws_file_62_3.doEnd();
+ out.write(NL);
+ out.write("\t\t"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_ws_file_63_3 = context.getTagFactory().createRuntimeTag(_jetns_ws, "file", "ws:file", _td_ws_file_63_3); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_file_63_3.setRuntimeParent(_jettag_ws_folder_61_2);
+ _jettag_ws_file_63_3.setTagInfo(_td_ws_file_63_3);
+ _jettag_ws_file_63_3.doStart(context, out);
+ _jettag_ws_file_63_3.doEnd();
+ out.write(NL);
+ _jettag_ws_folder_61_2.handleBodyContent(out);
+ }
+ _jettag_ws_folder_61_2.doEnd();
+ RuntimeTagElement _jettag_ws_folder_65_2 = context.getTagFactory().createRuntimeTag(_jetns_ws, "folder", "ws:folder", _td_ws_folder_65_2); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_folder_65_2.setRuntimeParent(_jettag_ws_project_22_1);
+ _jettag_ws_folder_65_2.setTagInfo(_td_ws_folder_65_2);
+ _jettag_ws_folder_65_2.doStart(context, out);
+ while (_jettag_ws_folder_65_2.okToProcessBody()) {
+ out.write("\t\t"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_ws_file_66_3 = context.getTagFactory().createRuntimeTag(_jetns_ws, "file", "ws:file", _td_ws_file_66_3); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_file_66_3.setRuntimeParent(_jettag_ws_folder_65_2);
+ _jettag_ws_file_66_3.setTagInfo(_td_ws_file_66_3);
+ _jettag_ws_file_66_3.doStart(context, out);
+ _jettag_ws_file_66_3.doEnd();
+ out.write(NL);
+ out.write("\t\t"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_ws_file_67_3 = context.getTagFactory().createRuntimeTag(_jetns_ws, "file", "ws:file", _td_ws_file_67_3); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_file_67_3.setRuntimeParent(_jettag_ws_folder_65_2);
+ _jettag_ws_file_67_3.setTagInfo(_td_ws_file_67_3);
+ _jettag_ws_file_67_3.doStart(context, out);
+ _jettag_ws_file_67_3.doEnd();
+ out.write(NL);
+ _jettag_ws_folder_65_2.handleBodyContent(out);
+ }
+ _jettag_ws_folder_65_2.doEnd();
+ out.write("\t"); //$NON-NLS-1$
+ out.write(NL);
+ _jettag_ws_project_22_1.handleBodyContent(out);
+ }
+ _jettag_ws_project_22_1.doEnd();
+ out.write(NL);
+ RuntimeTagElement _jettag_c_iterate_72_1 = context.getTagFactory().createRuntimeTag(_jetns_c, "iterate", "c:iterate", _td_c_iterate_72_1); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_iterate_72_1.setRuntimeParent(null);
+ _jettag_c_iterate_72_1.setTagInfo(_td_c_iterate_72_1);
+ _jettag_c_iterate_72_1.doStart(context, out);
+ while (_jettag_c_iterate_72_1.okToProcessBody()) {
+ RuntimeTagElement _jettag_ws_folder_73_2 = context.getTagFactory().createRuntimeTag(_jetns_ws, "folder", "ws:folder", _td_ws_folder_73_2); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_folder_73_2.setRuntimeParent(_jettag_c_iterate_72_1);
+ _jettag_ws_folder_73_2.setTagInfo(_td_ws_folder_73_2);
+ _jettag_ws_folder_73_2.doStart(context, out);
+ while (_jettag_ws_folder_73_2.okToProcessBody()) {
+ out.write("\t\t\t"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_ws_file_74_4 = context.getTagFactory().createRuntimeTag(_jetns_ws, "file", "ws:file", _td_ws_file_74_4); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_file_74_4.setRuntimeParent(_jettag_ws_folder_73_2);
+ _jettag_ws_file_74_4.setTagInfo(_td_ws_file_74_4);
+ _jettag_ws_file_74_4.doStart(context, out);
+ _jettag_ws_file_74_4.doEnd();
+ out.write(NL);
+ out.write("\t\t\t"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_ws_file_75_4 = context.getTagFactory().createRuntimeTag(_jetns_ws, "file", "ws:file", _td_ws_file_75_4); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_file_75_4.setRuntimeParent(_jettag_ws_folder_73_2);
+ _jettag_ws_file_75_4.setTagInfo(_td_ws_file_75_4);
+ _jettag_ws_file_75_4.doStart(context, out);
+ _jettag_ws_file_75_4.doEnd();
+ out.write(NL);
+ _jettag_ws_folder_73_2.handleBodyContent(out);
+ }
+ _jettag_ws_folder_73_2.doEnd();
+ _jettag_c_iterate_72_1.handleBodyContent(out);
+ }
+ _jettag_c_iterate_72_1.doEnd();
+ out.write(NL);
+ RuntimeTagElement _jettag_ws_file_85_1 = context.getTagFactory().createRuntimeTag(_jetns_ws, "file", "ws:file", _td_ws_file_85_1); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_ws_file_85_1.setRuntimeParent(null);
+ _jettag_ws_file_85_1.setTagInfo(_td_ws_file_85_1);
+ _jettag_ws_file_85_1.doStart(context, out);
+ _jettag_ws_file_85_1.doEnd();
+ out.write(NL);
+ }
+}
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_project.java b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_project.java
new file mode 100644
index 0000000..c035104
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_project.java
@@ -0,0 +1,61 @@
+package org.eclipse.jet.ec2008.pushbuttonbuild.compiled;
+
+import org.eclipse.jet.JET2Context;
+import org.eclipse.jet.JET2Template;
+import org.eclipse.jet.JET2Writer;
+import org.eclipse.jet.taglib.RuntimeTagElement;
+import org.eclipse.jet.taglib.TagInfo;
+
+public class _jet_project implements JET2Template {
+ private static final String _jetns_c = "org.eclipse.jet.controlTags"; //$NON-NLS-1$
+
+
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+
+ public _jet_project() {
+ super();
+ }
+
+ private static final String NL = System.getProperty("line.separator"); //$NON-NLS-1$
+
+ private static final TagInfo _td_c_get_6_8 = new TagInfo("c:get", //$NON-NLS-1$
+ 6, 8,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@relengProjectName", //$NON-NLS-1$
+ } );
+
+ public void generate(final JET2Context context, final JET2Writer __out) {
+ JET2Writer out = __out;
+ out.write("<?xml version=\"1.0\" encoding=\"UTF-8\"?>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<projectDescription>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<name>"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_6_8 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_6_8); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_6_8.setRuntimeParent(null);
+ _jettag_c_get_6_8.setTagInfo(_td_c_get_6_8);
+ _jettag_c_get_6_8.doStart(context, out);
+ _jettag_c_get_6_8.doEnd();
+ out.write("</name>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<comment></comment>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<projects>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</projects>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<buildSpec>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</buildSpec>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t<natures>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t</natures>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("</projectDescription>"); //$NON-NLS-1$
+ out.write(NL);
+ }
+}
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_promoteToEclipse_SHORTNAME_properties.java b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_promoteToEclipse_SHORTNAME_properties.java
new file mode 100644
index 0000000..2dc29ed
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_promoteToEclipse_SHORTNAME_properties.java
@@ -0,0 +1,442 @@
+package org.eclipse.jet.ec2008.pushbuttonbuild.compiled;
+
+import org.eclipse.jet.JET2Context;
+import org.eclipse.jet.JET2Template;
+import org.eclipse.jet.JET2Writer;
+import org.eclipse.jet.taglib.RuntimeTagElement;
+import org.eclipse.jet.taglib.TagInfo;
+
+public class _jet_promoteToEclipse_SHORTNAME_properties implements JET2Template {
+ private static final String _jetns_c = "org.eclipse.jet.controlTags"; //$NON-NLS-1$
+
+
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+
+ public _jet_promoteToEclipse_SHORTNAME_properties() {
+ super();
+ }
+
+ private static final String NL = System.getProperty("line.separator"); //$NON-NLS-1$
+
+ private static final TagInfo _td_c_get_13_13 = new TagInfo("c:get", //$NON-NLS-1$
+ 13, 13,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@parentProjectName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_14_16 = new TagInfo("c:get", //$NON-NLS-1$
+ 14, 16,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@shortName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_18_52 = new TagInfo("c:get", //$NON-NLS-1$
+ 18, 52,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@incubationTag", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_28_26 = new TagInfo("c:get", //$NON-NLS-1$
+ 28, 26,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@newsgroupPublisherName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_28_76 = new TagInfo("c:get", //$NON-NLS-1$
+ 28, 76,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@newsgroupPublisherEmail", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_54_37 = new TagInfo("c:get", //$NON-NLS-1$
+ 54, 37,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@incubationTag", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_55_33 = new TagInfo("c:get", //$NON-NLS-1$
+ 55, 33,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@incubationTag", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_143_60 = new TagInfo("c:get", //$NON-NLS-1$
+ 143, 60,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@incubationTag", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_143_138 = new TagInfo("c:get", //$NON-NLS-1$
+ 143, 138,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@incubationTag", //$NON-NLS-1$
+ } );
+
+ public void generate(final JET2Context context, final JET2Writer __out) {
+ JET2Writer out = __out;
+ out.write("## promoteToEclipse.*.properties"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("## specific version of promoteToEclipse.sh properties"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("##"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("## NOTE:"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("## You must rename this file to promoteToEclipse.$subprojectName.properties for it to be "); //$NON-NLS-1$
+ out.write(NL);
+ out.write("## found when using the -sub flag; otherwise you'll have to use the -f flag to specify"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("## a CUSTOM-named properties file"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("# product being built (folder name prefix)"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("projectName="); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_13_13 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_13_13); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_13_13.setRuntimeParent(null);
+ _jettag_c_get_13_13.setTagInfo(_td_c_get_13_13);
+ _jettag_c_get_13_13.doStart(context, out);
+ _jettag_c_get_13_13.doEnd();
+ out.write(NL);
+ out.write("subprojectName="); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_14_16 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_14_16); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_14_16.setRuntimeParent(null);
+ _jettag_c_get_14_16.setTagInfo(_td_c_get_14_16);
+ _jettag_c_get_14_16.doStart(context, out);
+ _jettag_c_get_14_16.doEnd();
+ out.write(NL);
+ out.write("projectNameVanity=`echo $buildName $subprojectName | tr \"a-z\" \"A-Z\"`; # or something else manually assigned"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("# used to determine the actual name of the SDK zip (when builds are aliased)"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("SDKfilenamepattern=\"$buildName-$subprojectName-SDK-"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_18_52 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_18_52); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_18_52.setRuntimeParent(null);
+ _jettag_c_get_18_52.setTagInfo(_td_c_get_18_52);
+ _jettag_c_get_18_52.doStart(context, out);
+ _jettag_c_get_18_52.doEnd();
+ out.write("*.zip\""); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("# the following two arrays must be the same size (or else the second one will default to blank)"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("javadocModuleArray=( \"$buildName-$subprojectName\" ); # array, project-subproject, for the name of the zip scp'd to remote, eg. foo-bar-doc.zip"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("# if \"\", create in $buildName/javadoc; if \"/path\", create in $buildName/$subprojectName/javadoc "); //$NON-NLS-1$
+ out.write(NL);
+ out.write("javadocFolderArray=( \"/$subprojectName\" ); # array of path fragments"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("# list of targets to use when executing fixJavadocs.sh"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("javadocTargetArray=( \"-sub $subprojectName\" );"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("# publisher of newsgroup announcements"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("newsgroupPublisherEmail=\""); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_28_26 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_28_26); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_28_26.setRuntimeParent(null);
+ _jettag_c_get_28_26.setTagInfo(_td_c_get_28_26);
+ _jettag_c_get_28_26.doStart(context, out);
+ _jettag_c_get_28_26.doEnd();
+ out.write(" <"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_28_76 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_28_76); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_28_76.setRuntimeParent(null);
+ _jettag_c_get_28_76.setTagInfo(_td_c_get_28_76);
+ _jettag_c_get_28_76.doStart(context, out);
+ _jettag_c_get_28_76.doEnd();
+ out.write(">\""); //$NON-NLS-1$
+ out.write(NL);
+ out.write("newsgroup=eclipse.modeling.$buildName"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("# to thread posts under an existing post (or posts) enter the slash-escaped Message-ID for which this is a reply,"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("# eg: <du7hic\\$qos\\$1@utils.eclipse.org>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("newsgroupThreadReferences=\"\""); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("# default eclipse.org, build server, mapfile server usernames"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("user=$USER"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("# if no value set here or by -userIES flag, default to -user flag or value in properties file"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("userIES="); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("# group permissions on eclipse.org so that anyone can change files"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("eclipseUserGroup=\"$buildName\"admin"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("eclipsePermsDir=2775"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("eclipsePermsFile=664"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("# group permissions on build box so that anyone can change files"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("buildUserGroup=\"www\""); //$NON-NLS-1$
+ out.write(NL);
+ out.write("buildPermsDir=2775"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("buildPermsFile=664"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("# IES map file branch (required)"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("branchIES="); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("# IES map file template: use \"buildIDactual\" and \"webPath\" as placeholders"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("IESmapfileArray=( "); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\"$buildName-$subprojectName-runtime-"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_54_37 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_54_37); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_54_37.setRuntimeParent(null);
+ _jettag_c_get_54_37.setTagInfo(_td_c_get_54_37);
+ _jettag_c_get_54_37.doStart(context, out);
+ _jettag_c_get_54_37.doEnd();
+ out.write("buildIDactual.zip=webPath | | | runtime | $subprojectName\" "); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\"$buildName-$subprojectName-SDK-"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_55_33 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_55_33); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_55_33.setRuntimeParent(null);
+ _jettag_c_get_55_33.setTagInfo(_td_c_get_55_33);
+ _jettag_c_get_55_33.doStart(context, out);
+ _jettag_c_get_55_33.doEnd();
+ out.write("buildIDactual.zip=webPath | | | sdk | $subprojectName\" ); # array of lines"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("### DEFAULT BEHAVIOUR OPTIONS ###"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("# default setting for whether to do or skip the drop upload section: 0 = do, 1 = skip"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("dodrop=1"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("# default setting for whether to do or skip the javadoc section: 0 = do, 1 = skip"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("dodocs=1"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("# default setting for whether to do or skip the Update Manager jars section: 0 = do, 1 = skip"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("UMjars=1"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("#default buildID"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("buildID="); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("#default branch"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("branch=1.0.0"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("cvsbranch=HEAD"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("#do RSS feed file update?"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("RSS=1"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("# do search cvs update?"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("searchCVS=1"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("# how long to block before giving up (in seconds, eg., 1200 for 20 mins wait)"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("searchCVSTimeout=1200"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("#do IES mapping file update?"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("IES=0"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("#close bugzillas?"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("bugz=0"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("# default setting for whether to do or skip checking for the existence of the new build in the release notes / database before attempting to close bugs: 1 = do, 0 = skip"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("checkReleaseExists=1"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("# debug output"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("debug=0 ; # values can be 0,1,2"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("#clean up /tmp folder?"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("noclean=0;"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("# compare drops folder after scp upload?"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("noCompareDropsFolders=0 ; # default 0, do compare; set 1 to bypass or pass in querystring"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("# compare UM folder after scp upload?"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("noCompareUMFolders= ; # default 0, do compare; set 1 to bypass or pass in querystring"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("# announce new build in newsgroup? (default 0)"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("announce=0;"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("### SERVER & PATH CONFIG OPTIONS ###"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("#server on which builds occur (need to ssh to this box as $user@$buildServerFullName)"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("buildServerFullName=`hostname`"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("#server on which eclipse's production CVS is located (need to ssh to this box as $user@$eclipseServerFullName)"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("eclipseServerFullName=prodbox"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("#server on which eclipse's production files are located (downloads, javadoc, etc.): ssh as $user@$downloadServerFullName)"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("downloadServerFullName=prodbox"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("#paths on \\$downloadServerFullName where files are published"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("projectWWWDir=/home/data2/httpd/download.eclipse.org/modeling/$buildName"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("projectDropsDir=$buildWWWDir/$subprojectName/downloads/drops"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("#paths to build base, scripts, and drops on build server"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("baseBuildDir=/home/www-data/build/modeling/$buildName"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("buildScriptsDir=/home/www-data/build/modeling/scripts"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("buildDropsDir=$baseBuildDir/$subprojectName/downloads/drops"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("# path to website on build server "); //$NON-NLS-1$
+ out.write(NL);
+ out.write("localWebDir=/var/www/html/modeling/$buildName"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("# urls "); //$NON-NLS-1$
+ out.write(NL);
+ out.write("releaseNotesURL=http://www.eclipse.org/modeling/$buildName/news/relnotes.php?project=$subprojectName"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("downloadsURL=http://www.eclipse.org/modeling/$buildName/downloads/?project=$subprojectName"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("### ANT OPTIONS ###"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("ANT=/opt/apache-ant-1.6/bin/ant"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("### DEFAULT BEHAVIOUR AND JVM OPTIONS :: buildUpdate.sh ###"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("# specify the correct java home & vm used to run the build"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("javaHome=/opt/sun-java2-1.4"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("vm=$javaHome/bin/java"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("# zips to unpack for UM jar generation"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("filePrefixesToUnzipArray=( \"$buildName-$subprojectName-SDK-"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_143_60 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_143_60); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_143_60.setRuntimeParent(null);
+ _jettag_c_get_143_60.setTagInfo(_td_c_get_143_60);
+ _jettag_c_get_143_60.doStart(context, out);
+ _jettag_c_get_143_60.doEnd();
+ out.write("\" \"$buildName-$subprojectName-examples-"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_143_138 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_143_138); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_143_138.setRuntimeParent(null);
+ _jettag_c_get_143_138.setTagInfo(_td_c_get_143_138);
+ _jettag_c_get_143_138.doStart(context, out);
+ _jettag_c_get_143_138.doEnd();
+ out.write("\" );"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("# ant script and target to be executed"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("antScript=org.eclipse.releng.generators/buildProductUpdateJars.xml"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("target=run"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("# default operations"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("builder=1 # get builder packages from cvs"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("promote=0 # don't promote by default"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("skipjars=0 # when promoting, upload all jars (don't skip)"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("cleanup=1 # delete temp stuff when done"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("# compare UM folder after scp upload?"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("noCompareUMFolders=0 ; # default 0, do compare; set 1 to bypass or pass in querystring"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("# do 4-part jars?"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("no4thPart=0;"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("# where to get releng.generators.ProductUpdateBuilder, jars & ant scripts"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("relengGeneratorsCVSPath=releng-common/tools/updates/org.eclipse.releng.generators"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("# use a default value for basebuilderBranch? 0 = no, 1 = yes"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("useDefaultBasebuilderBranch=0"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("# See http://wiki.eclipse.org/Modeling_Project_Releng/Releasing#Contributing_To_Ganymede_Update_Site"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("# pattern to use when searching for features to include in coordsite; defaults to \".*eclipse/features/org.eclipse..*(${subprojectName}|${subprojectName}.sdk)_.*\\/$\" "); //$NON-NLS-1$
+ out.write(NL);
+ out.write("coordsiteFeaturePattern=\"\""); //$NON-NLS-1$
+ out.write(NL);
+ out.write("# pattern to use when setting feature to include in coordsite's main feature ('Models and Model Development'); all other matching features will go in 'Enabling Features'"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("coordsiteMainFeaturePattern=\"\""); //$NON-NLS-1$
+ out.write(NL);
+ }
+}
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_readmehtml.java b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_readmehtml.java
new file mode 100644
index 0000000..a629505
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_readmehtml.java
@@ -0,0 +1,416 @@
+package org.eclipse.jet.ec2008.pushbuttonbuild.compiled;
+
+import org.eclipse.jet.JET2Context;
+import org.eclipse.jet.JET2Template;
+import org.eclipse.jet.JET2Writer;
+import org.eclipse.jet.taglib.RuntimeTagElement;
+import org.eclipse.jet.taglib.TagInfo;
+
+public class _jet_readmehtml implements JET2Template {
+ private static final String _jetns_c = "org.eclipse.jet.controlTags"; //$NON-NLS-1$
+
+
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+
+ public _jet_readmehtml() {
+ super();
+ }
+
+ private static final String NL = System.getProperty("line.separator"); //$NON-NLS-1$
+
+ private static final TagInfo _td_c_get_31_44 = new TagInfo("c:get", //$NON-NLS-1$
+ 31, 44,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@parentProjectName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_33_87 = new TagInfo("c:get", //$NON-NLS-1$
+ 33, 87,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@parentProjectName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_37_19 = new TagInfo("c:get", //$NON-NLS-1$
+ 37, 19,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@parentProjectName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_37_81 = new TagInfo("c:get", //$NON-NLS-1$
+ 37, 81,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@incubationTag", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_108_9 = new TagInfo("c:get", //$NON-NLS-1$
+ 108, 9,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@parentProjectName", //$NON-NLS-1$
+ } );
+
+ public void generate(final JET2Context context, final JET2Writer __out) {
+ JET2Writer out = __out;
+ out.write("<html>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<head>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<title>Instructions</title>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("</head>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("<body bgcolor=\"#FFFFFF\" text=\"#000000\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<font size=\"+2\"> Automated Testing of Modeling Project Builds</font> "); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<p>last updated: November 9, 2005</p>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<p><font size=\"+1\">Description</font></p>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<p>This document describes how to run the your project's JUnit test plugins from the command "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" line. This is the same mechanism used in the builds.</p>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<p>Click <a href=\"testframework.html\">here</a> for a description of the testing "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" framework, and how it can be used outside of the setup described here.</p>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<p>If you simply wish to write and run JUnit tests interactively from an Eclipse "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" workbench, try one of the links below:</p>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<p><a href=\"http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/jdt-ui-home/plugins/org.eclipse.jdt.junit/index.html\">JUnit "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" Support in Eclipse</a><br>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<a href=\"http://dev.eclipse.org:8080/help/content/help:/org.eclipse.jdt.doc.user/tasks/tasks-207.htm?resultof=%6a%75%6e%69%74%20&toc=%2Forg.eclipse.jdt.doc.user%2Ftoc.xml\">Using "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" JUnit</a></p>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("<p><font size=\"+1\">Requirements</font></p>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<p>1. All test machines must have a java runtime environment (version 1.3.1) installed and added to the path environment variable (see "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <a href=\"#vm\">-vm</a> parameter below).<br>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" 2. <a href=\"http://www.info-zip.org/pub/infozip/UnZip.html\">Info-ZIP UnZip</a> "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" version 5.41 or later installed and added to the path.<br>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" 3. The Automated Test feature from a"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <a href=\"http://www.eclipse.org/modeling/"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_31_44 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_31_44); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_31_44.setRuntimeParent(null);
+ _jettag_c_get_31_44.setTagInfo(_td_c_get_31_44);
+ _jettag_c_get_31_44.doStart(context, out);
+ _jettag_c_get_31_44.doEnd();
+ out.write("\">downloads</a>. "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" This contains the test framework plugins and the JUnit test plugins to run.<br>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" 4. The zip file from the same build as the Automated Test feature. You can use the "); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_33_87 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_33_87); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_33_87.setRuntimeParent(null);
+ _jettag_c_get_33_87.setTagInfo(_td_c_get_33_87);
+ _jettag_c_get_33_87.doStart(context, out);
+ _jettag_c_get_33_87.doEnd();
+ out.write("-*-SDK zip file instead of the individual files.<br>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" 5. An Eclipse SDK zip file. The URL and build name of the required builds "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" are specified in the build.cfg file included in the Automated Test zip file.</p>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<p><font size=\"+1\">Setup</font></p>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<p>1. Extract the "); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_37_19 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_37_19); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_37_19.setRuntimeParent(null);
+ _jettag_c_get_37_19.setTagInfo(_td_c_get_37_19);
+ _jettag_c_get_37_19.doStart(context, out);
+ _jettag_c_get_37_19.doEnd();
+ out.write("-*-automated-tests-"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_37_81 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_37_81); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_37_81.setRuntimeParent(null);
+ _jettag_c_get_37_81.setTagInfo(_td_c_get_37_81);
+ _jettag_c_get_37_81.doStart(context, out);
+ _jettag_c_get_37_81.doEnd();
+ out.write("&lt;buildid&gt;.zip. On Window, extract "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" this file close to the root of the drive to prevent some path names from exceeding "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" the 255 character limit. This will create a top-level directory &quot;<i>testing</i>&quot;.<br>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" 2. Place the Eclipse SDK zip file and the project's runtime in the <i>testing</i> directory. "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" Do not unzip these files. (The test scripts will take care of this)<br>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("</p>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<p><font size=\"+1\">Running Tests</font></p>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<p>1. cd to the <i>testing</i> directory<br>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" 2. Run the following script:</p>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<p><b>runtests.sh [-os &lt;operating system&gt;] [-ws &lt;windowing system&gt;] [-arch "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" &lt;architecture&gt;] [-noclean] [&lt;testTarget&gt;][-properties &lt;path&gt;][-vm "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" &lt;path to java executable&gt;]</b></p>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("All parameters and targets are optional on windows systems. Just running &quot;runtests.sh&quot; "); //$NON-NLS-1$
+ out.write(NL);
+ out.write("will run <b>ALL</b> tests on Windows, installing a clean Eclipse and your project's SDK between "); //$NON-NLS-1$
+ out.write(NL);
+ out.write("each test target. On *nix systems, the os, ws and arch parameters must be specified. "); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<br>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<br>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("Test results are placed in the <i>testing</i>/<i>results</i> directory in xml and html format.<br>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<p><font size=\"+1\"><a name=\"vm\"></a>Parameters</font></p>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<table width=\"90%\" border=\"1\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <tr> "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>Parameter</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>Description</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" </tr>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <tr> "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>-os &lt;operating system&gt;</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>The OS the tests are being run on. One of: aix, hpux, linux, qnx, solaris, "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" win32. <b>Default win32</b></td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" </tr>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <tr> "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>-ws &lt;windowing system&gt;</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>The windowing system the tests are being run on. One of: motif, gtk, photon, "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" win32. <b>Default win32</b></td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" </tr>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <tr> "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>-arch &lt;architecture&gt;</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>The architecture the tests are being run on. One of: ppc, PA_RISC, x86, "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" sparc. <b>Default x86</b></td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" </tr>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <tr> "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>-noclean</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>Run tests without installing an Eclipse and GEF SDK and tests between "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" test targets. Default is to re-install these between test targets.</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" </tr>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <tr> "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>-properties</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>Used to reference a properties file containing additional Ant properties "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" used in running tests.Can be used to pass additional vm arguments to the "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" Java virtual machine running the tests by adding the entry &quot;extraVMargs=&lt;the "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" args to pass to the vm&gt;&quot; to the specified properties file.</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" </tr>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <tr>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>-vm</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>The full path to the java executable with which to run the tests. Use "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" this to specify a specific virtual machine with which to run the tests. "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" For example, &quot;-vm c:\\sun131\\jre\\bin\\java&quot;. Default set to &quot;java&quot; "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" (i.e. java executable on system path). </td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" </tr>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("</table>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" "); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<p><font size=\"+1\">Test Targets</font></p>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<p>Specifies which ant target to run in the main test.xml. Typically this corresponds "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" to a test project's tests. If you do not specify a test target then the <b>all</b> "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" test target is run.</p>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("<table width=\"90%\" border=\"1\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <tr> "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>all</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>Runs all the targets below.</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" </tr>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <tr> "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>"); //$NON-NLS-1$
+ RuntimeTagElement _jettag_c_get_108_9 = context.getTagFactory().createRuntimeTag(_jetns_c, "get", "c:get", _td_c_get_108_9); //$NON-NLS-1$ //$NON-NLS-2$
+ _jettag_c_get_108_9.setRuntimeParent(null);
+ _jettag_c_get_108_9.setTagInfo(_td_c_get_108_9);
+ _jettag_c_get_108_9.doStart(context, out);
+ _jettag_c_get_108_9.doEnd();
+ out.write("</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>Runs the JUnit tests located in the test plug-ins</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" </tr>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <tr> "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>genHtml</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>Converts xml test results in the &quot;<i>testing</i>/<i>results</i>&quot; directory "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" to html.</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" </tr>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("</table>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<p>&nbsp;</p>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<p><font size=\"+1\"><a name=\"appendixb\"></a>Appendix A- Supported os, ws, and arch "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" value combinations</font></p>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<p>The following table contains the values that can be used with the -os, -ws, "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" and -arch switches.</p>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("<table width=\"75%\" border=\"1\">"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <tr> "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>Operating System (os)</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>Windowing System (ws)</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>Architecture (arch)</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" </tr>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <tr> "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>aix</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>motif</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>ppc</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" </tr>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <tr> "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>hpux</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>motif</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>PA_RISC</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" </tr>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <tr> "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>linux</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>gtk</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>x86</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" </tr>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <tr> "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>linux</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>motif</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>x86</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" </tr>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <tr> "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td height=\"24\">qnx</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td height=\"24\">photon</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td height=\"24\">x86</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" </tr>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <tr> "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>solaris</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>motif</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>sparc</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" </tr>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <tr> "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>win32</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>win32</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" <td>x86</td>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" </tr>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("</table>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("</body>"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("</html>"); //$NON-NLS-1$
+ out.write(NL);
+ }
+}
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_relengbuildgtksh.java b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_relengbuildgtksh.java
new file mode 100644
index 0000000..5059200
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_relengbuildgtksh.java
@@ -0,0 +1,462 @@
+package org.eclipse.jet.ec2008.pushbuttonbuild.compiled;
+
+import org.eclipse.jet.JET2Context;
+import org.eclipse.jet.JET2Template;
+import org.eclipse.jet.JET2Writer;
+
+public class _jet_relengbuildgtksh implements JET2Template {
+
+
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+
+ public _jet_relengbuildgtksh() {
+ super();
+ }
+
+ private static final String NL = System.getProperty("line.separator"); //$NON-NLS-1$
+
+ public void generate(final JET2Context context, final JET2Writer __out) {
+ JET2Writer out = __out;
+ out.write("#!/bin/bash"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("echo -n \"[relengbuild] $0 started on: `date +%Y%m%d\\ %H\\:%M\\:%S`\";"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("# environment variables"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("PATH=.:/bin:/usr/bin:/usr/bin/X11:/usr/local/bin:/usr/X11R6/bin:`pwd`/../linux;export PATH"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("export USERNAME=`whoami`"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("echo \" running as $USERNAME\";"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("echo \" currently in dir: `pwd`\";"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("if [[ ! $JAVA_HOME ]]; then"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\techo -n \"[relengbuild] Get JAVA_HOME from build.cfg ... \";"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\tbuildcfg=$PWD/../../../build.cfg;"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\texport JAVA_HOME=$(grep \"JAVA_HOME=\" $buildcfg | egrep -v \"^#\" | tail -1 | sed -e \"s/JAVAHOME=//\");"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\techo \"$JAVA_HOME\";"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("fi"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("Xflags=\"\";"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("Dflags=\"\";"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("# default target to run in org.eclipse.$subprojectName.releng/builder/tests/scripts/test.xml"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("antTestTarget=all"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("# process command line arguments"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("while [ $# -gt 0 ]"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("do"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\tcase \"$1\" in"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t-vmExecutable) vmExecutable=\"$2\"; shift;;"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t-consolelog) consolelog=\"$2\"; shift;;"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t-X*) Xflags=$Xflags\\ $1;;"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t-D*) Dflags=$Dflags\\ $1;;"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\tesac"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\tshift"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("done"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("checkIfj9 ()"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("{"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("# given a series of -X flags, see if the string -Xj9 can be found"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" j9=$Xflags;"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" #echo \"Xflags=$Xflags\""); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" j9=${j9/\\-Xj9/} # substring replacement"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" #echo \"remaining: $j9\""); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" if [ \"$j9\" != \"$Xflags\" ]; then # found it"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" j9=\"j9\";"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" else"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" j9=\"\";"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" fi"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("}"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("checkIfj9;"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("defined=0;"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("checkIfDefined ()"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("{"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\tif [ -f $1 ] ; then"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\tdefined=1;"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\telse"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\tdefined=0;"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\tfi"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("}"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("execCmd ()"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("{"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\techo \"\"; echo \"[relengbuild] [`date +%H\\:%M\\:%S`]\"; "); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\techo \" $1\" | perl -pe \"s/ -/\\n -/g\";"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\tif [ \"x$2\" != \"x\" ]; then"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t$1 | tee $2;"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\telse"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t$1;"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\tfi"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("}"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("doFunction ()"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("{"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\tcmd=$1;"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\tparams=$2"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\tfor pth in \".\" \"/bin\" \"/usr/bin\" \"/usr/bin/X11\" \"/usr/local/bin\" \"/usr/X11R6/bin\" \"`pwd`/../linux\" ; do"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\tdefined=0;"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\tcheckIfDefined $pth/$cmd"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\tif [ $defined -eq 1 ] ; then"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t$cmd $params"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\tsleep 3"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\tbreak;"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\tfi"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\tdone"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\tif [ $defined -eq 0 ] ; then"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\techo \"$cmd is not defined (command not found)\";"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\tfi"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("}"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("# these don't work on old build server, so not point wrapping them to say so when we can just omit"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("# doFunction Xvfb \":42 -screen 0 1024x768x24 -ac & \""); //$NON-NLS-1$
+ out.write(NL);
+ out.write("# doFunction Xnest \":43 -display :42 -depth 24 & \""); //$NON-NLS-1$
+ out.write(NL);
+ out.write("# doFunction fvwm2 \"-display localhost:43.0 & \""); //$NON-NLS-1$
+ out.write(NL);
+ out.write("#export DISPLAY=$HOSTNAME:43.0"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("#ulimit -c unlimited"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("getBuildID()"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("{\t# given $PWD: /home/www-data/build/modeling/$buildName/$subprojectName/downloads/drops/1.1.0/N200702112049/testing/N200702112049/testing"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t# return N200702110400"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\tbuildID=$1; #echo \"buildID=$buildID\";"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\tbuildID=${buildID##*drops\\/}; # trim up to drops/ (from start) (substring notation)"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\tbuildID=${buildID%%\\/test*}; # trim off /test (to end) (substring notation)"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\tbuildID=${buildID##*\\/}; # trim up to / (from start) (substring notation)"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("}"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("buildID=\"\"; getBuildID $PWD; #echo buildID=$buildID;"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("getBranch()"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("{\t# given $PWD: /home/www-data/build/modeling/$buildName/$subprojectName/downloads/drops/1.1.0/N200702112049/testing/N200702112049/testing"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t# return 1.1.0"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\tbranch=$1; #echo \"branch=$branch\";"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\tbranch=${branch##*drops\\/}; # trim up to drops/ (from start) (substring notation)"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\tbranch=${branch%%\\/*}; # trim off / (to end) (substring notation)"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("}"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("branch=\"\"; getBranch $PWD; #echo branch=$branch;"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("############################# BEGIN RUN TESTS ############################# "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write(NL);
+ out.write("# operating system, windowing system and architecture variables"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("# for *nix systems, os, ws and arch values must be specified"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("Dflags=$Dflags\" \"-Dplatform=linux.gtk"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("os=linux"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("ws=gtk"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("arch=x86"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("# default value to determine if eclipse should be reinstalled between running of tests"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("installmode=\"clean\""); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("#this value must be set when using rsh to execute this script, otherwise the script will execute from the user's home directory"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("dir=."); //$NON-NLS-1$
+ out.write(NL);
+ out.write("cd $dir"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("workspaceDir=\"$dir/eclipse/workspace\""); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("# Replace the boot eclipse (The eclipse used to run the main test.xml, this will start another eclipse later)"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("if [ -d $dir/eclipse ] ; then"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\trm -rf $dir/eclipse"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("fi"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("if [ -d $workspaceDir ] ; then"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\trm -rf $dir/workspace"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("fi"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("echo \"[runtests] Currently in `pwd`:\""); //$NON-NLS-1$
+ out.write(NL);
+ out.write("# need conditional processing here: M3.0.2 = zip, I3.1.0 = tar.gz"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("sdks=`find $dir -name \"eclipse-SDK-*\"`"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("# get extension from file(s)"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("for sdk in $sdks; do"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\tsdk=\"eclipse\"${sdk##*eclipse}; # trim up to eclipse (substring notation)"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t#echo -n \"[runtests] Eclipse SDK $sdk is a\";"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\text=${sdk%%\\.zip}; # trim off .zip (substring notation)"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\tif [ \"$ext\" != \"$sdk\" ]; then # it's a zip"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t#echo \" zip. Unpacking...\";"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\tunzip -qq -o $sdk"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\telse"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\text=${sdk%%\\.tar\\.gz}; # trim off .tar.gz (substring notation)"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\tif [ \"$ext\" != \"$sdk\" ]; then # it's a tar.gz"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t#echo \" tar.gz. Unpacking...\";"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\ttar -xzf $sdk"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\telse"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\text=${sdk%%\\.tar\\.Z}; # trim off .tar.Z (substring notation)"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\tif [ \"$ext\" != \"$sdk\" ]; then # it's a tar.Z"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t\t#echo \" tar.Z. Unpacking...\";"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t\ttar -xZf $sdk"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\telse"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t\techo \"[runtests] ERROR: Eclipse SDK $sdk is an UNKNOWN file type. Failure.\";"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\t\texit 2"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\tfi"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\tfi"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\tfi"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("done"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("J2SE15flags=\"\";"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("# TODO: if a 1.5 JDK and want source/target = 1.5, leave these in"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("# TODO: if source/target = 1.4, remove these!"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("if [ ${JAVA_HOME##*1.5*}\"\" = \"\" -o ${JAVA_HOME##*15*}\"\" = \"\" -o ${JAVA_HOME##*5.0*}\"\" = \"\" -o ${JAVA_HOME##*50*}\"\" = \"\" ]; then"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t# set J2SE-1.5 properties (-Dflags)"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\tbootclasspath=\".\"`find $JAVA_HOME/jre/lib -name \"*.jar\" -printf \":%p\"`;"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\tJ2SE15flags=$J2SE15flags\" -DJ2SE-1.5=$bootclasspath\""); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\tJ2SE15flags=$J2SE15flags\" -DbundleBootClasspath=$bootclasspath\""); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\tJ2SE15flags=$J2SE15flags\" -DjavacSource=1.5\""); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\tJ2SE15flags=$J2SE15flags\" -DjavacTarget=1.5\""); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\tJ2SE15flags=$J2SE15flags\" -DbundleJavacSource=1.5\""); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\tJ2SE15flags=$J2SE15flags\" -DbundleJavacTarget=1.5\""); //$NON-NLS-1$
+ out.write(NL);
+ out.write("fi"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("# different ways to get the launcher and Main class"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("if [[ -f eclipse/startup.jar ]]; then "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" cpAndMain=\"eclipse/startup.jar org.eclipse.core.launcher.Main\"; # up to M4_33"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("elif [[ -f eclipse/plugins/org.eclipse.equinox.launcher.jar ]]; then"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" cpAndMain=\"eclipse/plugins/org.eclipse.equinox.launcher.jar org.eclipse.equinox.launcher.Main\"; # M5_33"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("else"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(" cpAndMain=`find eclipse/ -name \"org.eclipse.equinox.launcher_*.jar\" | sort | head -1`\" org.eclipse.equinox.launcher.Main\"; "); //$NON-NLS-1$
+ out.write(NL);
+ out.write("fi"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("# run tests"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("echo \"[runtests] [`date +%H\\:%M\\:%S`] Launching Eclipse (installmode = $installmode with -enableassertions turned on) ...\""); //$NON-NLS-1$
+ out.write(NL);
+ out.write("execCmd \"$JAVA_HOME/bin/java $Xflags -enableassertions -cp $cpAndMain -ws $ws -os $os -arch $arch \\"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("-application org.eclipse.ant.core.antRunner -data $workspaceDir -file test.xml $antTestTarget \\"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("$Dflags -Dws=$ws -Dos=$os -Darch=$arch -D$installmode=true $J2SE15flags \\"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("$properties -logger org.apache.tools.ant.DefaultLogger\" $consolelog;"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("echo \"[runtests] [`date +%H\\:%M\\:%S`] Eclipse test run completed. \""); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("############################# END RUN TESTS ############################# "); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("# supress errors by checking for the file first"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("if [ -r /tmp/.X43-lock ] ; then"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\tkill `cat /tmp/.X43-lock`"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("fi"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("if [ -r /tmp/.X42-lock ] ; then"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\tkill `cat /tmp/.X42-lock`"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("fi"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("if [[ ! -d $PWD/results ]]; then"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\techo \"[relengbuild] No test results found in $PWD/results!\";"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\techo \"[relengbuild] Creating 'noclean' file to prevent cleanup after build completes.\""); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\techo \"1\" > $PWD/../../../noclean;"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("else"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("# if the build failed for some reason, don't clean up!"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("xmls=`find $PWD/results/xml -name \"*.xml\"`;"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("testsFailed=1;"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("for xml in $xmls; do"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\tif [ $testsFailed -eq 1 ]; then"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\ttestsFailed=`cat $xml | grep -c \"<testsuite errors=\\\"0\\\" failures=\\\"0\\\"\"`"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\tif [ $testsFailed -lt 1 ]; then"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\techo \"[relengbuild] Found test failure(s) in $xml!\";"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\techo \"[relengbuild] Creating 'noclean' file to prevent cleanup after build completes.\""); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\techo \"1\" > $PWD/../../../noclean;"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\t\tbreak;"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\t\tfi"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("\tfi"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("done"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("fi;"); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ out.write("echo \"[relengbuild] relengbuildgtk.sh completed on: `date +%Y%m%d\\ %H\\:%M\\:%S`\""); //$NON-NLS-1$
+ out.write(NL);
+ out.write(NL);
+ }
+}
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_repoInfoproperties.java b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_repoInfoproperties.java
new file mode 100644
index 0000000..8290600
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_repoInfoproperties.java
@@ -0,0 +1,35 @@
+package org.eclipse.jet.ec2008.pushbuttonbuild.compiled;
+
+import org.eclipse.jet.JET2Context;
+import org.eclipse.jet.JET2Template;
+import org.eclipse.jet.JET2Writer;
+
+public class _jet_repoInfoproperties implements JET2Template {
+
+
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+
+ public _jet_repoInfoproperties() {
+ super();
+ }
+
+ private static final String NL = System.getProperty("line.separator"); //$NON-NLS-1$
+
+ public void generate(final JET2Context context, final JET2Writer __out) {
+ JET2Writer out = __out;
+ out.write("cvsHost=buildbox"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("cvsReadProtocol=ext"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("cvsWriteProtocol=ext"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("cvsReadUser=build"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("cvsWriteUser=build"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("cvsWriteRelengUser=build"); //$NON-NLS-1$
+ out.write(NL);
+ out.write("cvsRep=/cvsroot/modeling"); //$NON-NLS-1$
+ out.write(NL);
+ }
+}
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_testManifestxml.java b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_testManifestxml.java
new file mode 100644
index 0000000..e626e13
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/jet2java/org/eclipse/jet/ec2008/pushbuttonbuild/compiled/_jet_testManifestxml.java
@@ -0,0 +1,883 @@
+package org.eclipse.jet.ec2008.pushbuttonbuild.compiled;
+
+import org.eclipse.jet.JET2Context;
+import org.eclipse.jet.JET2Template;
+import org.eclipse.jet.JET2Writer;
+import org.eclipse.jet.taglib.RuntimeTagElement;
+import org.eclipse.jet.taglib.TagInfo;
+
+public class _jet_testManifestxml implements JET2Template {
+ private static final String _jetns_c = "org.eclipse.jet.controlTags"; //$NON-NLS-1$
+
+
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+
+ public _jet_testManifestxml() {
+ super();
+ }
+
+ private static final String NL = System.getProperty("line.separator"); //$NON-NLS-1$
+
+ private static final TagInfo _td_c_get_11_27 = new TagInfo("c:get", //$NON-NLS-1$
+ 11, 27,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@parentProjectName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_11_71 = new TagInfo("c:get", //$NON-NLS-1$
+ 11, 71,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@shortName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_11_115 = new TagInfo("c:get", //$NON-NLS-1$
+ 11, 115,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@incubationTag", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_11_170 = new TagInfo("c:get", //$NON-NLS-1$
+ 11, 170,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@parentProjectName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_11_214 = new TagInfo("c:get", //$NON-NLS-1$
+ 11, 214,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@shortName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_11_258 = new TagInfo("c:get", //$NON-NLS-1$
+ 11, 258,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@incubationTag", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_11_347 = new TagInfo("c:get", //$NON-NLS-1$
+ 11, 347,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@parentProjectName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_11_391 = new TagInfo("c:get", //$NON-NLS-1$
+ 11, 391,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@shortName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_11_435 = new TagInfo("c:get", //$NON-NLS-1$
+ 11, 435,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@incubationTag", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_11_515 = new TagInfo("c:get", //$NON-NLS-1$
+ 11, 515,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@parentProjectName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_11_559 = new TagInfo("c:get", //$NON-NLS-1$
+ 11, 559,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@shortName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_11_603 = new TagInfo("c:get", //$NON-NLS-1$
+ 11, 603,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@incubationTag", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_18_27 = new TagInfo("c:get", //$NON-NLS-1$
+ 18, 27,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@parentProjectName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_18_71 = new TagInfo("c:get", //$NON-NLS-1$
+ 18, 71,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@shortName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_18_111 = new TagInfo("c:get", //$NON-NLS-1$
+ 18, 111,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@incubationTag", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_18_166 = new TagInfo("c:get", //$NON-NLS-1$
+ 18, 166,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@parentProjectName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_18_210 = new TagInfo("c:get", //$NON-NLS-1$
+ 18, 210,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@shortName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_18_250 = new TagInfo("c:get", //$NON-NLS-1$
+ 18, 250,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@incubationTag", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_18_339 = new TagInfo("c:get", //$NON-NLS-1$
+ 18, 339,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@parentProjectName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_18_383 = new TagInfo("c:get", //$NON-NLS-1$
+ 18, 383,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@shortName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_18_423 = new TagInfo("c:get", //$NON-NLS-1$
+ 18, 423,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@incubationTag", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_18_503 = new TagInfo("c:get", //$NON-NLS-1$
+ 18, 503,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@parentProjectName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_18_547 = new TagInfo("c:get", //$NON-NLS-1$
+ 18, 547,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@shortName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_18_587 = new TagInfo("c:get", //$NON-NLS-1$
+ 18, 587,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@incubationTag", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_25_27 = new TagInfo("c:get", //$NON-NLS-1$
+ 25, 27,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@parentProjectName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_25_71 = new TagInfo("c:get", //$NON-NLS-1$
+ 25, 71,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@shortName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_25_123 = new TagInfo("c:get", //$NON-NLS-1$
+ 25, 123,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@incubationTag", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_25_178 = new TagInfo("c:get", //$NON-NLS-1$
+ 25, 178,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@parentProjectName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_25_222 = new TagInfo("c:get", //$NON-NLS-1$
+ 25, 222,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@shortName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_25_274 = new TagInfo("c:get", //$NON-NLS-1$
+ 25, 274,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@incubationTag", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_25_363 = new TagInfo("c:get", //$NON-NLS-1$
+ 25, 363,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@parentProjectName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_25_407 = new TagInfo("c:get", //$NON-NLS-1$
+ 25, 407,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@shortName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_25_459 = new TagInfo("c:get", //$NON-NLS-1$
+ 25, 459,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@incubationTag", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_25_539 = new TagInfo("c:get", //$NON-NLS-1$
+ 25, 539,
+ new String[] {
+ "select", //$NON-NLS-1$
+ },
+ new String[] {
+ "$build/@parentProjectName", //$NON-NLS-1$
+ } );
+ private static final TagInfo _td_c_get_25_583 = new TagInfo("c:get", //$NON-NLS-1$
+ 25, 583,
+ new String[] {
+