This commit was manufactured by cvs2svn to create branch 'APT_3_1_1_branch'.

Sprout from APT_3_1_1_maintenance 2006-03-15 22:18:42 UTC Jesse Garms <jgarms> 'Complete support for inner types requested from Env.getTypeDeclaration(). E.g.: java.util.Map.Entry. Previously we supported only the syntax "java.util.Map$Entry".'
Delete:
    org.eclipse.jdt.apt.tests/.classpath
    org.eclipse.jdt.apt.tests/.cvsignore
    org.eclipse.jdt.apt.tests/.project
    org.eclipse.jdt.apt.tests/.settings/org.eclipse.jdt.core.prefs
    org.eclipse.jdt.apt.tests/.settings/org.eclipse.jdt.ui.prefs
    org.eclipse.jdt.apt.tests/build.properties
    org.eclipse.jdt.apt.tests/perf-test-project.zip
    org.eclipse.jdt.apt.tests/plugin.xml
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/APITests.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/APTTestBase.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/AnnotationValueConversionTests.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/AptBuilderTests.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/AptReconcileTests.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/FactoryLoaderTests.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/FileGenerationTests.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/JavaVersionTests.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/MirrorDeclarationTests.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/MirrorTests.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/MirrorUtilTests.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/MixedModeTesting.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/PerfTests.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/PreferencesTests.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/ReadAnnotationTests.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/RegressionTests.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/TestAll.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/TestUtil.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/BaseFactory.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/BaseProcessor.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/ProcessorTestStatus.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/apitest/APIAnnotationProcessorFactory.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/apitest/Common.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/aptrounding/GenBean.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/aptrounding/GenBean2.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/aptrounding/Round1GenAnnotationFactory.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/aptrounding/Round1GenAnnotationProcessor.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/aptrounding/Round2GenAnnotationFactory.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/aptrounding/Round2GenAnnotationProcessor.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/extradependency/ExtraDependencyAnnotation.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/extradependency/ExtraDependencyAnnotationProcessor.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/extradependency/ExtraDependencyAnnotationProcessorFactory.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/FileGenLocationAnnotation.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/FileGenLocationAnnotationProcessor.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/FileGenLocationAnnotationProcessorFactory.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/FirstGenAnnotation.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/FirstGenAnnotationProcessor.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/FirstGenAnnotationProcessorFactory.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/SecondGenAnnotation.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/SecondGenAnnotationProcessor.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/SecondGenAnnotationProcessorFactory.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/TextGenAnnotation.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/TextGenAnnotationProcessor.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/TextGenAnnotationProcessorFactory.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/helloworld/HelloWorldAnnotation.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/helloworld/HelloWorldAnnotationProcessor.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/helloworld/HelloWorldAnnotationProcessorFactory.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/helloworld/HelloWorldWildcardAnnotationProcessorFactory.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/messager/MessagerAnnotation.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/messager/MessagerAnnotationProcessor.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/messager/MessagerAnnotationProcessorFactory.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/messager/MessagerCodeExample.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/ASTBasedMirrorDeclarationProcessorFactory.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/CodeExample.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/DefaultConstantAnnotationFactory.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/DefaultConstantProcessor.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorDeclarationCodeExample.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorDeclarationTestAnnotation.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorDeclarationTestAnnotationProcessor.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorDeclarationTestAnnotationProcessorFactory.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorTestAnnotation.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorTestAnnotationProcessor.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorTestAnnotationProcessorFactory.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorUtilTestAnnotation.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorUtilTestAnnotationProcessor.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorUtilTestAnnotationProcessorFactory.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorUtilTestCodeExample.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/nestedhelloworld/NestedHelloWorldAnnotation.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/nestedhelloworld/NestedHelloWorldAnnotationProcessor.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/nestedhelloworld/NestedHelloWorldAnnotationProcessorFactory.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/noop/NoOpAnnotation.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/noop/NoOpAnnotationProcessor.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/noop/NoOpAnnotationProcessorFactory.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/readAnnotationType/AnnotationReader.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/readAnnotationType/ReadAnnotationTypeProcessor.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/readAnnotationType/ReadAnnotationTypeProcessorFactory.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/readAnnotationType/SimpleAnnotation.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/readannotation/CodeExample.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/readannotation/ReadAnnotationProcessor.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/readannotation/ReadAnnotationProcessorFactory.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/readannotation/lib/question.jar
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/valueconversion/Annotation.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/valueconversion/AnnotationWithArray.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/valueconversion/RefAnnotation.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/valueconversion/RefAnnotationWithArray.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/valueconversion/ValueConversionProcessor.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/valueconversion/ValueConversionProcessorFactory.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/jdtcoretests/AllJdtCoreTests.java
    org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/plugin/AptTestsPlugin.java
    org.eclipse.jdt.apt.tests/srcext/META-INF/services/com.sun.mirror.apt.AnnotationProcessorFactory
    org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/batch/Batch.java
    org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/batch/BatchAnnotationFactory.java
    org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/batch/BatchGen.java
    org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/batch/BatchGenAnnotationFactory.java
    org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/batch/BatchProcessor.java
    org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/classloader/Color.java
    org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/classloader/ColorAnnotation.java
    org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/classloader/ColorAnnotationProcessor.java
    org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/classloader/ColorAnnotationProcessorFactory.java
    org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/classloader/ColorTestCodeExample.java
    org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/classloader/ColorWrapper.java
    org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/loadertest/LoaderTestAnnotation.java
    org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/loadertest/LoaderTestAnnotationProcessor.java
    org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/loadertest/LoaderTestAnnotationProcessorFactory.java
    org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/loadertest/LoaderTestCodeExample.java
    org.eclipse.jdt.apt.tests/test.xml
    org.eclipse.jdt.apt.ui/.classpath
    org.eclipse.jdt.apt.ui/.cvsignore
    org.eclipse.jdt.apt.ui/.project
    org.eclipse.jdt.apt.ui/.settings/org.eclipse.core.resources.prefs
    org.eclipse.jdt.apt.ui/.settings/org.eclipse.jdt.core.prefs
    org.eclipse.jdt.apt.ui/.settings/org.eclipse.jdt.ui.prefs
    org.eclipse.jdt.apt.ui/META-INF/MANIFEST.MF
    org.eclipse.jdt.apt.ui/about.html
    org.eclipse.jdt.apt.ui/build.properties
    org.eclipse.jdt.apt.ui/docs/Building_with_apt.html
    org.eclipse.jdt.apt.ui/docs/Getting_started.html
    org.eclipse.jdt.apt.ui/docs/Quick_fix_with_apt.html
    org.eclipse.jdt.apt.ui/docs/annotation_processing.gif
    org.eclipse.jdt.apt.ui/docs/compiler_dialog.png
    org.eclipse.jdt.apt.ui/docs/contexts_APT.xml
    org.eclipse.jdt.apt.ui/docs/factory_path.gif
    org.eclipse.jdt.apt.ui/docs/reference/apt_config.html
    org.eclipse.jdt.apt.ui/docs/reference/automatic_processor_options.html
    org.eclipse.jdt.apt.ui/docs/reference/factorypath.html
    org.eclipse.jdt.apt.ui/docs/reference/factorypathoptions.html
    org.eclipse.jdt.apt.ui/docs/reference/processor_options_input.html
    org.eclipse.jdt.apt.ui/plugin.xml
    org.eclipse.jdt.apt.ui/schema/aptQuickFixProvider.exsd
    org.eclipse.jdt.apt.ui/scripts/exportplugin.xml
    org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/AptUIPlugin.java
    org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/Messages.java
    org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/AdvancedFactoryPathOptionsDialog.java
    org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/AptConfigurationBlock.java
    org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/AptPreferencePage.java
    org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/BaseConfigurationBlock.java
    org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/BasePreferencePage.java
    org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/FactoryPathConfigurationBlock.java
    org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/FactoryPathPreferencePage.java
    org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/Messages.java
    org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/ProcessorOptionInputDialog.java
    org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/messages.properties
    org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/quickfix/APTQuickFixProcessor.java
    org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/quickfix/Messages.java
    org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/quickfix/messages.properties
    org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/util/ExceptionHandler.java
    org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/util/IAptHelpContextIds.java
    org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/util/Messages.java
    org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/util/messages.properties
    org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/messages.properties
    org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/quickfix/IAPTQuickFixProvider.java
    org.eclipse.jdt.apt.ui/toc.xml
diff --git a/org.eclipse.jdt.apt.tests/.classpath b/org.eclipse.jdt.apt.tests/.classpath
deleted file mode 100644
index a0c1a7d..0000000
--- a/org.eclipse.jdt.apt.tests/.classpath
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry output="binext" kind="src" path="srcext"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry exported="true" kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JRE 1.5.0"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/org.eclipse.jdt.apt.tests/.cvsignore b/org.eclipse.jdt.apt.tests/.cvsignore
deleted file mode 100755
index d30794a..0000000
--- a/org.eclipse.jdt.apt.tests/.cvsignore
+++ /dev/null
@@ -1,2 +0,0 @@
-bin
-binext
diff --git a/org.eclipse.jdt.apt.tests/.project b/org.eclipse.jdt.apt.tests/.project
deleted file mode 100644
index c6eff21..0000000
--- a/org.eclipse.jdt.apt.tests/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.jdt.apt.tests</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/org.eclipse.jdt.apt.tests/.settings/org.eclipse.jdt.core.prefs b/org.eclipse.jdt.apt.tests/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index dfbf52a..0000000
--- a/org.eclipse.jdt.apt.tests/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,12 +0,0 @@
-#Fri Oct 14 11:24:46 PDT 2005
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.5
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-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/org.eclipse.jdt.apt.tests/.settings/org.eclipse.jdt.ui.prefs b/org.eclipse.jdt.apt.tests/.settings/org.eclipse.jdt.ui.prefs
deleted file mode 100644
index 8bdd4c9..0000000
--- a/org.eclipse.jdt.apt.tests/.settings/org.eclipse.jdt.ui.prefs
+++ /dev/null
@@ -1,3 +0,0 @@
-#Tue Jun 28 11:32:33 PDT 2005
-eclipse.preferences.version=1
-internal.default.compliance=default
diff --git a/org.eclipse.jdt.apt.tests/build.properties b/org.eclipse.jdt.apt.tests/build.properties
deleted file mode 100644
index cb94525..0000000
--- a/org.eclipse.jdt.apt.tests/build.properties
+++ /dev/null
@@ -1,11 +0,0 @@
-source.apt.jar = src/, \
-				srcext/
-output.apt.jar = bin/
-bin.includes = plugin.xml,\
-               test.xml,\
-               perf-test-project.zip,\
-               bin/,\
-               binext/,\
-               srcext/,\
-               src/
-jars.compile.order = apt.jar
diff --git a/org.eclipse.jdt.apt.tests/plugin.xml b/org.eclipse.jdt.apt.tests/plugin.xml
deleted file mode 100644
index 4b9e849..0000000
--- a/org.eclipse.jdt.apt.tests/plugin.xml
+++ /dev/null
@@ -1,95 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin
-   id="org.eclipse.jdt.apt.tests"
-   name="APT Tests"
-   version="1.0.0"
-
-   class="org.eclipse.jdt.apt.tests.plugin.AptTestsPlugin">
-   <runtime>
-      <library name="apt.jar">
-         <export name="*"/>
-      </library>
-   </runtime>
-   <requires>
-      <import plugin="org.junit"/>
-      <import plugin="org.eclipse.jdt.apt.core"/>
-      <import plugin="org.eclipse.jdt.apt.ui"/>
-      <import plugin="org.eclipse.jdt.core"/>
-      <import plugin="org.eclipse.jdt.core.tests.builder"/>
-      <import plugin="org.eclipse.jdt.core.tests.compiler"/>
-      <import plugin="org.eclipse.jdt.core.tests.model"/>
-      <import plugin="org.eclipse.jdt.core.tests.performance"/>
-      <import plugin="org.eclipse.core.resources"/>
-      <import plugin="org.eclipse.core.runtime"/>
-      <import plugin="org.eclipse.test.performance"/>
-   </requires>
-
-     <extension
-         point="org.eclipse.jdt.apt.core.annotationProcessorFactory">
-      <factories enableDefault="true">
-	      <factory
-	         class="org.eclipse.jdt.apt.tests.annotations.helloworld.HelloWorldAnnotationProcessorFactory">
-	      </factory>
-	      <factory
-	         class="org.eclipse.jdt.apt.tests.annotations.helloworld.HelloWorldWildcardAnnotationProcessorFactory">
-	      </factory>
-	      <factory
-	         class="org.eclipse.jdt.apt.tests.annotations.extradependency.ExtraDependencyAnnotationProcessorFactory">
-	      </factory>
-	      <factory
-	         class="org.eclipse.jdt.apt.tests.annotations.noop.NoOpAnnotationProcessorFactory">
-	      </factory>
-	      <factory
-	         class="org.eclipse.jdt.apt.tests.annotations.mirrortest.MirrorTestAnnotationProcessorFactory">
-	      </factory>
-	      <factory
-	         class="org.eclipse.jdt.apt.tests.annotations.nestedhelloworld.NestedHelloWorldAnnotationProcessorFactory">
-	      </factory>
-	      <factory
-	         class="org.eclipse.jdt.apt.tests.annotations.readannotation.ReadAnnotationProcessorFactory">
-	      </factory>
-	      <factory
-	         class="org.eclipse.jdt.apt.tests.annotations.mirrortest.MirrorDeclarationTestAnnotationProcessorFactory">
-	      </factory>
-	      <factory
-	         class="org.eclipse.jdt.apt.tests.annotations.mirrortest.MirrorUtilTestAnnotationProcessorFactory">
-	      </factory>
-	      <factory
-	         class="org.eclipse.jdt.apt.tests.annotations.valueconversion.ValueConversionProcessorFactory">
-	      </factory>
-       <factory class="org.eclipse.jdt.apt.tests.annotations.readAnnotationType.ReadAnnotationTypeProcessorFactory"/>
-	      <factory
-	         class="org.eclipse.jdt.apt.tests.annotations.filegen.FileGenLocationAnnotationProcessorFactory">
-	      </factory>
-	      <factory
-	         class="org.eclipse.jdt.apt.tests.annotations.filegen.FirstGenAnnotationProcessorFactory">
-	      </factory>
-	      <factory
-	         class="org.eclipse.jdt.apt.tests.annotations.filegen.SecondGenAnnotationProcessorFactory">
-	      </factory>
-	      <factory
-	         class="org.eclipse.jdt.apt.tests.annotations.filegen.TextGenAnnotationProcessorFactory">
-	      </factory>
-          <factory 
-             class="org.eclipse.jdt.apt.tests.annotations.messager.MessagerAnnotationProcessorFactory">
-          </factory>
-	      <factory
-	         class="org.eclipse.jdt.apt.tests.annotations.aptrounding.Round1GenAnnotationFactory">
-	      </factory>
-	      <factory
-	         class="org.eclipse.jdt.apt.tests.annotations.aptrounding.Round2GenAnnotationFactory">
-	      </factory>
-	      <factory
-	         class="org.eclipse.jdt.apt.tests.annotations.mirrortest.DefaultConstantAnnotationFactory">
-	      </factory>
-	      <factory
-	         class="org.eclipse.jdt.apt.tests.annotations.apitest.APIAnnotationProcessorFactory">
-	      </factory>
-	      <factory
-	         class="org.eclipse.jdt.apt.tests.annotations.mirrortest.ASTBasedMirrorDeclarationProcessorFactory">
-	      </factory>  
-	   </factories>
-   </extension>
-
-</plugin>
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/APITests.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/APITests.java
deleted file mode 100644
index aafe226..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/APITests.java
+++ /dev/null
@@ -1,199 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    jgarms@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import junit.framework.Test;
-import junit.framework.TestSuite;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.ILogListener;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.jdt.apt.core.AptPlugin;
-import org.eclipse.jdt.apt.core.util.AptUtil;
-import org.eclipse.jdt.apt.tests.annotations.helloworld.HelloWorldAnnotation;
-import org.eclipse.jdt.apt.tests.annotations.helloworld.HelloWorldAnnotationProcessorFactory;
-import org.eclipse.jdt.apt.tests.annotations.helloworld.HelloWorldWildcardAnnotationProcessorFactory;
-import org.eclipse.jdt.apt.tests.annotations.messager.MessagerAnnotationProcessor;
-import org.eclipse.jdt.apt.tests.annotations.messager.MessagerCodeExample;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.tests.builder.Problem;
-
-import com.sun.mirror.apt.AnnotationProcessorFactory;
-
-public class APITests extends APTTestBase {
-	
-	private class LogListener implements ILogListener {
-		private final List<IStatus> _messages = new ArrayList<IStatus>();
-		
-		public void logging(IStatus status, String plugin) {
-			_messages.add(status);
-		}
-		
-		public void clear() {
-			_messages.clear();
-		}
-		
-		public List<IStatus> getList() {
-			return _messages;
-		}
-	}
-	
-	private LogListener _logListener;
-	
-	public APITests(final String name) {
-		super( name );
-	}
-
-	public static Test suite() {
-		return new TestSuite( APITests.class );
-	}
-
-	@Override
-	public void setUp() throws Exception {
-		super.setUp();
-		
-		_logListener = new LogListener();
-		AptPlugin.getPlugin().getLog().addLogListener(_logListener);
-	}
-	
-	@Override
-	protected void tearDown() throws Exception {
-		super.tearDown();
-		AptPlugin.getPlugin().getLog().removeLogListener(_logListener);
-		_logListener = null;
-	}
-	
-	public void testAptUtil() throws Exception {
-		IJavaProject jproj = env.getJavaProject( getProjectName() );
-		
-		// Check getting a known annotation
-		AnnotationProcessorFactory factory = 
-			AptUtil.getFactoryForAnnotation(HelloWorldAnnotation.class.getName(), jproj);
-		assertEquals(factory.getClass(), HelloWorldAnnotationProcessorFactory.class);
-		
-		// Check getting an annotation with a wildcard
-		factory = 
-			AptUtil.getFactoryForAnnotation(HelloWorldAnnotation.class.getName() + "qwerty", jproj); //$NON-NLS-1$
-		assertEquals(factory.getClass(), HelloWorldWildcardAnnotationProcessorFactory.class);
-	}
-	
-	public void testMessagerAPI() throws Exception {
-		IProject project = env.getProject( getProjectName() );
-		IPath srcRoot = getSourcePath();
-		IPath code = env.addClass(srcRoot, MessagerCodeExample.CODE_PACKAGE, MessagerCodeExample.CODE_CLASS_NAME, MessagerCodeExample.CODE1);
-		Problem prob1 = new Problem("", MessagerAnnotationProcessor.PROBLEM_TEXT_WARNING, code, //$NON-NLS-1$ 
-				MessagerCodeExample.WARNING_START,
-				MessagerCodeExample.WARNING_END); 
-		Problem prob2 = new Problem("", MessagerAnnotationProcessor.PROBLEM_TEXT_ERROR, code, //$NON-NLS-1$
-				MessagerCodeExample.ERROR_START,
-				MessagerCodeExample.ERROR_END); 
-		Problem[] problems = new Problem[] { prob1, prob2 };
-		
-		// Code example with info, warning, and error messages
-		_logListener.clear();
-		fullBuild( project.getFullPath() );
-		expectingOnlySpecificProblemsFor(code, problems, true);
-		checkMessagerAnnotationLogEntry(
-				MessagerAnnotationProcessor.PROBLEM_TEXT_INFO, 
-				MessagerCodeExample.INFO_START,
-				MessagerCodeExample.INFO_END);
-
-		// Code example with info and warning messages
-		env.removeClass(code, MessagerCodeExample.CODE_CLASS_NAME);
-		code = env.addClass(srcRoot, MessagerCodeExample.CODE_PACKAGE, MessagerCodeExample.CODE_CLASS_NAME, MessagerCodeExample.CODE2);
-		_logListener.clear();
-		fullBuild( project.getFullPath() );
-		problems = new Problem[] { prob1 };
-		expectingOnlySpecificProblemsFor(code, problems, true);
-		checkMessagerAnnotationLogEntry(
-				MessagerAnnotationProcessor.PROBLEM_TEXT_INFO, 
-				MessagerCodeExample.INFO_START,
-				MessagerCodeExample.INFO_END);
-		
-		// Code example with only a warning message
-		env.removeClass(code, MessagerCodeExample.CODE_CLASS_NAME);
-		code = env.addClass(srcRoot, MessagerCodeExample.CODE_PACKAGE, MessagerCodeExample.CODE_CLASS_NAME, MessagerCodeExample.CODE3);
-		_logListener.clear();
-		fullBuild( project.getFullPath() );
-		expectingNoProblems();
-		checkMessagerAnnotationLogEntry(
-				MessagerAnnotationProcessor.PROBLEM_TEXT_INFO, 
-				MessagerCodeExample.INFO_START,
-				MessagerCodeExample.INFO_END);
-		
-		// Code example with no problems
-		env.removeClass(code, MessagerCodeExample.CODE_CLASS_NAME);
-		code = env.addClass(srcRoot, MessagerCodeExample.CODE_PACKAGE, MessagerCodeExample.CODE_CLASS_NAME, MessagerCodeExample.CODE4);
-		_logListener.clear();
-		fullBuild( project.getFullPath() );
-		expectingNoProblems();
-		assertTrue(_logListener.getList().isEmpty());
-	}
-	
-	/**
-	 * Check that there are exactly [targetCount] messages in the log that contain
-	 * [targetMsg] and also contain "starting offset=[start]; ending offset=[end]".
-	 */
-	private void checkMessagerAnnotationLogEntry(String targetMsg, int start, int end) {
-		int count = 0;
-		final String offsetMsg = "starting offset=" + start + "; ending offset=" + end;
-		for (IStatus status : _logListener.getList()) {
-			String logMessage = status.getMessage();
-			if (logMessage.contains(targetMsg) && logMessage.contains(offsetMsg)) {
-				++count;
-			}
-		}
-		assertEquals(1, count);
-	}
-	
-	/** 
-	 * Verifies that the given element has specifics problems and
-	 * only the given problems.
-	 * @see Tests#expectingOnlySpecificProblemsFor(IPath, Problem[]), and
-	 * @see Tests#expectingSpecificProblemsFor(IPath, Problem[], boolean).
-	 * Unfortunately this variant isn't implemented there.
-	 */
-	protected void expectingOnlySpecificProblemsFor(IPath root, Problem[] expectedProblems, boolean storeRange) {
-		if (DEBUG)
-			printProblemsFor(root);
-
-		Problem[] rootProblems = env.getProblemsFor(root, storeRange);
-	
-		for (int i = 0; i < expectedProblems.length; i++) {
-			Problem expectedProblem = expectedProblems[i];
-			boolean found = false;
-			for (int j = 0; j < rootProblems.length; j++) {
-				if(expectedProblem.equals(rootProblems[j])) {
-					found = true;
-					rootProblems[j] = null;
-					break;
-				}
-			}
-			if (!found) {
-				printProblemsFor(root);
-			}
-			assertTrue("problem not found: " + expectedProblem.toString(), found); //$NON-NLS-1$
-		}
-		for (int i = 0; i < rootProblems.length; i++) {
-			if(rootProblems[i] != null) {
-				printProblemsFor(root);
-				assertTrue("unexpected problem: " + rootProblems[i].toString(), false); //$NON-NLS-1$
-			}
-		}
-	}
-
-	
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/APTTestBase.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/APTTestBase.java
deleted file mode 100644
index 2e2fd5a..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/APTTestBase.java
+++ /dev/null
@@ -1,241 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    tyeung@bea.com - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jdt.apt.tests;
-
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-
-import org.eclipse.jdt.apt.core.AptPlugin;
-import org.eclipse.jdt.apt.core.util.AptConfig;
-import org.eclipse.jdt.apt.tests.annotations.ProcessorTestStatus;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.tests.builder.Tests;
-import org.eclipse.jdt.core.tests.util.Util;
-
-/** 
- * Setup a project for common APT testing.
- */
-public abstract class APTTestBase extends Tests{
-	
-	public APTTestBase(final String name)
-	{
-		super(name);
-	}
-	
-	/**
-	 * Set up a basic project with the following properties.
-	 * - java compliances level is 1.5  
-	 * - 'src' is the source folder
-	 * - 'bin' is the output folder	  
-	 * - add java class library into teh build class path
-	 * - create and add an annotation jar.
-	 */
-	public void setUp() throws Exception
-	{	
-		runFinalizers();
-		ProcessorTestStatus.reset();
-		
-		super.setUp();
-
-		env.resetWorkspace();
-		TestUtil.enableAutoBuild(false);
-
-		// project will be deleted by super-class's tearDown() method
-		final String projectName = getProjectName();
-		if( projectName == null )
-			throw new IllegalStateException();
-		IJavaProject jproj = createJavaProject(projectName);
-		AptConfig.setEnabled(jproj, true);
-	}
-	
-	/**
-	 * Create a java project with java libraries and test annotations on classpath
-	 * (compiler level is 1.5). Use "src" as source folder and "bin" as output folder.
-	 * APT is not enabled.
-	 * 
-	 * @param projectName
-	 * @return a java project that has been added to the current workspace.
-	 * @throws Exception
-	 */
-	protected IJavaProject createJavaProject(final String projectName )
-		throws Exception
-	{
-		IPath projectPath = env.addProject( projectName, "1.5" );
-		env.addExternalJars( projectPath, Util.getJavaClassLibs() );
-		// remove old package fragment root so that names don't collide
-		env.removePackageFragmentRoot( projectPath, "" ); //$NON-NLS-1$
-		env.addPackageFragmentRoot( projectPath, "src" ); //$NON-NLS-1$
-		env.setOutputFolder( projectPath, "bin" ); //$NON-NLS-1$
-		final IJavaProject javaProj = env.getJavaProject( projectPath );
-		TestUtil.createAndAddAnnotationJar( javaProj );
-		return javaProj;
-	}
-	
-	protected void tearDown()
-		throws Exception
-	{
-		AptPlugin.trace("Tearing down " + getProjectName() );
-		runFinalizers();
-		super.tearDown();
-	}
-	
-	private static void runFinalizers() {
-        // GC in an attempt to release file lock on Classes.jar
-		System.gc();
-		System.runFinalization();
-		System.gc();
-		System.runFinalization();
-	}
-	
-	public String getProjectName()
-	{
-		return this.getClass().getName() + "Project"; //$NON-NLS-1$
-	}
-
-	public IPath getSourcePath()
-	{
-		IProject project = env.getProject( getProjectName() );
-		IFolder srcFolder = project.getFolder( "src" ); //$NON-NLS-1$
-		IPath srcRoot = srcFolder.getFullPath();
-		return srcRoot;
-	}
-	
-	private String concate(String[] messages){
-		final int len = messages == null ? 0 : messages.length;
-		StringBuilder buffer = new StringBuilder();
-		for(int i=0; i<len; i++ ){
-			buffer.append(messages[i]);
-			buffer.append('\n');
-		}
-		return buffer.toString();
-	}
-	
-	private String concate(IMarker[] markers){
-		final int len = markers == null ? 0 : markers.length;
-		StringBuilder buffer = new StringBuilder();
-		for(int i=0; i<len; i++ ){
-			try{
-				buffer.append(markers[i].getAttribute(IMarker.MESSAGE));
-			}
-			catch(CoreException ce){
-				assertTrue("unexpected core exception" + ce.getMessage(), false); //$NON-NLS-1$
-			}
-			buffer.append('\n');
-		}
-		return buffer.toString();
-	}
-	
-	protected void expectingMarkers(String[] messages)
-	{	
-		final IMarker[] markers = getAllAPTMarkers(env.getWorkspaceRootPath());
-		final Set<String> expectedMessages = new HashSet<String>();
-		for(String msg : messages ){
-			expectedMessages.add(msg);
-		}
-		boolean fail = false;
-		try{
-			for( IMarker marker : markers ){
-				final String markerMsg = (String)marker.getAttribute(IMarker.MESSAGE);
-				if( expectedMessages.contains(markerMsg) )
-					expectedMessages.remove(markerMsg);
-				else{
-					fail = true;
-					break;
-				}
-			}
-			if( !expectedMessages.isEmpty() )
-				fail = true;
-		}catch(CoreException ce){
-			assertTrue("unexpected core exception" + ce.getMessage(), false); //$NON-NLS-1$
-		}
-		if( fail )
-			assertEquals(concate(messages), concate(markers));
-	}
-	
-	protected void expectingNoMarkers() {
-		expectingNoMarkers(env.getWorkspaceRootPath());
-	}
-	
-	protected void expectingNoMarkers(IPath path)
-	{
-		final IMarker[] markers = getAllAPTMarkers(path);
-		
-		if( markers != null && markers.length != 0 ){
-			try{
-				assertTrue("unexpected marker(s) : " + markers[0].getAttribute(IMarker.MESSAGE), false); //$NON-NLS-1$
-			}
-			catch(CoreException ce){
-				assertTrue("unexpected core exception" + ce.getMessage(), false); //$NON-NLS-1$
-			}
-		}
-	}
-	
-	@SuppressWarnings("unchecked")
-	protected IMarker[] getAllAPTMarkers(IPath path){
-		IResource resource;
-		if(path.equals(env.getWorkspaceRootPath())){
-			resource = env.getWorkspace().getRoot();
-		} else {
-			IProject p = env.getProject(path);
-			if(p != null && path.equals(p.getFullPath())) {
-				resource = env.getProject(path.lastSegment());
-			} else if(path.getFileExtension() == null) {
-				resource = env.getWorkspace().getRoot().getFolder(path);
-			} else {
-				resource = env.getWorkspace().getRoot().getFile(path);
-			}
-		}
-		try {
-			IMarker[] markers = null;
-			int total = 0;
-			final IMarker[] processorMarkers = resource.findMarkers(AptPlugin.APT_PROCESSOR_PROBLEM_MARKER, true, IResource.DEPTH_INFINITE);
-			total = processorMarkers.length;
-			markers = processorMarkers;
-				
-			final IMarker[] factoryPathMarkers = resource.findMarkers(AptPlugin.APT_BUILD_PROBLEM_MARKER, true, IResource.DEPTH_INFINITE);			
-			if( factoryPathMarkers.length != 0 ){
-				if( total != 0 ){
-					final int len = factoryPathMarkers.length;
-					final IMarker[] temp = new IMarker[len + total ];
-					System.arraycopy(markers, 0, temp, 0, total);
-					System.arraycopy(factoryPathMarkers, 0, temp, total, len);
-					markers = temp;
-					total += len;
-				}
-				else
-					markers = factoryPathMarkers;
-			}
-			final IMarker[] configMarkers = resource.findMarkers(AptPlugin.APT_CONFIG_PROBLEM_MARKER, true, IResource.DEPTH_INFINITE);			
-			if( configMarkers.length != 0 ){
-				if( total != 0 ){
-					final int len = configMarkers.length;
-					final IMarker[] temp = new IMarker[len + total];
-					System.arraycopy(markers, 0, temp, 0, total);
-					System.arraycopy(configMarkers, 0, temp, total, len);
-					markers = temp;
-					total += len;
-				}
-				else
-					markers = configMarkers;
-			}
-			return markers;
-		} catch(CoreException e){
-			return null;
-		}
-	}
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/AnnotationValueConversionTests.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/AnnotationValueConversionTests.java
deleted file mode 100644
index 5d5d75b..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/AnnotationValueConversionTests.java
+++ /dev/null
@@ -1,818 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    tyeung@bea.com - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jdt.apt.tests;
-
-import junit.framework.Test;
-import junit.framework.TestSuite;
-
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jdt.apt.tests.annotations.ProcessorTestStatus;
-import org.eclipse.jdt.core.tests.builder.Problem;
-import org.eclipse.jdt.core.tests.util.Util;
-
-public class AnnotationValueConversionTests extends APTTestBase 
-{
-	private int counter = 0;
-	private String projectName = null;
-	public AnnotationValueConversionTests(final String name) {
-		super( name );
-	}
-
-	public static Test suite() {
-		return new TestSuite( AnnotationValueConversionTests.class );
-	}
-	
-	public String getUniqueProjectName(){
-		projectName = AnnotationValueConversionTests.class.getName() + "Project" + counter; //$NON-NLS-1$
-		counter ++;
-		return projectName;
-	}
-	
-
-	public IPath getSourcePath() {
-		IProject project = env.getProject( getProjectName() );
-		IFolder srcFolder = project.getFolder( "src" ); //$NON-NLS-1$
-		IPath srcRoot = srcFolder.getFullPath();
-		return srcRoot;
-	}
-	
-	public IPath getBinaryPath(){
-		IProject project = env.getProject( getProjectName() );
-		IFolder srcFolder = project.getFolder( "binary" ); //$NON-NLS-1$
-		IPath lib = srcFolder.getFullPath();
-		return lib;
-	}
-	
-	public IPath getOutputPath(){
-		IProject project = env.getProject( getProjectName() );
-		IFolder binFolder = project.getFolder( "bin" ); //$NON-NLS-1$
-		IPath bin = binFolder.getFullPath();
-		return bin;
-	}
-	
-	private IProject setupTest() throws Exception
-	{				
-		ProcessorTestStatus.reset();
-		// project will be deleted by super-class's tearDown() method
-		IPath projectPath = env.addProject( getUniqueProjectName(), "1.5" ); //$NON-NLS-1$
-		env.setOutputFolder(projectPath, "bin"); //$NON-NLS-1$ 
-		env.addExternalJars( projectPath, Util.getJavaClassLibs() );
-		fullBuild( projectPath );
-
-		// remove old package fragment root so that names don't collide
-		env.removePackageFragmentRoot( projectPath, "" ); //$NON-NLS-1$
-
-		env.addPackageFragmentRoot( projectPath, "src" ); //$NON-NLS-1$
-		return env.getProject(getProjectName());
-	}
-	
-	@SuppressWarnings("nls")
-	public void testByteConversion() throws Exception {
-		// reset the error reset the error;
-		IProject project = setupTest();	
-		IPath srcRoot = getSourcePath();		
-		String content =  
-			"package sample; \n\n" + 
-			"import org.eclipse.jdt.apt.tests.annotations.valueconversion.Annotation;\n" +
-			"@Annotation(z=(byte)49,\n" +
-			"				  b=(byte)49,\n" +
-			"				  s=(byte)49,\n" + 
-			"				  i=(byte)49,\n" +
-			"                 l=(byte)49,\n" +
-			"	 	 	      f=(byte)49,\n" +
-			"			      d=(byte)49,\n" +
-			"				  c=(byte)49)\n\n" + 
-			"public class Test {}\n";
-		
-		IPath testPath = env.addClass( srcRoot, "sample", "Test", content );
-		fullBuild( project.getFullPath() );
-		expectingSpecificProblemsFor(testPath, new Problem[]{
-				new Problem("", "Type mismatch: cannot convert from byte to boolean", testPath),
-				new Problem("", "type mismatch for memeber z expected java.lang.Boolean but got java.lang.Byte", testPath)
-		});
-		
-		assertEquals(ProcessorTestStatus.NO_ERRORS, ProcessorTestStatus.getErrors());
-	}
-	
-	@SuppressWarnings("nls")
-	public void testByteConversion_Reflection() throws Exception {
-		IProject project = setupTest();	
-		IPath srcRoot = getSourcePath();		
-		String content =  
-			"package sample; \n\n" + 
-			"import org.eclipse.jdt.apt.tests.annotations.valueconversion.RefAnnotation;\n" +
-			"@RefAnnotation(z=(byte)49,\n" +
-			"				  b=(byte)49,\n" +
-			"				  s=(byte)49,\n" + 
-			"				  i=(byte)49,\n" +
-			"                 l=(byte)49,\n" +
-			"	 	 	      f=(byte)49,\n" +
-			"			      d=(byte)49,\n" +
-			"				  c=(byte)49)\n\n" + 
-			"public class Test {}\n";
-		
-		IPath testPath = env.addClass( srcRoot, "sample", "Test", content );
-		fullBuild( project.getFullPath() );
-		expectingSpecificProblemsFor(testPath, new Problem[]{
-				new Problem("", "Type mismatch: cannot convert from byte to boolean", testPath),
-				new Problem("", "value mismatch for memeber z expected true but got false", testPath)
-		});
-		
-		assertEquals(ProcessorTestStatus.NO_ERRORS, ProcessorTestStatus.getErrors());
-	}
-	
-	/**
-	 * Test conversion on short. 
-	 * @throws Exception
-	 */
-	@SuppressWarnings("nls")
-	public void testShortConversion() throws Exception {
-		// reset the error reset the error;
-		IProject project = setupTest();	
-		IPath srcRoot = getSourcePath();		
-		
-		String content =  
-			"package sample; \n\n" + 
-			"import org.eclipse.jdt.apt.tests.annotations.valueconversion.Annotation;\n" +
-			"@Annotation(z=(short)49,\n" +
-			"				  b=(short)49,\n" +
-			"				  s=(short)49,\n" + 
-			"				  i=(short)49,\n" +
-			"                 l=(short)49,\n" +
-			"	 	 	      f=(short)49,\n" +
-			"			      d=(short)49,\n" +
-			"				  c=(short)49)\n\n" + 
-			"public class Test {}\n";
-		
-		IPath testPath = env.addClass( srcRoot, "sample", "Test", content );
-		fullBuild( project.getFullPath() );
-		expectingSpecificProblemsFor(testPath, new Problem[]{
-				new Problem("", "Type mismatch: cannot convert from short to boolean", testPath),
-				new Problem("", "type mismatch for memeber z expected java.lang.Boolean but got java.lang.Short", testPath)
-		});
-		
-		assertEquals(ProcessorTestStatus.NO_ERRORS, ProcessorTestStatus.getErrors());
-	}
-	
-	@SuppressWarnings("nls")
-	public void testShortConversion_Reflection() throws Exception {
-		// reset the error reset the error;
-		IProject project = setupTest();	
-		IPath srcRoot = getSourcePath();		
-		
-		String content =  
-			"package sample; \n\n" + 
-			"import org.eclipse.jdt.apt.tests.annotations.valueconversion.RefAnnotation;\n" +
-			"@RefAnnotation(z=(short)49,\n"+
-			"				  b=(short)49,\n" +
-			"				  s=(short)49,\n" + 
-			"				  i=(short)49,\n" +
-			"                 l=(short)49,\n" +
-			"	 	 	      f=(short)49,\n" +
-			"			      d=(short)49,\n" +
-			"				  c=(short)49)\n\n" + 
-			"public class Test {}\n";
-		
-		IPath testPath = env.addClass( srcRoot, "sample", "Test", content );
-		fullBuild( project.getFullPath() );
-		expectingSpecificProblemsFor(testPath, new Problem[]{
-				new Problem("", "Type mismatch: cannot convert from short to boolean", testPath),
-				new Problem("", "value mismatch for memeber z expected true but got false", testPath)
-		});
-		
-		assertEquals(ProcessorTestStatus.NO_ERRORS, ProcessorTestStatus.getErrors());
-	}
-	
-	/**
-	 * Test conversion on char. 
-	 * @throws Exception
-	 */
-	@SuppressWarnings("nls")
-	public void testCharConversion() throws Exception {
-		// reset the error reset the error;
-		IProject project = setupTest();	
-		IPath srcRoot = getSourcePath();		
-		
-		String content =  
-			"package sample; \n\n" + 
-			"import org.eclipse.jdt.apt.tests.annotations.valueconversion.Annotation;\n" +
-			"@Annotation(z='1',\n" +
-			"                 b='1',\n" +
-			"				  s='1',\n" + 
-			"				  i='1',\n" +
-			"                 l='1',\n" +
-			"	 	 	      f='1',\n" +
-			"			      d='1',\n" +
-			"				  c='1')\n\n" + 
-			"public class Test {}\n";
-		
-		IPath testPath = env.addClass( srcRoot, "sample", "Test", content );
-		fullBuild( project.getFullPath() );
-		expectingSpecificProblemsFor(testPath, new Problem[]{
-				new Problem("", "Type mismatch: cannot convert from char to boolean", testPath),
-				new Problem("", "type mismatch for memeber z expected java.lang.Boolean but got java.lang.Character", testPath)
-		});
-		
-		assertEquals(ProcessorTestStatus.NO_ERRORS, ProcessorTestStatus.getErrors());
-	}
-	
-	/**
-	 * Test conversion on char through reflection
-	 * @throws Exception
-	 */
-	@SuppressWarnings("nls")
-	public void testCharConversion_Reflection() throws Exception {
-		// reset the error reset the error;
-		IProject project = setupTest();	
-		IPath srcRoot = getSourcePath();		
-		
-		String content =  
-			"package sample; \n\n" + 
-			"import org.eclipse.jdt.apt.tests.annotations.valueconversion.RefAnnotation;\n" +
-			"@RefAnnotation(z='1',\n" +
-			"				  b='1',\n" +
-			"				  s='1',\n" + 
-			"				  i='1',\n" +
-			"                 l='1',\n" +
-			"	 	 	      f='1',\n" +
-			"			      d='1',\n" +
-			"				  c='1')\n\n" + 
-			"public class Test {}\n";
-		
-		IPath testPath = env.addClass( srcRoot, "sample", "Test", content );
-		fullBuild( project.getFullPath() );
-		expectingSpecificProblemsFor(testPath, new Problem[]{
-				new Problem("", "Type mismatch: cannot convert from char to boolean", testPath),
-				new Problem("", "value mismatch for memeber z expected true but got false", testPath)
-		});
-		
-		assertEquals(ProcessorTestStatus.NO_ERRORS, ProcessorTestStatus.getErrors());
-	}
-	
-	/**
-	 * Test conversion on int. 
-	 * @throws Exception
-	 */
-	@SuppressWarnings("nls")
-	public void testIntConversion() throws Exception {
-		// reset the error reset the error;
-		IProject project = setupTest();	
-		IPath srcRoot = getSourcePath();		
-		
-		String content =  
-			"package sample; \n\n" + 
-			"import org.eclipse.jdt.apt.tests.annotations.valueconversion.Annotation;\n" +
-			"@Annotation(z=49,\n" +
-			"				  b=49,\n" +
-			"				  s=49,\n" + 
-			"				  i=49,\n" +
-			"                 l=49,\n" +
-			"	 	 	      f=49,\n" +
-			"			      d=49,\n" +
-			"				  c=49)\n\n" + 
-			"public class Test {}\n";
-		
-		IPath testPath = env.addClass( srcRoot, "sample", "Test", content );
-		fullBuild( project.getFullPath() );
-		expectingSpecificProblemsFor(testPath, new Problem[]{
-				new Problem("", "Type mismatch: cannot convert from int to boolean", testPath),
-				new Problem("", "type mismatch for memeber z expected java.lang.Boolean but got java.lang.Integer", testPath)
-		});
-		
-		assertEquals(ProcessorTestStatus.NO_ERRORS, ProcessorTestStatus.getErrors());
-	}
-	
-	/**
-	 * Test conversion on int through reflection
-	 * @throws Exception
-	 */
-	@SuppressWarnings("nls")
-	public void testIntConversion_Reflection() throws Exception {
-		// reset the error reset the error;
-		IProject project = setupTest();	
-		IPath srcRoot = getSourcePath();		
-		
-		String content =  
-			"package sample; \n\n" + 
-			"import org.eclipse.jdt.apt.tests.annotations.valueconversion.RefAnnotation;\n" +
-			"@RefAnnotation(z=49,\n" +
-			"				  b=49,\n" +
-			"				  s=49,\n" + 
-			"				  i=49,\n" +
-			"                 l=49,\n" +
-			"	 	 	      f=49,\n" +
-			"			      d=49,\n" +
-			"				  c=49)\n\n" + 
-			"public class Test {}\n";
-		
-		IPath testPath = env.addClass( srcRoot, "sample", "Test", content );
-		fullBuild( project.getFullPath() );
-		expectingSpecificProblemsFor(testPath, new Problem[]{
-				new Problem("", "Type mismatch: cannot convert from int to boolean", testPath),
-				new Problem("", "value mismatch for memeber z expected true but got false", testPath)
-		});
-		
-		assertEquals(ProcessorTestStatus.NO_ERRORS, ProcessorTestStatus.getErrors());
-	}
-	
-	/**
-	 * Test conversion on long. 
-	 * @throws Exception
-	 */
-	@SuppressWarnings("nls")
-	public void testLongConversion() throws Exception {
-		// reset the error reset the error;
-		IProject project = setupTest();	
-		IPath srcRoot = getSourcePath();		
-		
-		String content =  
-			"package sample; \n\n" + 
-			"import org.eclipse.jdt.apt.tests.annotations.valueconversion.Annotation;\n" +
-			"@Annotation(z=49l,\n" +
-			"				  c=49l,\n" +
-			"				  b=49l,\n" +
-			"				  s=49l,\n" + 
-			"				  i=49l,\n" +
-			"				  l=49l,\n" +			
-			"	 	 	      f=49l,\n" +
-			"			      d=49l)\n" +
-			"public class Test {}\n";
-		
-		IPath testPath = env.addClass( srcRoot, "sample", "Test", content );
-		fullBuild( project.getFullPath() );
-		expectingSpecificProblemsFor(testPath, new Problem[]{
-				new Problem("", "Type mismatch: cannot convert from long to boolean", testPath),
-				new Problem("", "Type mismatch: cannot convert from long to char", testPath),
-				new Problem("", "Type mismatch: cannot convert from long to byte", testPath),
-				new Problem("", "Type mismatch: cannot convert from long to short", testPath),
-				new Problem("", "Type mismatch: cannot convert from long to int", testPath),
-				new Problem("", "type mismatch for memeber z expected java.lang.Boolean but got java.lang.Long", testPath),
-				new Problem("", "type mismatch for memeber s expected java.lang.Short but got java.lang.Long", testPath),
-				new Problem("", "type mismatch for memeber i expected java.lang.Integer but got java.lang.Long", testPath),
-				new Problem("", "type mismatch for memeber c expected java.lang.Character but got java.lang.Long", testPath),
-				new Problem("", "type mismatch for memeber b expected java.lang.Byte but got java.lang.Long", testPath),
-		});
-		
-		assertEquals(ProcessorTestStatus.NO_ERRORS, ProcessorTestStatus.getErrors());
-	}
-	
-	/**
-	 * Test conversion on long. 
-	 * @throws Exception
-	 */
-	@SuppressWarnings("nls")
-	public void testLongConversion_Reflection() throws Exception {
-		// reset the error reset the error;
-		IProject project = setupTest();	
-		IPath srcRoot = getSourcePath();		
-		
-		String content =  
-			"package sample; \n\n" + 
-			"import org.eclipse.jdt.apt.tests.annotations.valueconversion.RefAnnotation;\n" +
-			"@RefAnnotation(z=49l,\n" +
-			"				  c=49l,\n" +
-			"				  b=49l,\n" +
-			"				  s=49l,\n" + 
-			"				  i=49l,\n" +
-			"				  l=49l,\n" +			
-			"	 	 	      f=49l,\n" +
-			"			      d=49l)\n" +
-			"public class Test {}\n";
-		
-		IPath testPath = env.addClass( srcRoot, "sample", "Test", content );
-		fullBuild( project.getFullPath() );
-		expectingSpecificProblemsFor(testPath, new Problem[]{
-				new Problem("", "Type mismatch: cannot convert from long to boolean", testPath),
-				new Problem("", "Type mismatch: cannot convert from long to char", testPath),
-				new Problem("", "Type mismatch: cannot convert from long to byte", testPath),
-				new Problem("", "Type mismatch: cannot convert from long to short", testPath),
-				new Problem("", "Type mismatch: cannot convert from long to int", testPath),
-				new Problem("", "value mismatch for memeber z expected true but got false", testPath),
-				new Problem("", "value mismatch for memeber s expected 49 but got 0", testPath),
-				new Problem("", "value mismatch for memeber i expected 49 but got 0", testPath),
-				new Problem("", "value mismatch for memeber c expected 1 but got 0", testPath),
-				new Problem("", "value mismatch for memeber b expected 49 but got 0", testPath),
-		});
-		
-		assertEquals(ProcessorTestStatus.NO_ERRORS, ProcessorTestStatus.getErrors());
-	}
-	
-	/**
-	 * Test conversion on Float. 
-	 * @throws Exception
-	 */
-	@SuppressWarnings("nls")
-	public void testFloatConversion() throws Exception {
-		// reset the error reset the error;
-		IProject project = setupTest();	
-		IPath srcRoot = getSourcePath();		
-		
-		String content =  
-			"package sample; \n\n" + 
-			"import org.eclipse.jdt.apt.tests.annotations.valueconversion.Annotation;\n" +
-			"@Annotation(z=49f,\n" +
-			"				  c=49f,\n" +
-			"				  b=49f,\n" +
-			"				  s=49f,\n" + 
-			"				  i=49f,\n" +
-			"				  l=49f,\n" +	
-			"				  f=49f,\n" +
-			"			      d=49f)\n" +
-			"public class Test {}\n";
-		
-		IPath testPath = env.addClass( 
-				srcRoot, 
-				"sample", 
-				"Test",
-				content );
-		fullBuild( project.getFullPath() );
-		expectingSpecificProblemsFor(testPath, new Problem[]{
-				new Problem("", "Type mismatch: cannot convert from float to boolean", testPath),
-				new Problem("", "Type mismatch: cannot convert from float to int", testPath),
-				new Problem("", "Type mismatch: cannot convert from float to long", testPath),
-				new Problem("", "Type mismatch: cannot convert from float to char", testPath),
-				new Problem("", "Type mismatch: cannot convert from float to byte", testPath),
-				new Problem("", "Type mismatch: cannot convert from float to short", testPath),
-				new Problem("", "type mismatch for memeber z expected java.lang.Boolean but got java.lang.Float", testPath),
-				new Problem("", "type mismatch for memeber s expected java.lang.Short but got java.lang.Float", testPath),
-				new Problem("", "type mismatch for memeber i expected java.lang.Integer but got java.lang.Float", testPath),
-				new Problem("", "type mismatch for memeber c expected java.lang.Character but got java.lang.Float", testPath),
-				new Problem("", "type mismatch for memeber b expected java.lang.Byte but got java.lang.Float", testPath),
-				new Problem("", "type mismatch for memeber l expected java.lang.Long but got java.lang.Float", testPath),
-		});		
-		
-		assertEquals(ProcessorTestStatus.NO_ERRORS, ProcessorTestStatus.getErrors());
-	}
-	
-	/**
-	 * Test conversion on Float. 
-	 * @throws Exception
-	 */
-	@SuppressWarnings("nls")
-	public void testFloatConversion_Reflection() throws Exception {
-		// reset the error reset the error;
-		IProject project = setupTest();	
-		IPath srcRoot = getSourcePath();		
-		
-		String content =  
-			"package sample; \n\n" + 
-			"import org.eclipse.jdt.apt.tests.annotations.valueconversion.RefAnnotation;\n" +
-			"@RefAnnotation(z=49f,\n" +
-			"				  c=49f,\n" +
-			"				  b=49f,\n" +
-			"				  s=49f,\n" + 
-			"				  i=49f,\n" +
-			"				  l=49f,\n" +	
-			"				  f=49f,\n" +
-			"			      d=49f)\n" +
-			"public class Test {}\n";
-		
-		IPath testPath = env.addClass( 
-				srcRoot, 
-				"sample", 
-				"Test",
-				content );
-		fullBuild( project.getFullPath() );
-		expectingSpecificProblemsFor(testPath, new Problem[]{
-				new Problem("", "Type mismatch: cannot convert from float to boolean", testPath),
-				new Problem("", "Type mismatch: cannot convert from float to int", testPath),
-				new Problem("", "Type mismatch: cannot convert from float to long", testPath),
-				new Problem("", "Type mismatch: cannot convert from float to char", testPath),
-				new Problem("", "Type mismatch: cannot convert from float to byte", testPath),
-				new Problem("", "Type mismatch: cannot convert from float to short", testPath),
-				new Problem("", "value mismatch for memeber z expected true but got false", testPath),
-				new Problem("", "value mismatch for memeber s expected 49 but got 0", testPath),
-				new Problem("", "value mismatch for memeber i expected 49 but got 0", testPath),
-				new Problem("", "value mismatch for memeber c expected 1 but got 0", testPath),
-				new Problem("", "value mismatch for memeber b expected 49 but got 0", testPath),
-				new Problem("", "value mismatch for memeber l expected 49 but got 0", testPath),
-		});		
-		
-		assertEquals(ProcessorTestStatus.NO_ERRORS, ProcessorTestStatus.getErrors());
-	}
-	
-	/**
-	 * Test conversion on double. No arrayification.
-	 * @throws Exception
-	 */
-	@SuppressWarnings("nls")
-	public void testDoubleConversion() throws Exception {
-		// reset the error reset the error;
-		IProject project = setupTest();	
-		IPath srcRoot = getSourcePath();		
-		
-		String content =  
-			"package sample; \n\n" + 
-			"import org.eclipse.jdt.apt.tests.annotations.valueconversion.Annotation;\n" +
-			"@Annotation(z=49d," +
-			"				  c=49d,\n" +
-			"				  b=49d,\n" +
-			"				  s=49d,\n" + 
-			"				  i=49d,\n" +
-			"				  l=49d,\n" +	
-			"				  f=49d,\n" +
-			"			      d=49d)\n" +
-			"public class Test {}\n";
-		
-		IPath testPath = env.addClass(srcRoot, "sample", "Test", content );
-		fullBuild( project.getFullPath() );
-		expectingSpecificProblemsFor(testPath, new Problem[]{
-				new Problem("", "Type mismatch: cannot convert from double to boolean", testPath),
-				new Problem("", "Type mismatch: cannot convert from double to int", testPath),
-				new Problem("", "Type mismatch: cannot convert from double to long", testPath),
-				new Problem("", "Type mismatch: cannot convert from double to char", testPath),
-				new Problem("", "Type mismatch: cannot convert from double to byte", testPath),
-				new Problem("", "Type mismatch: cannot convert from double to short", testPath),
-				new Problem("", "Type mismatch: cannot convert from double to float", testPath),
-				new Problem("", "type mismatch for memeber z expected java.lang.Boolean but got java.lang.Double", testPath),
-				new Problem("", "type mismatch for memeber s expected java.lang.Short but got java.lang.Double", testPath),
-				new Problem("", "type mismatch for memeber i expected java.lang.Integer but got java.lang.Double", testPath),
-				new Problem("", "type mismatch for memeber c expected java.lang.Character but got java.lang.Double", testPath),
-				new Problem("", "type mismatch for memeber b expected java.lang.Byte but got java.lang.Double", testPath),
-				new Problem("", "type mismatch for memeber l expected java.lang.Long but got java.lang.Double", testPath),
-				new Problem("", "type mismatch for memeber f expected java.lang.Float but got java.lang.Double", testPath)
-		});
-		
-		assertEquals(ProcessorTestStatus.NO_ERRORS, ProcessorTestStatus.getErrors());
-	}	
-	
-	/**
-	 * Test conversion on double. No arrayification.
-	 * @throws Exception
-	 */
-	@SuppressWarnings("nls")
-	public void testDoubleConversion_Reflection() throws Exception {
-		// reset the error reset the error;
-		IProject project = setupTest();	
-		IPath srcRoot = getSourcePath();		
-		
-		String content =  
-			"package sample; \n\n" + 
-			"import org.eclipse.jdt.apt.tests.annotations.valueconversion.RefAnnotation;\n" +
-			"@RefAnnotation(z=49d,\n" +
-			"				  c=49d,\n" +
-			"				  b=49d,\n" +
-			"				  s=49d,\n" + 
-			"				  i=49d,\n" +
-			"				  l=49d,\n" +	
-			"				  f=49d,\n" +
-			"			      d=49d)\n" +
-			"public class Test {}\n";
-		
-		IPath testPath = env.addClass(srcRoot, "sample", "Test", content );
-		fullBuild( project.getFullPath() );
-		expectingSpecificProblemsFor(testPath, new Problem[]{
-				new Problem("", "Type mismatch: cannot convert from double to boolean", testPath),
-				new Problem("", "Type mismatch: cannot convert from double to int", testPath),
-				new Problem("", "Type mismatch: cannot convert from double to long", testPath),
-				new Problem("", "Type mismatch: cannot convert from double to char", testPath),
-				new Problem("", "Type mismatch: cannot convert from double to byte", testPath),
-				new Problem("", "Type mismatch: cannot convert from double to short", testPath),
-				new Problem("", "Type mismatch: cannot convert from double to float", testPath),
-				new Problem("", "value mismatch for memeber z expected true but got false", testPath),
-				new Problem("", "value mismatch for memeber s expected 49 but got 0", testPath),
-				new Problem("", "value mismatch for memeber i expected 49 but got 0", testPath),
-				new Problem("", "value mismatch for memeber c expected 1 but got 0", testPath),
-				new Problem("", "value mismatch for memeber b expected 49 but got 0", testPath),
-				new Problem("", "value mismatch for memeber l expected 49 but got 0", testPath),
-				new Problem("", "value mismatch for memeber f expected 49.0 but got 0.0", testPath)
-		});
-		
-		assertEquals(ProcessorTestStatus.NO_ERRORS, ProcessorTestStatus.getErrors());
-	}	
-	
-	/**
-	 * Convert "singleton" instance to array of the correct type
-	 * @throws Exception
-	 */
-	@SuppressWarnings("nls")
-	public void testArrayification() throws Exception {
-		// reset the error reset the error;
-		IProject project = setupTest();	
-		IPath srcRoot = getSourcePath();		
-		
-		String content =  
-			"package sample; \n\n" + 
-			"import org.eclipse.jdt.apt.tests.annotations.valueconversion.AnnotationWithArray;\n" +
-			"@AnnotationWithArray(booleans=true,\n" +
-			"				  bytes=(byte)49,\n" +
-			"				  shorts=(short)49,\n" + 
-			"				  ints=49,\n" +
-			"                 longs=49,\n" +
-			"	 	 	      floats=49,\n" +
-			"			      doubles=49,\n" +
-			"				  chars='1')\n\n" + 
-			"public class Test {}\n" ;
-		
-		env.addClass( srcRoot, "sample", "Test", content );
-		fullBuild( project.getFullPath() );
-		expectingNoProblems();
-		
-		assertEquals(ProcessorTestStatus.NO_ERRORS, ProcessorTestStatus.getErrors());
-	}	
-	
-	/**
-	 * Convert "singleton" instance to array of the correct type
-	 * @throws Exception
-	 */
-	@SuppressWarnings("nls")
-	public void testArrayification_Reflection() throws Exception {
-		// reset the error reset the error;
-		IProject project = setupTest();	
-		IPath srcRoot = getSourcePath();		
-		
-		String content =  
-			"package sample; \n\n" + 
-			"import org.eclipse.jdt.apt.tests.annotations.valueconversion.RefAnnotationWithArray;\n" +
-			"@RefAnnotationWithArray(booleans=true,\n" +
-			"				  bytes=(byte)49,\n" +
-			"				  shorts=(short)49,\n" + 
-			"				  ints=49,\n" +
-			"                 longs=49,\n" +
-			"	 	 	      floats=49,\n" +
-			"			      doubles=49,\n" +
-			"				  chars='1')\n\n" + 
-			"public class Test {}\n" ;
-		
-		env.addClass( srcRoot, "sample", "Test", content );
-		fullBuild( project.getFullPath() );
-		expectingNoProblems();
-		
-		assertEquals(ProcessorTestStatus.NO_ERRORS, ProcessorTestStatus.getErrors());
-	}	
-	
-	/**
-	 * Test conversion on array elements.
-	 * @throws Exception
-	 */
-	@SuppressWarnings("nls")
-	public void testArrayElementConversion() throws Exception {
-		// reset the error reset the error;
-		IProject project = setupTest();	
-		IPath srcRoot = getSourcePath();		
-		
-		String content =  
-			"package sample; \n\n" + 
-			"import org.eclipse.jdt.apt.tests.annotations.valueconversion.AnnotationWithArray;\n" +
-			"@AnnotationWithArray(booleans={true, true },\n" +
-			"				  bytes=  {(byte)49, 50}, \n" +
-			"				  shorts= {(byte)49, 50},\n" + 
-			"				  ints=   {(byte)49, 50},\n" +
-			"                 longs=  {(byte)49, 50},\n" +
-			"	 	 	      floats= {(byte)49, 50},\n" +
-			"			      doubles={(byte)49, 50},\n" +
-			"				  chars=  {'1','2'})\n\n" + 
-			"public class Test {}\n";
-		
-		env.addClass( 
-				srcRoot, 
-				"sample", 
-				"Test",
-				content );
-		fullBuild( project.getFullPath() );
-		expectingNoProblems();
-		
-		assertEquals(ProcessorTestStatus.NO_ERRORS, ProcessorTestStatus.getErrors());
-	}	
-	
-	/**
-	 * Test conversion on array elements.
-	 * @throws Exception
-	 */
-	@SuppressWarnings("nls")
-	public void testArrayElementConversion_Reflection() throws Exception {
-		// reset the error reset the error;
-		IProject project = setupTest();	
-		IPath srcRoot = getSourcePath();		
-		
-		String content =  
-			"package sample; \n\n" + 
-			"import org.eclipse.jdt.apt.tests.annotations.valueconversion.RefAnnotationWithArray;\n" +
-			"@RefAnnotationWithArray(booleans={true, true },\n" +
-			"				  bytes=  {(byte)49, 50}, \n" +
-			"				  shorts= {(byte)49, 50},\n" + 
-			"				  ints=   {(byte)49, 50},\n" +
-			"                 longs=  {(byte)49, 50},\n" +
-			"	 	 	      floats= {(byte)49, 50},\n" +
-			"			      doubles={(byte)49, 50},\n" +
-			"				  chars=  {'1','2'})\n\n" + 
-			"public class Test {}\n" ;
-		
-		env.addClass( 
-				srcRoot, 
-				"sample", 
-				"Test",
-				content );
-		fullBuild( project.getFullPath() );
-		expectingNoProblems();
-		
-		assertEquals(ProcessorTestStatus.NO_ERRORS, ProcessorTestStatus.getErrors());
-	}
-	
-	public void testErrorStringValue() throws Exception {
-
-		IProject project = setupTest();	
-		IPath srcRoot = getSourcePath();		
-		
-		String content =  
-			"package sample; \n\n" + 
-			"import org.eclipse.jdt.apt.tests.annotations.valueconversion.AnnotationWithArray;\n" +
-			"@AnnotationWithArray(booleans={true, true },\n" +
-			"				  bytes=  {(byte)49, 50}, \n" +
-			"				  shorts= {(byte)49, 50},\n" + 
-			"				  ints=   {(byte)49, 50},\n" +
-			"                 longs=  {(byte)49, 50},\n" +
-			"	 	 	      floats= {(byte)49, 50},\n" +
-			"			      doubles={(byte)49, 50},\n" +
-			"				  chars=  {'1','2'},\n" +
-			"                 str=true)\n\n" + 
-			"public class Test {}\n";
-		
-		env.addClass( 
-				srcRoot, 
-				"sample", 
-				"Test",
-				content );
-		IPath testPath = env.addClass( srcRoot, "sample", "Test", content );
-		fullBuild( project.getFullPath() );
-		
-		expectingSpecificProblemsFor(testPath, new Problem[]{
-				new Problem("", "Type mismatch: cannot convert from boolean to String", testPath),
-				new Problem("", "type mismatch for memeber str expected java.lang.String but got java.lang.Boolean", testPath)
-		});
-	}
-	
-	public void testErrorStringValue_Reflection() throws Exception {			
-		IProject project = setupTest();	
-		IPath srcRoot = getSourcePath();		
-		
-		String content =  
-			"package sample; \n\n" + 
-			"import org.eclipse.jdt.apt.tests.annotations.valueconversion.RefAnnotationWithArray;\n" +
-			"@RefAnnotationWithArray(booleans={true, true },\n" +
-			"				  bytes=  {(byte)49, 50}, \n" +
-			"				  shorts= {(byte)49, 50},\n" + 
-			"				  ints=   {(byte)49, 50},\n" +
-			"                 longs=  {(byte)49, 50},\n" +
-			"	 	 	      floats= {(byte)49, 50},\n" +
-			"			      doubles={(byte)49, 50},\n" +
-			"				  chars=  {'1','2'},\n" +
-			"                 str=true)\n\n" + 
-			"public class Test {}\n";
-		
-		IPath testPath = env.addClass( srcRoot, "sample", "Test", content );
-		fullBuild( project.getFullPath() );
-		
-		expectingSpecificProblemsFor(testPath, new Problem[]{
-				new Problem("", "Type mismatch: cannot convert from boolean to String", testPath),
-				new Problem("", "value mismatch for memeber str expected string but got null", testPath)
-		});	
-		assertEquals(ProcessorTestStatus.NO_ERRORS, ProcessorTestStatus.getErrors());
-	}
-	
-	@SuppressWarnings("nls")
-	public void testMissingPrimitiveTypeValues_Reflection() throws Exception {
-		// reset the error reset the error;
-		IProject project = setupTest();	
-		IPath srcRoot = getSourcePath();		
-		
-		String content =  
-			"package sample; \n\n" + 
-			"import org.eclipse.jdt.apt.tests.annotations.valueconversion.RefAnnotation;\n" +
-			"@RefAnnotation()\n"+
-			"public class Test {}\n";
-		
-		IPath testPath = env.addClass( srcRoot, "sample", "Test", content );
-		fullBuild( project.getFullPath() );
-		
-		expectingSpecificProblemsFor(testPath, new Problem[]{
-				new Problem("", "The annotation @RefAnnotation must define the attribute z", testPath),
-				new Problem("", "The annotation @RefAnnotation must define the attribute c", testPath),
-				new Problem("", "The annotation @RefAnnotation must define the attribute b", testPath),
-				new Problem("", "The annotation @RefAnnotation must define the attribute s", testPath),
-				new Problem("", "The annotation @RefAnnotation must define the attribute i", testPath),
-				new Problem("", "The annotation @RefAnnotation must define the attribute l", testPath),
-				new Problem("", "The annotation @RefAnnotation must define the attribute f", testPath),
-				new Problem("", "The annotation @RefAnnotation must define the attribute d", testPath),
-				new Problem("", "value mismatch for memeber z expected true but got false", testPath),
-				new Problem("", "value mismatch for memeber s expected 49 but got 0", testPath),
-				new Problem("", "value mismatch for memeber i expected 49 but got 0", testPath),
-				new Problem("", "value mismatch for memeber c expected 1 but got 0", testPath),
-				new Problem("", "value mismatch for memeber b expected 49 but got 0", testPath),
-				new Problem("", "value mismatch for memeber l expected 49 but got 0", testPath),
-				new Problem("", "value mismatch for memeber f expected 49.0 but got 0.0", testPath),
-				new Problem("", "value mismatch for memeber d expected 49.0 but got 0.0", testPath)
-		});	
-		assertEquals(ProcessorTestStatus.NO_ERRORS, ProcessorTestStatus.getErrors());
-	}
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/AptBuilderTests.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/AptBuilderTests.java
deleted file mode 100644
index 4f177de..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/AptBuilderTests.java
+++ /dev/null
@@ -1,623 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    mkaufman@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests;
-
-import junit.framework.Test;
-import junit.framework.TestSuite;
-
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jdt.apt.core.AptPlugin;
-import org.eclipse.jdt.apt.core.internal.generatedfile.GeneratedSourceFolderManager;
-import org.eclipse.jdt.apt.core.util.AptConfig;
-import org.eclipse.jdt.apt.core.util.AptPreferenceConstants;
-import org.eclipse.jdt.core.IClasspathEntry;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.tests.builder.Problem;
-import org.eclipse.jdt.core.tests.util.Util;
-
-public class AptBuilderTests extends APTTestBase
-{
-
-	public AptBuilderTests(String name)
-	{
-		super( name );
-	}
-
-	public static Test suite()
-	{
-		return new TestSuite( AptBuilderTests.class );
-	}
-
-	public void setUp() throws Exception
-	{
-		super.setUp();
-		
-		//
-		// project will be deleted by super-class's tearDown() method
-		// create a project with a src directory as the project root directory
-		//
-		IPath projectPath = env.addProject( getProjectName_ProjectRootAsSrcDir(), "1.5" );
-		env.addExternalJars( projectPath, Util.getJavaClassLibs() );
-		fullBuild( projectPath );
-
-		// remove old package fragment root so that names don't collide
-		env.setOutputFolder( projectPath, "bin" ); //$NON-NLS-1$
-
-		IJavaProject jproj = env.getJavaProject( projectPath );
-		AptConfig.setEnabled( jproj, true );
-		TestUtil.createAndAddAnnotationJar( jproj );
-		
-	}
-
-	public static String getProjectName_ProjectRootAsSrcDir()
-	{
-		return AptBuilderTests.class.getName() + "NoSrcProject"; //$NON-NLS-1$
-	}
-	
-	public IPath getSourcePath( String projectName )
-	{
-		if ( getProjectName_ProjectRootAsSrcDir().equals( projectName) )
-			return new Path( "/" + getProjectName_ProjectRootAsSrcDir() );
-		else
-		{
-			IProject project = env.getProject( projectName );
-			IFolder srcFolder = project.getFolder( "src" ); //$NON-NLS-1$
-			IPath srcRoot = srcFolder.getFullPath();
-			return srcRoot;
-		}
-	}
-	public void testGeneratedFileInBuilder() throws Exception
-	{
-		_testGeneratedFileInBuilder( getProjectName() );
-	}
-	
-	/**
-	 *  Regresses Buzilla 103745 & 95661
-	 */
-
-	public void testGeneratedFileInBuilder_ProjectRootAsSourceDir() throws Exception
-	{
-		_testGeneratedFileInBuilder( getProjectName_ProjectRootAsSrcDir() );
-	}
-
-	@SuppressWarnings("nls")
-	private void _testGeneratedFileInBuilder( String projectName )
-	{
-		IProject project = env.getProject( projectName );
-		IPath srcRoot = getSourcePath( projectName );
-		
-		String code = "package p1;\n"
-			+ "//import org.eclipse.jdt.apt.tests.annotations.helloworld.HelloWorldAnnotation;"
-			+ "\n" + "public class A " + "\n" + "{"
-			+ "    //@HelloWorldAnnotation" + "\n"
-			+ "    public static void main( String[] argv )" + "\n" + "    {"
-			+ "\n"
-			+ "        generatedfilepackage.GeneratedFileTest.helloWorld();"
-			+ "\n" + "    }" + "\n" + "}" + "\n";
-
-		
-		IPath p1aPath = env.addClass( srcRoot, "p1", "A", //$NON-NLS-1$ //$NON-NLS-2$
-			code );
-
-		fullBuild( project.getFullPath() );
-
-		expectingOnlyProblemsFor( p1aPath );
-		expectingOnlySpecificProblemFor( p1aPath, new Problem(
-			"A", "generatedfilepackage cannot be resolved", p1aPath ) ); //$NON-NLS-1$ //$NON-NLS-2$	
-
-		code = "package p1;\n"
-			+ "import org.eclipse.jdt.apt.tests.annotations.helloworld.HelloWorldAnnotation;"
-			+ "\n" + "public class A " + "\n" + "{"
-			+ "    @HelloWorldAnnotation" + "\n"
-			+ "    public static void main( String[] argv )" + "\n" + "    {"
-			+ "\n"
-			+ "        generatedfilepackage.GeneratedFileTest.helloWorld();"
-			+ "\n" + "    }" + "\n" + "}" + "\n";
-
-		env.addClass( srcRoot, "p1", "A", code );
-		fullBuild( project.getFullPath() );
-
-		expectingOnlyProblemsFor( new IPath[0] );
-	}
-	
-	/**
-	 *  This test makes sure we run apt on generated files during build
-	 */
-
-	@SuppressWarnings("nls")
-	public void testNestedGeneratedFileInBuilder() throws Exception
-	{
-		IProject project = env.getProject( getProjectName() );
-		IPath srcRoot = getSourcePath( getProjectName() );
-		
-		String code = "package p1;\n"
-			+ "//import org.eclipse.jdt.apt.tests.annotations.nestedhelloworld.NestedHelloWorldAnnotation;"
-			+ "\n" + "public class A " + "\n" + "{"
-			+ "    //@NestedHelloWorldAnnotation" + "\n"
-			+ "    public static void main( String[] argv )" + "\n" + "    {"
-			+ "\n"
-			+ "        generatedfilepackage.GeneratedFileTest.helloWorld();"
-			+ "\n" + "    }" + "\n" + "}" + "\n";
-
-		
-		IPath p1aPath = env.addClass( srcRoot, "p1", "A", //$NON-NLS-1$ //$NON-NLS-2$
-			code );
-
-		fullBuild( project.getFullPath() );
-
-		expectingOnlyProblemsFor( p1aPath );
-		expectingOnlySpecificProblemFor( p1aPath, new Problem(
-			"A", "generatedfilepackage cannot be resolved", p1aPath ) ); //$NON-NLS-1$ //$NON-NLS-2$	
-
-		code = "package p1;\n"
-			+ "import org.eclipse.jdt.apt.tests.annotations.nestedhelloworld.NestedHelloWorldAnnotation;"
-			+ "\n" + "public class A " + "\n" + "{"
-			+ "    @NestedHelloWorldAnnotation" + "\n"
-			+ "    public static void main( String[] argv )" + "\n" + "    {"
-			+ "\n"
-			+ "        generatedfilepackage.GeneratedFileTest.helloWorld();"
-			+ "\n" + "    }" + "\n" + "}" + "\n";
-
-		env.addClass( srcRoot, "p1", "A", code );
-		fullBuild( project.getFullPath() );
-
-		expectingOnlyProblemsFor( new IPath[0] );
-	}
-		
-	
-	/**
-	 *   This test makes sure that our extra-dependency stuff is hooked up in the build.  
-	 *   Specifically, we test to make sure that Extra dependencies only appear when 
-	 *   an annotation processor looks up a type by name.  We also test that expected
-	 *   build output is there because of the dependency.
-	 */
-
-	@SuppressWarnings("nls")	
-	public void testExtraDependencies()
-	{
-		String codeA = "package p1.p2.p3.p4;\n"
-			+  "public class A { B b; D d; }";
-		
-		String codeB1 = "package p1.p2.p3.p4;\n"
-			+  "public class B { }";
-		
-		String codeB2 = "package p1.p2.p3.p4;\n"
-			+  "public class B { public static void main( String[] argv ) {} }";
-		
-		String codeC = "package p1.p2.p3.p4;\n"
-			+  "public class C { }";
-		
-		String codeD = "package p1.p2.p3.p4;\n"
-			+  "public class D { }";
-		 
-		String codeE = "package p1.p2.p3.p4;\n"
-			+  "public class E { }";
-		
-		IProject project = env.getProject( getProjectName() );
-		IPath srcRoot = getSourcePath( getProjectName() );
-		
-		env.addClass( srcRoot, "p1.p2.p3.p4", "A", //$NON-NLS-1$ //$NON-NLS-2$
-			codeA );
-		
-		env.addClass( srcRoot, "p1.p2.p3.p4", "B", //$NON-NLS-1$ //$NON-NLS-2$
-			codeB1 );
-		
-		env.addClass( srcRoot, "p1.p2.p3.p4", "C", //$NON-NLS-1$ //$NON-NLS-2$
-			codeC );
-		
-		env.addClass( srcRoot, "p1.p2.p3.p4", "D", //$NON-NLS-1$ //$NON-NLS-2$
-			codeD );
-		
-		env.addClass( srcRoot, "p1.p2.p3.p4", "E", //$NON-NLS-1$ //$NON-NLS-2$
-			codeE );
-		
-		fullBuild( project.getFullPath() );
-		expectingNoProblems();
-		
-		// touch B - make sure its public shape changes.
-		env.addClass( srcRoot, "p1.p2.p3.p4", "B", //$NON-NLS-1$ //$NON-NLS-2$
-			codeB2 );
-		
-		incrementalBuild( project.getFullPath() );
-		expectingNoProblems();
-		expectingCompiledClasses(new String[]{"p1.p2.p3.p4.B", "p1.p2.p3.p4.A"}); //$NON-NLS-1$ //$NON-NLS-2$
-		expectingCompilingOrder(new String[]{"p1.p2.p3.p4.B", "p1.p2.p3.p4.A"}); //$NON-NLS-1$ //$NON-NLS-2$
-
-		//
-		//  Now have p1.p2.p3.p4.A w/ an anontation whose processor looks up p1.p2.p3.p4.C by name 
-		//
-		
-		// new code for A with an annotation processor that should introduce a dep on C
-		codeA = "package p1.p2.p3.p4;\n"
-			+  "import org.eclipse.jdt.apt.tests.annotations.extradependency.ExtraDependencyAnnotation;" + "\n" 
-			+  "@ExtraDependencyAnnotation" + "\n" 
-			+  "public class A { B b; D d; }";
-		
-		env.addClass( srcRoot, "p1.p2.p3.p4", "A", //$NON-NLS-1$ //$NON-NLS-2$
-			codeA );
-		env.addClass( srcRoot, "p1.p2.p3.p4", "B", //$NON-NLS-1$ //$NON-NLS-2$
-			codeB1 );
-		
-		fullBuild( project.getFullPath() );
-		expectingNoProblems();
-		
-		// touch B
-		env.addClass( srcRoot, "p1.p2.p3.p4", "B", //$NON-NLS-1$ //$NON-NLS-2$
-			codeB2 );
-		
-		incrementalBuild( project.getFullPath() );
-		expectingNoProblems();
-		
-		//
-		// Note that p1.p2.p3.p4.A is showing up twice because it has annotations, and we need to 
-		// parse the source, parsing runs through the compiler, and this registers the 
-		// file a second time with the Compiler#DebugRequestor 
-		//
-		expectingCompiledClasses(new String[]{"p1.p2.p3.p4.B", "p1.p2.p3.p4.A", "p1.p2.p3.p4.A", "p1.p2.p3.p4.C"}); //$NON-NLS-1$ //$NON-NLS-2$
-		expectingCompilingOrder(new String[]{"p1.p2.p3.p4.B", "p1.p2.p3.p4.A", "p1.p2.p3.p4.C", "p1.p2.p3.p4.A"}); //$NON-NLS-1$ //$NON-NLS-2$
-		
-		//
-		// now make sure that p1.p2.p3.p4.C is not compiled when A uses NoOp Annotation
-		//
-		
-		// new code for A with an annotation processor that should introduce a dep on C
-		codeA = "package p1.p2.p3.p4;\n"
-			+  "import org.eclipse.jdt.apt.tests.annotations.noop.NoOpAnnotation;" + "\n" 
-			+  "@NoOpAnnotation" + "\n" 
-			+  "public class A { B b; D d; }";
-		
-		env.addClass( srcRoot, "p1.p2.p3.p4", "A", //$NON-NLS-1$ //$NON-NLS-2$
-			codeA );
-		env.addClass( srcRoot, "p1.p2.p3.p4", "B", //$NON-NLS-1$ //$NON-NLS-2$
-			codeB1 );
-		
-		fullBuild( project.getFullPath() );
-		expectingNoProblems();
-		
-		// touch B
-		env.addClass( srcRoot, "p1.p2.p3.p4", "B", //$NON-NLS-1$ //$NON-NLS-2$
-			codeB2 );
-		
-		incrementalBuild( project.getFullPath() );
-		expectingNoProblems();
-		
-		//
-		// Note that p1.p2.p3.p4.A is showing up twice because it has annotations, and we need to 
-		// parse the source, parsing runs through the compiler, and this registers the 
-		// file a second time with the Compiler#DebugRequestor 
-		//
-		expectingCompiledClasses(new String[]{"p1.p2.p3.p4.B", "p1.p2.p3.p4.A", "p1.p2.p3.p4.A" }); //$NON-NLS-1$ //$NON-NLS-2$
-		expectingCompilingOrder(new String[]{"p1.p2.p3.p4.B", "p1.p2.p3.p4.A", "p1.p2.p3.p4.A" }); //$NON-NLS-1$ //$NON-NLS-2$
-	}
-
-	/**
-	 *   Test that we do not recompile generated files that are
-	 *   not changed even as their parent is modified.
-	 */
-
-	@SuppressWarnings("nls")
-	public void testCaching()
-	{
-		String code = "package p1;\n"
-			+ "import org.eclipse.jdt.apt.tests.annotations.helloworld.HelloWorldAnnotation;"
-			+ "\n" + "public class A " + "\n" + "{"
-			+ "    @HelloWorldAnnotation" + "\n"
-			+ "    public static void main( String[] argv )" + "\n" + "    {"
-			+ "\n"
-			+ "        generatedfilepackage.GeneratedFileTest.helloWorld();"
-			+ "\n" 
-			+ "    }" 
-			+ "\n" 
-			+ "}" 
-			+ "\n";
-		
-		String modifiedCode = "package p1;\n"
-			+ "import org.eclipse.jdt.apt.tests.annotations.helloworld.HelloWorldAnnotation;"
-			+ "\n" + "public class A " + "\n" + "{"
-			+ "    @HelloWorldAnnotation" + "\n"
-			+ "    public static void main( String[] argv )" + "\n" + "    {"
-			+ "\n"
-			+ "        generatedfilepackage.GeneratedFileTest.helloWorld();"
-			+ "\n" 
-			+ "    }" 
-			+ "\n" 
-			+ "    public static void otherMethod()" + "\n" + "    {"
-			+ "        System.out.println();\n"
-			+ "    }"
-			+ "}" 
-			+ "\n";
-		
-		IProject project = env.getProject( getProjectName() );
-		IPath srcRoot = getSourcePath( getProjectName() );
-		
-		env.addClass( srcRoot, "p1", "A", //$NON-NLS-1$ //$NON-NLS-2$
-			code );
-		
-		fullBuild( project.getFullPath() );
-		expectingNoProblems();
-		expectingCompiledClasses(new String[] {"p1.A", "p1.A", "generatedfilepackage.GeneratedFileTest"}); //$NON-NLS-1 //$NON_NLS-2$
-		
-		// touch A - make sure its public shape changes.
-		env.addClass( srcRoot, "p1", "A", //$NON-NLS-1$ //$NON-NLS-2$
-			modifiedCode );
-		incrementalBuild( project.getFullPath() );
-		expectingNoProblems();
-		expectingCompiledClasses(new String[]{"p1.A", "p1.A"}); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-	}
-
-	/**
-	 * This test makes sure that we delete generated files when the parent file 
-	 * is deleted.  We also make sure that multi-parent support is working.
-	 */
-
-	@SuppressWarnings("nls")
-	public void testDeletedParentFile() throws Exception
-	{
-		IProject project = env.getProject( getProjectName() );
-		IPath srcRoot = getSourcePath( getProjectName() );
-
-		String a1Code = "package p1; " + "\n"
-			+ "import org.eclipse.jdt.apt.tests.annotations.helloworld.HelloWorldAnnotation;" + "\n"
-			+ "@HelloWorldAnnotation" + "\n"
-			+ "public class A1 {}";
-		String a2Code = "package p1; " + "\n"
-			+ "import org.eclipse.jdt.apt.tests.annotations.helloworld.HelloWorldAnnotation;" + "\n"
-			+ "@HelloWorldAnnotation" + "\n"
-			+ "public class A2 {}";
-		String bCode = "package p1; " + "\n"
-			+ "public class B { generatedfilepackage.GeneratedFileTest gft; }";
-
-		IPath p1a1Path = env.addClass( srcRoot, "p1", "A1", //$NON-NLS-1$ //$NON-NLS-2$
-			a1Code );
-		IPath p1a2Path = env.addClass( srcRoot, "p1", "A2", //$NON-NLS-1$ //$NON-NLS-2$
-			a2Code );
-		IPath p1bPath = env.addClass( srcRoot, "p1", "B", //$NON-NLS-1$ //$NON-NLS-2$
-			bCode );
-		
-		fullBuild( project.getFullPath() );
-		expectingNoProblems();
-		
-		// now delete file A1 and make sure we still have no problems
-		env.removeFile( p1a1Path );
-		
-		// sleep to let the resource-change event fire
-		sleep( 1000 );
-		
-		incrementalBuild( project.getFullPath() );
-		
-		expectingNoProblems();
-		
-		// now delete file A2 and make sure we have a problem on B
-		env.removeFile( p1a2Path );
-
-		// sleep to let the resource-change event fire
-		sleep( 1000 );
-
-		incrementalBuild( project.getFullPath() );
-		expectingOnlyProblemsFor( p1bPath );
-		expectingOnlySpecificProblemFor( p1bPath, new Problem(
-			"B", "generatedfilepackage cannot be resolved to a type", p1bPath ) ); //$NON-NLS-1$ //$NON-NLS-2$	
-	}
-	
-	public void testStopGeneratingFileInBuilder_FullBuild()
-	{
-		internalTestStopGeneratingFileInBuilder( true );
-	}
-
-	public void testStopGeneratingFileInBuilder_IncrementalBuild()
-	{
-		internalTestStopGeneratingFileInBuilder( false );
-	}
-	
-	@SuppressWarnings("nls")
-	private void internalTestStopGeneratingFileInBuilder( boolean fullBuild )
-	{
-		IProject project = env.getProject( getProjectName() );
-		IPath srcRoot = getSourcePath( getProjectName() );
-		
-		String code = "package p1;\n"
-			+ "//import org.eclipse.jdt.apt.tests.annotations.helloworld.HelloWorldAnnotation;"
-			+ "\n" + "public class A " + "\n" + "{"
-			+ "    //@HelloWorldAnnotation" + "\n"
-			+ "    public static void main( String[] argv )" + "\n" + "    {"
-			+ "\n"
-			+ "        generatedfilepackage.GeneratedFileTest.helloWorld();"
-			+ "\n" + "    }" + "\n" + "}" + "\n";
-
-		
-		IPath p1aPath = env.addClass( srcRoot, "p1", "A", //$NON-NLS-1$ //$NON-NLS-2$
-			code );
-
-		if ( fullBuild )
-			fullBuild( project.getFullPath() );
-		else
-			incrementalBuild( project.getFullPath() );
-		
-
-		expectingOnlyProblemsFor( p1aPath );
-		expectingOnlySpecificProblemFor( p1aPath, new Problem(
-			"A", "generatedfilepackage cannot be resolved", p1aPath ) ); //$NON-NLS-1$ //$NON-NLS-2$	
-
-		code = "package p1;\n"
-			+ "import org.eclipse.jdt.apt.tests.annotations.helloworld.HelloWorldAnnotation;"
-			+ "\n" + "public class A " + "\n" + "{"
-			+ "    @HelloWorldAnnotation" + "\n"
-			+ "    public static void main( String[] argv )" + "\n" + "    {"
-			+ "\n"
-			+ "        generatedfilepackage.GeneratedFileTest.helloWorld();"
-			+ "\n" + "    }" + "\n" + "}" + "\n";
-
-		env.addClass( srcRoot, "p1", "A", code );
-		if ( fullBuild )
-			fullBuild( project.getFullPath() );
-		else
-			incrementalBuild( project.getFullPath() );
-		
-		expectingOnlyProblemsFor( new IPath[0] );
-
-		// do a full build again.  This is necessary because generating the file
-		// caused a classpath change, so the next inremental build will end up being
-		// a full build because of the classpath change
-		if ( ! fullBuild )
-			fullBuild( project.getFullPath() );
-		
-		// now remove the annotation.  The generated file should go away
-		// and we should see errors again
-		code = "package p1;\n"
-			+ "//import org.eclipse.jdt.apt.tests.annotations.helloworld.HelloWorldAnnotation;"
-			+ "\n" + "public class A " + "\n" + "{"
-			+ "    //@HelloWorldAnnotation" + "\n"
-			+ "    public static void main( String[] argv )" + "\n" + "    {"
-			+ "\n"
-			+ "        generatedfilepackage.GeneratedFileTest.helloWorld();"
-			+ "\n" + "    }" + "\n" + "}" + "\n";
-
-		env.addClass( srcRoot, "p1", "A", code );
-		
-		if ( fullBuild )
-			fullBuild( project.getFullPath() );
-		else
-			incrementalBuild( project.getFullPath() );
-		
-		expectingOnlyProblemsFor( p1aPath );
-		String expectedError;
-		if ( fullBuild )
-			expectedError = "generatedfilepackage cannot be resolved";
-		else
-			expectedError = "generatedfilepackage.GeneratedFileTest cannot be resolved to a type";
-
-		expectingOnlySpecificProblemFor( p1aPath, 
-					new Problem( "A", expectedError, p1aPath ) ); //$NON-NLS-1$ 
-	}
-	
-	public void testAPTRounding()
-	{
-		IProject project = env.getProject( getProjectName() );
-		IPath srcRoot = getSourcePath( getProjectName()  );
-		
-		String codeX = "package p1;\n"
-			+ "\n import org.eclipse.jdt.apt.tests.annotations.aptrounding.*;"
-			+ "\n@GenBean\n"
-			+ "public class X {}\n";
-		
-		env.addClass( srcRoot, "p1", "X", codeX );
-		
-		String codeY = "package p1;\n"
-			+ "\n import org.eclipse.jdt.apt.tests.annotations.aptrounding.*;"
-			+ "public class Y { @GenBean2 test.Bean _bean = null; }\n";
-		
-		env.addClass( srcRoot, "p1", "Y", codeY );
-
-		fullBuild( project.getFullPath() );
-		
-		expectingNoProblems();
-	}
-	
-	public void testConfigMarker() throws Exception{
-		final String projectName = "ConfigMarkerTestProject";	
-		final IJavaProject javaProj = createJavaProject( projectName );
-		// apt is currently disabled save off the cp before configuration
-		final IClasspathEntry[] cp = javaProj.getRawClasspath();		
-		IProject project = env.getProject( projectName );
-		IPath srcRoot = getSourcePath( projectName );		
-		// this will cause a type generation.
-		String code = "package pkg;\n"
-			+ "import org.eclipse.jdt.apt.tests.annotations.helloworld.HelloWorldAnnotation;"
-			+ "\npublic class Foo{\n"
-			+ "    @HelloWorldAnnotation\n"
-			+ "    public static void main( String[] argv ){}"
-			+ "\n}";
-		
-		env.addClass( srcRoot, "pkg", "Foo", code );
-		
-		AptConfig.setEnabled(javaProj, true);
-		fullBuild( project.getFullPath() );
-		expectingNoProblems();
-		expectingNoMarkers();
-		
-		// wipe out the source folder from the classpath.
-		javaProj.setRawClasspath(cp, null);
-		fullBuild( project.getFullPath() );
-		expectingNoProblems();
-		// make sure we post the marker about the incorrect classpath
-		expectingMarkers(new String[]{"Generated source folder '" + 
-				AptPreferenceConstants.DEFAULT_GENERATED_SOURCE_FOLDER_NAME + 
-				"' is missing from classpath"} );
-		
-		// take out the annotation and no type generation will occur.
-		code = "package pkg;\n"
-			+ "\npublic class Foo{\n"			
-			+ "    public static void main( String[] argv ){}"
-			+ "\n}";
-		
-		env.addClass( srcRoot, "pkg", "Foo", code );
-		fullBuild( project.getFullPath() );		
-		expectingNoProblems();
-		// Make sure we cleaned out config marker from previous build
-		// We don't need to generate types, hence we should not register the config marker 
-		expectingNoMarkers();
-	}
-	
-	public void testDeletedGeneratedSourceFolder()
-		throws Exception
-	{
-		final String projectName = "DeleteGenSourceFolderTestProject";	
-		final IJavaProject javaProj = createJavaProject( projectName );
-		IProject project = env.getProject( projectName );
-		IPath srcRoot = getSourcePath( projectName );		
-		// this will cause a type generation.
-		String code = "package pkg;\n"
-			+ "import org.eclipse.jdt.apt.tests.annotations.helloworld.HelloWorldAnnotation;"
-			+ "\npublic class Foo{\n"
-			+ "    @HelloWorldAnnotation\n"
-			+ "    public static void main( String[] argv ){}"
-			+ "\n}";
-		
-		env.addClass( srcRoot, "pkg", "Foo", code );
-		AptConfig.setEnabled(javaProj, true);
-		fullBuild( project.getFullPath() );
-		expectingNoProblems();
-		expectingNoMarkers();
-		
-		GeneratedSourceFolderManager mgr = AptPlugin.getAptProject(javaProj).getGeneratedSourceFolderManager();
-		IFolder srcFolder = mgr.getFolder();
-		assertEquals(true, srcFolder.exists());
-		// delete the gen source folder
-		srcFolder.delete(true, false, null);
-		assertEquals(false, srcFolder.exists());
-		
-		// we would have re-created the folder on the next build
-		fullBuild( project.getFullPath() );
-		expectingNoProblems();
-		expectingNoMarkers();
-	}
-	
-	private static void sleep( long millis )
-	{	
-		long end = System.currentTimeMillis() + millis;
-		while ( millis > 0 )
-		{
-			try
-			{
-				Thread.sleep( millis );
-			}
-			catch ( InterruptedException ie )
-			{}
-			millis = end - System.currentTimeMillis();
-		}
-	}
-	
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/AptReconcileTests.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/AptReconcileTests.java
deleted file mode 100644
index 8298fe1..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/AptReconcileTests.java
+++ /dev/null
@@ -1,442 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    mkaufman@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests;
-
-import java.io.File;
-
-import junit.framework.Test;
-import junit.framework.TestSuite;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.jdt.apt.core.AptPlugin;
-import org.eclipse.jdt.apt.core.internal.generatedfile.GeneratedFileManager;
-import org.eclipse.jdt.apt.core.util.AptConfig;
-import org.eclipse.jdt.core.ICompilationUnit;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.JavaModelException;
-import org.eclipse.jdt.core.WorkingCopyOwner;
-import org.eclipse.jdt.core.tests.model.ModifyingResourceTests;
-
-public class AptReconcileTests extends ModifyingResourceTests
-{
-	public AptReconcileTests(String name)
-	{
-		super( name );
-	}
-	
-	public static Test suite() {
-		return new TestSuite(AptReconcileTests.class);
-	}
-	
-	@SuppressWarnings("nls")
-	public void testGeneratedFile() throws Throwable
-	{
-		String fname = TEST_FOLDER + "/A.java";
-		try
-		{
-			
-			//
-			//  first make sure errors are present when the annotation
-			// is commented out
-			//
-			String codeWithErrors = "package test;" + "\n" +
-				"//import org.eclipse.jdt.apt.tests.annotations.helloworld.HelloWorldAnnotation;" + "\n" + 
-				"public class A " +  "\n" +
-				"{" +  "\n" +
-				"    //@HelloWorldAnnotation" + "\n" + 
-				"    public static void main( String[] argv )" + "\n" +
-				"    {" + "\n" +
-				"        generatedfilepackage.GeneratedFileTest.helloWorld();" + "\n" +
-				"    }" + "\n" +
-				"}";
-
-			createFile( fname, codeWithErrors );
-			this._problemRequestor = new ProblemRequestor();
-			
-			setUpWorkingCopy( fname, codeWithErrors );
-			this._workingCopy.reconcile( ICompilationUnit.NO_AST, true, null,
-				null );
-			
-			String expectedProblems = "----------\n" + 
-				"1. ERROR in /org.eclipse.jdt.apt.tests.AptReconcileTestsProject/src/test/A.java (at line 8)\n" + 
-				"	generatedfilepackage.GeneratedFileTest.helloWorld();\n" + 
-				"	^^^^^^^^^^^^^^^^^^^^\n" + 
-				"generatedfilepackage cannot be resolved\n" + 
-				"----------\n" + 
-				"----------\n" + 
-				"2. ERROR in /org.eclipse.jdt.apt.tests.AptReconcileTestsProject/src/test/A.java (at line 8)\n" + 
-				"	generatedfilepackage.GeneratedFileTest.helloWorld();\n" + 
-				"	^^^^^^^^^^^^^^^^^^^^\n" + 
-				"generatedfilepackage cannot be resolved\n" + 
-				"----------\n";
-			
-			assertProblems( "Unexpected problems", expectedProblems );
-			
-			
-			//
-			// now make sure errors go away when annotations are present
-			//
-			String codeWithOutErrors = "package test;" + "\n" +
-			    "import org.eclipse.jdt.apt.tests.annotations.helloworld.HelloWorldAnnotation;" + "\n" + 
-			    "public class A " +  "\n" +
-			    "{" +  "\n" +
-			    "    @HelloWorldAnnotation" + "\n" + 
-				"    public static void main( String[] argv )" + "\n" +
-				"    {" + "\n" +
-				"        generatedfilepackage.GeneratedFileTest.helloWorld();" + "\n" +
-				"    }" + "\n" +
-				"}";
-
-			setWorkingCopyContents( codeWithOutErrors );
-			this._workingCopy.reconcile( ICompilationUnit.NO_AST, true, null,
-					null );
-			
-			assertProblems( "UnexpectedProblems", "----------\n----------\n" );
-			
-		}
-		catch( Throwable e )
-		{
-			e.printStackTrace();
-			throw e;
-		}
-		finally
-		{
-			deleteFile( fname );
-		}
-	}
-
-	
-	/**
-	 *   This tests an annotation that generates a file with an annotation that
-	 *   generates a file that should fix an error in the parent file.
-	 * @throws Throwable
-	 */
-	// This stopped working when reconcile changed to be in-memory only.  We should investigate why this stopped 
-	// (I think it is consistent with the reconcile/build model, just need to convince myself it is true.) 
-	@SuppressWarnings("nls")
-	public void disabled_testNestedGeneratedFile() throws Throwable
-	{
-		String fname = TEST_FOLDER + "/A.java";
-		try
-		{
-			
-			//
-			//  first make sure errors are present when the annotation
-			// is commented out
-			//
-			String codeWithErrors = "package test;" + "\n" +
-				"//import org.eclipse.jdt.apt.tests.annotations.nestedhelloworld.NestedHelloWorldAnnotation;" + "\n" + 
-				"public class A " +  "\n" +
-				"{" +  "\n" +
-				"    //@NestedHelloWorldAnnotation" + "\n" + 
-				"    public static void main( String[] argv )" + "\n" +
-				"    {" + "\n" +
-				"        generatedfilepackage.GeneratedFileTest.helloWorld();" + "\n" +
-				"    }" + "\n" +
-				"}";
-
-			createFile( fname, codeWithErrors );
-			this._problemRequestor = new ProblemRequestor();
-			
-			setUpWorkingCopy( fname, codeWithErrors );
-			this._workingCopy.reconcile( ICompilationUnit.NO_AST, true, null,
-				null );
-			
-			String expectedProblems = "----------\n" + 
-				"1. ERROR in /org.eclipse.jdt.apt.tests.AptReconcileTestsProject/src/test/A.java (at line 8)\n" + 
-				"	generatedfilepackage.GeneratedFileTest.helloWorld();\n" + 
-				"	^^^^^^^^^^^^^^^^^^^^\n" + 
-				"generatedfilepackage cannot be resolved\n" + 
-				"----------\n" + 
-				"----------\n" + 
-				"2. ERROR in /org.eclipse.jdt.apt.tests.AptReconcileTestsProject/src/test/A.java (at line 8)\n" + 
-				"	generatedfilepackage.GeneratedFileTest.helloWorld();\n" + 
-				"	^^^^^^^^^^^^^^^^^^^^\n" + 
-				"generatedfilepackage cannot be resolved\n" + 
-				"----------\n";
-			
-			assertProblems( "Unexpected problems", expectedProblems );
-			
-			
-			//
-			// now make sure errors go away when annotations are present
-			//
-			String codeWithOutErrors = "package test;" + "\n" +
-			    "import org.eclipse.jdt.apt.tests.annotations.nestedhelloworld.NestedHelloWorldAnnotation;" + "\n" + 
-			    "public class A " +  "\n" +
-			    "{" +  "\n" +
-			    "    @NestedHelloWorldAnnotation" + "\n" + 
-				"    public static void main( String[] argv )" + "\n" +
-				"    {" + "\n" +
-				"        generatedfilepackage.GeneratedFileTest.helloWorld();" + "\n" +
-				"    }" + "\n" +
-				"}";
-
-			setWorkingCopyContents( codeWithOutErrors );
-			this._workingCopy.reconcile( ICompilationUnit.NO_AST, true, null,
-					null );
-			
-			assertProblems( "UnexpectedProblems", "----------\n----------\n" );
-			
-		}
-		catch( Throwable e )
-		{
-			e.printStackTrace();
-			throw e;
-		}
-		finally
-		{
-			deleteFile( fname );
-		}
-	}
-
-
-	@SuppressWarnings("nls")
-	public void testStopGeneratingFileInReconciler() throws Exception
-	{
-		String fname = TEST_FOLDER + "/A.java";
-		try
-		{
-			
-			//
-			//  first make sure errors are present when the annotation
-			// is commented out
-			//
-			String codeWithErrors = "package test;" + "\n" +
-				"//import org.eclipse.jdt.apt.tests.annotations.helloworld.HelloWorldAnnotation;" + "\n" + 
-				"public class A " +  "\n" +
-				"{" +  "\n" +
-				"    //@HelloWorldAnnotation" + "\n" + 
-				"    public static void main( String[] argv )" + "\n" +
-				"    {" + "\n" +
-				"        generatedfilepackage.GeneratedFileTest.helloWorld();" + "\n" +
-				"    }" + "\n" +
-				"}";
-
-			createFile( fname, codeWithErrors );
-			this._problemRequestor = new ProblemRequestor();
-				
-			setUpWorkingCopy( fname, codeWithErrors );
-			this._workingCopy.reconcile( ICompilationUnit.NO_AST, true, null,
-				null );
-				
-			String expectedProblems = "----------\n" + 
-				"1. ERROR in /org.eclipse.jdt.apt.tests.AptReconcileTestsProject/src/test/A.java (at line 8)\n" + 
-				"	generatedfilepackage.GeneratedFileTest.helloWorld();\n" + 
-				"	^^^^^^^^^^^^^^^^^^^^\n" + 
-				"generatedfilepackage cannot be resolved\n" + 
-				"----------\n" + 
-				"----------\n" + 
-				"2. ERROR in /org.eclipse.jdt.apt.tests.AptReconcileTestsProject/src/test/A.java (at line 8)\n" + 
-				"	generatedfilepackage.GeneratedFileTest.helloWorld();\n" + 
-				"	^^^^^^^^^^^^^^^^^^^^\n" + 
-				"generatedfilepackage cannot be resolved\n" + 
-				"----------\n";
-				
-			assertProblems( "Unexpected problems", expectedProblems );
-					
-			//
-			// now make sure errors go away when annotations are present
-			//
-			String codeWithOutErrors = "package test;" + "\n" +
-			    "import org.eclipse.jdt.apt.tests.annotations.helloworld.HelloWorldAnnotation;" + "\n" + 
-			    "public class A " +  "\n" +
-			    "{" +  "\n" +
-			    "    @HelloWorldAnnotation" + "\n" + 
-				"    public static void main( String[] argv )" + "\n" +
-				"    {" + "\n" +
-				"        generatedfilepackage.GeneratedFileTest.helloWorld();" + "\n" +
-				"    }" + "\n" +
-				"}";
-
-			setWorkingCopyContents( codeWithOutErrors );
-			this._workingCopy.reconcile( ICompilationUnit.NO_AST, true, null,
-					null );
-				
-			assertProblems( "UnexpectedProblems", "----------\n----------\n" );
-			
-			//
-			// now make sure errors come back when annotations are taken away
-			//
-			setWorkingCopyContents( codeWithErrors );
-			this._workingCopy.reconcile( ICompilationUnit.NO_AST, true, null,
-					null );
-				
-			// error will be different from first one because the package will
-			// exist since we only removed the file. 
-			String expectedProblems2 = 	"----------\n" + 
-				"1. ERROR in /org.eclipse.jdt.apt.tests.AptReconcileTestsProject/src/test/A.java (at line 8)\n" + 
-				"	generatedfilepackage.GeneratedFileTest.helloWorld();\n" + 
-				"	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n" + 
-				"generatedfilepackage.GeneratedFileTest cannot be resolved to a type\n" + 
-				"----------\n";
-			assertProblems( "Unexpected problems", expectedProblems2 );
-		}
-		catch (Exception e )
-		{
-			e.printStackTrace();
-			throw e;
-		}
-	}
-
-	/**
-	 * Tests that when a working copy is discarded, we clean up any cached data in the
-	 * GeneratedFileManager.
-	 */
-	@SuppressWarnings("nls")	
-	public void testDiscardParentWorkingCopy()
-	 	throws Throwable
-	{
-		String fname = TEST_FOLDER + "/A.java";
-		try
-		{
-			String codeWithOutErrors = "package test;" + "\n" +
-			    "import org.eclipse.jdt.apt.tests.annotations.helloworld.HelloWorldAnnotation;" + "\n" + 
-			    "public class A " +  "\n" +
-			    "{" +  "\n" +
-			    "    @HelloWorldAnnotation" + "\n" + 
-				"    public static void main( String[] argv )" + "\n" +
-				"    {" + "\n" +
-				"        generatedfilepackage.GeneratedFileTest.helloWorld();" + "\n" +
-				"    }" + "\n" +
-				"}";
-
-			createFile( fname, codeWithOutErrors );
-			this._problemRequestor = new ProblemRequestor();
-			setUpWorkingCopy( fname, codeWithOutErrors );
-			
-			// use new problem requestor to remove any errors that occurred in setUpWorkingCopy()
-			this._problemRequestor = new ProblemRequestor();
-			this._workingCopy.reconcile( ICompilationUnit.NO_AST, true, null,
-				null );
-			
-			assertProblems( "UnexpectedProblems", "" );
-			
-			IJavaProject jp = _workingCopy.getJavaProject();
-			GeneratedFileManager gfm = AptPlugin.getAptProject(jp).getGeneratedFileManager();
-			
-			if ( !gfm.containsWorkingCopyMapEntriesForParent((IFile)_workingCopy.getResource()))
-				fail( "Expected to find map entries in GeneratedFileManager");
-			
-			_workingCopy.discardWorkingCopy();
-
-			if ( gfm.containsWorkingCopyMapEntriesForParent( (IFile)_workingCopy.getResource() ) )
-				fail( "Unexpected map entries in GeneratedFileManager!");
-		}
-		finally
-		{
-			deleteFile( fname );
-		}	
-	}
-
-	@SuppressWarnings("nls")
-	public void setUp() throws Exception 
-	{
-		try 
-		{
-			super.setUp();			
-			this._problemRequestor = new ProblemRequestor();
-
-			final IJavaProject project = createJavaProject( TEST_PROJECT,
-					new String[] { "src" }, new String[] { "JCL15_LIB" },
-					"bin", "1.5" );
-			project.getProject().refreshLocal( IResource.DEPTH_INFINITE, null );
-			AptConfig.setEnabled(project, true);
-			
-			// make sure generated source folder exists in the project.  This is necessary
-			// for reconcile-time type-generation to work
-			AptPlugin.getAptProject(project).getGeneratedFileManager();
-			
-			_classesJarFile = TestUtil.createAndAddAnnotationJar( project );
-
-			IFolder testFolder = createFolder( TEST_FOLDER );
-			if ( !testFolder.exists() )
-				testFolder.create( true, false, null );
-			
-			// disable auto-build.  We don't want build-time type-generation interfering with
-			// our reconcile tests.
-			String key = ResourcesPlugin.PREF_AUTO_BUILDING;
-			boolean value = false;
-			ResourcesPlugin.getPlugin().getPluginPreferences().setValue(key, value);
-		} 
-		catch ( Exception t ) 
-		{
-			t.printStackTrace();
-			throw t;
-		} 
-		catch ( Throwable t ) 
-		{
-			t.printStackTrace();
-			throw new RuntimeException( t ); 
-		}
-	}
-
-	public void tearDown() throws Exception
-	{
-		if( this._workingCopy != null )
-			this._workingCopy.discardWorkingCopy();
-
-		deleteFile( _classesJarFile );
-		deleteFolder( TEST_FOLDER );
-		deleteProject( TEST_PROJECT );
-		super.tearDown();
-	}
- 
-	/***************************************************************************
-	 * 
-	 * copied from ReconcilerTests...
-	 * 
-	 */
-
-	private void setWorkingCopyContents(String contents)
-		throws JavaModelException
-	{
-		this._workingCopy.getBuffer().setContents( contents );
-		this._problemRequestor.initialize( contents.toCharArray() );
-	}
-
-	private void setUpWorkingCopy(String path, String contents)
-		throws JavaModelException
-	{
-		if( this._workingCopy != null )
-			this._workingCopy.discardWorkingCopy();
-		this._workingCopy = getCompilationUnit( path ).getWorkingCopy(
-			new WorkingCopyOwner()
-			{}, this._problemRequestor, null );
-		setWorkingCopyContents( contents );
-		this._workingCopy.makeConsistent( null );
-	}
-
-	protected void assertProblems(String message, String expected)
-	{
-		assertProblems( message, expected, this._problemRequestor );
-	}
-
-	/** *********************************************************************** */
-
-
-	protected ICompilationUnit	_workingCopy;
-
-	protected ProblemRequestor	_problemRequestor;
-
-	public static final String	TEST_PROJECT	= AptReconcileTests.class.getName() + "Project"; //$NON-NLS-1$
-	
-	public static final String	TEST_FOLDER		= "/" + TEST_PROJECT //$NON-NLS-1$
-													+ "/src/test"; //$NON-NLS-1$
-	
-	private File				_classesJarFile;
-
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/FactoryLoaderTests.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/FactoryLoaderTests.java
deleted file mode 100644
index 76ac3c7..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/FactoryLoaderTests.java
+++ /dev/null
@@ -1,144 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *   wharley - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests;
-
-import java.io.File;
-
-import junit.framework.Test;
-import junit.framework.TestSuite;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jdt.apt.core.util.AptConfig;
-import org.eclipse.jdt.apt.core.util.IFactoryPath;
-import org.eclipse.jdt.apt.tests.external.annotations.classloader.ColorAnnotationProcessor;
-import org.eclipse.jdt.apt.tests.external.annotations.classloader.ColorTestCodeExample;
-import org.eclipse.jdt.apt.tests.external.annotations.loadertest.LoaderTestAnnotationProcessor;
-import org.eclipse.jdt.apt.tests.external.annotations.loadertest.LoaderTestCodeExample;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.JavaCore;
-
-/**
- * 
- */
-public class FactoryLoaderTests extends APTTestBase {
-	
-	private File _extJar; // external annotation jar
-	private IPath _extVarJar; // external annotation jar, as a classpath-var-relative path
-	
-	private final static String TEMPJARDIR_CPVAR = "FACTORYLOADERTEST_TEMP"; //$NON-NLS-1$
-	
-	public FactoryLoaderTests(String name)
-	{
-		super( name );
-	}
-
-	public static Test suite() {
-		return new TestSuite( FactoryLoaderTests.class );
-	}
-
-	public void setUp() throws Exception {
-		super.setUp();
-		
-		// project will be deleted by super-class's tearDown() method
-		IPath projectPath = env.getProject( getProjectName() ).getFullPath(); //$NON-NLS-1$
-		
-		_extJar = TestUtil.createAndAddExternalAnnotationJar(
-				env.getJavaProject( projectPath ));
-		// This file will be locked until GC takes care of unloading the
-		// annotation processor classes, so we can't delete it ourselves.
-		_extJar.deleteOnExit();
-		
-		// Create a classpath variable for the same jar file, so we can
-		// refer to it that way.
-		File canonicalJar = _extJar.getCanonicalFile();
-		IPath jarDir = new Path( canonicalJar.getParent() );
-		String extJarName = canonicalJar.getName();
-		IPath varPath = new Path( TEMPJARDIR_CPVAR );
-		_extVarJar = varPath.append( extJarName );
-		JavaCore.setClasspathVariable( TEMPJARDIR_CPVAR, jarDir, null );
-
-		IPath srcRoot = getSourcePath();
-		String code = LoaderTestCodeExample.CODE;
-		env.addClass(srcRoot, LoaderTestCodeExample.CODE_PACKAGE, LoaderTestCodeExample.CODE_CLASS_NAME, code);
-		
-		code = ColorTestCodeExample.CODE;
-		env.addClass(srcRoot, ColorTestCodeExample.CODE_PACKAGE, ColorTestCodeExample.CODE_CLASS_NAME, code);
-	}
-
-	public void testExternalJarLoader() throws Exception {
-		LoaderTestAnnotationProcessor.clearLoaded();
-		IProject project = env.getProject( getProjectName() );
-		fullBuild( project.getFullPath() );
-		expectingNoProblems();
-		assertFalse(LoaderTestAnnotationProcessor.isLoaded());
-		
-		IJavaProject jproj = env.getJavaProject( getProjectName() );
-		IFactoryPath ifp = AptConfig.getFactoryPath(jproj);
-		
-		// add _extJar to the factory list as an external jar, and rebuild.
-		ifp.addExternalJar(_extJar);
-		AptConfig.setFactoryPath(jproj, ifp);
-		
-		// rebuild and verify that the processor was loaded
-		LoaderTestAnnotationProcessor.clearLoaded();
-		fullBuild( project.getFullPath() );
-		expectingNoProblems();
-		assertTrue(LoaderTestAnnotationProcessor.isLoaded());
-		
-		// Verify that we were able to run the ColorAnnotationProcessor successfully
-		assertTrue(ColorAnnotationProcessor.wasSuccessful());
-		
-		// restore to the original
-		ifp.removeExternalJar(_extJar);
-		AptConfig.setFactoryPath(jproj, ifp);
-		
-		// rebuild and verify that the processor was not loaded.
-		LoaderTestAnnotationProcessor.clearLoaded();
-		fullBuild( project.getFullPath() );
-		expectingNoProblems();
-		assertFalse(LoaderTestAnnotationProcessor.isLoaded());
-		
-		// add _extJar to the factory list as a class-path-relative jar, and rebuild.
-		ifp.addVarJar(_extVarJar);
-		AptConfig.setFactoryPath(jproj, ifp);
-		
-		// rebuild and verify that the processor was loaded
-		LoaderTestAnnotationProcessor.clearLoaded();
-		fullBuild( project.getFullPath() );
-		expectingNoProblems();
-		assertTrue(LoaderTestAnnotationProcessor.isLoaded());
-		
-		// restore to the original
-		ifp.removeVarJar(_extVarJar);
-		AptConfig.setFactoryPath(jproj, ifp);
-		
-		// rebuild and verify that the processor was not loaded.
-		LoaderTestAnnotationProcessor.clearLoaded();
-		fullBuild( project.getFullPath() );
-		expectingNoProblems();
-		assertFalse(LoaderTestAnnotationProcessor.isLoaded());
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jdt.core.tests.builder.Tests#tearDown()
-	 */
-	@Override
-	protected void tearDown() throws Exception {
-		JavaCore.removeClasspathVariable( TEMPJARDIR_CPVAR, null );
-		_extJar = null;
-		_extVarJar = null;
-		super.tearDown();
-	}
-	
-
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/FileGenerationTests.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/FileGenerationTests.java
deleted file mode 100644
index e9c8580..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/FileGenerationTests.java
+++ /dev/null
@@ -1,181 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    sbandow@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests;
-
-import java.io.File;
-import java.util.Map;
-
-import junit.framework.Test;
-import junit.framework.TestSuite;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jdt.apt.core.util.AptConfig;
-import org.eclipse.jdt.apt.tests.annotations.ProcessorTestStatus;
-import org.eclipse.jdt.apt.tests.annotations.filegen.TextGenAnnotationProcessor;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.JavaCore;
-
-public class FileGenerationTests extends APTTestBase {
-
-	public FileGenerationTests(final String name)
-	{
-		super(name);
-	}
-
-	public static Test suite()
-	{
-		return new TestSuite(FileGenerationTests.class);
-	}
-	
-	public void testSourceGenPackages() throws Exception
-	{
-		IProject project = env.getProject( getProjectName() );
-		IPath srcRoot = getSourcePath();
-		
-		String code = 
-				"package test;" + "\n" +
-				"import org.eclipse.jdt.apt.tests.annotations.filegen.FileGenLocationAnnotation;" + "\n" +
-				"@FileGenLocationAnnotation" + "\n" +
-				"public class Test" + "\n" +
-				"{" + "\n" +
-				"}";
-
-		env.addClass(srcRoot, "test", "Test", code);
-
-		fullBuild( project.getFullPath() );
-		expectingNoProblems();
-
-		assertEquals(ProcessorTestStatus.NO_ERRORS, ProcessorTestStatus.getErrors());
-	}
-
-	public void testSourceGenOverwrite() throws Exception
-	{
-		IProject project = env.getProject( getProjectName() );
-		IPath srcRoot = getSourcePath();
-
-		String code = 
-			"package test;" + "\n" +
-			"import org.eclipse.jdt.apt.tests.annotations.filegen.FirstGenAnnotation;" + "\n" +
-			"@FirstGenAnnotation" + "\n" +
-			"public class Test" + "\n" +
-			"{" + "\n" +
-			"}";
-
-		env.addClass(srcRoot, "test", "Test", code);
-		
-		fullBuild( project.getFullPath() );
-		expectingNoProblems();
-
-		assertEquals(ProcessorTestStatus.NO_ERRORS, ProcessorTestStatus.getErrors());
-	}
-
-	public void testSourceGenAfterDirChange() throws Exception
-	{
-		IJavaProject jproj = env.getJavaProject( getProjectName() );
-		IProject project = env.getProject( getProjectName() );
-		IPath srcRoot = getSourcePath();
-
-		String code = 
-			"package test;" + "\n" +
-			"import org.eclipse.jdt.apt.tests.annotations.helloworld.HelloWorldAnnotation;" + "\n" +
-			"@HelloWorldAnnotation" + "\n" +
-			"public class Test" + "\n" +
-			"{" + "\n" +
-			"	generatedfilepackage.GeneratedFileTest gft;" + "\n" +
-			"}";
-
-		AptConfig.setGenSrcDir(jproj, "__foo_src");
-		
-		env.addClass(srcRoot, "test", "Test", code);
-
-		fullBuild( project.getFullPath() );
-		expectingNoProblems();
-
-		Map<String,String> options = AptConfig.getProcessorOptions(jproj);
-		String sourcepath = options.get("-sourcepath");
-		
-		assertTrue(sourcepath.contains("__foo_src"));
-		assertEquals(ProcessorTestStatus.NO_ERRORS, ProcessorTestStatus.getErrors());
-	}
-	
-	public void testSourceGenSubDir() throws Exception
-	{
-		IJavaProject jproj = env.getJavaProject( getProjectName() );
-		IProject project = env.getProject( getProjectName() );
-		IPath srcRoot = getSourcePath();
-
-		String code = 
-			"package test;" + "\n" +
-			"import org.eclipse.jdt.apt.tests.annotations.helloworld.HelloWorldAnnotation;" + "\n" +
-			"@HelloWorldAnnotation" + "\n" +
-			"public class Test" + "\n" +
-			"{" + "\n" +
-			"	generatedfilepackage.GeneratedFileTest gft;" + "\n" +
-			"}";
-
-		AptConfig.setGenSrcDir(jproj, "gen/foo");
-		env.addClass(srcRoot, "test", "Test", code);
-
-		fullBuild( project.getFullPath() );
-		expectingNoProblems();
-		
-		assertEquals(ProcessorTestStatus.NO_ERRORS, ProcessorTestStatus.getErrors());
-	}
-	
-	public void testTextFileGen() throws Exception {
-		IProject project = env.getProject( getProjectName() );
-		IPath srcRoot = getSourcePath();
-		
-		String code = 
-				"package test;" + "\n" +
-				"import org.eclipse.jdt.apt.tests.annotations.filegen.TextGenAnnotation;" + "\n" +
-				"@TextGenAnnotation" + "\n" +
-				"public class Test" + "\n" +
-				"{" + "\n" +
-				"}";
-
-		env.addClass(srcRoot, "test", "Test", code);
-
-		fullBuild( project.getFullPath() );
-		expectingNoProblems();
-		
-		// Look for the file
-		Map<String,String> options = AptConfig.getProcessorOptions(JavaCore.create(project));
-		// We'll find it in the binary output directory
-		String outputRootPath = options.get("-d");
-		File theFile = new File(new File(outputRootPath), TextGenAnnotationProcessor.FILE_NAME);
-		
-		assertTrue("File was not found: " + theFile.getAbsolutePath(), theFile.exists());
-		
-		fullBuild( project.getFullPath() );
-		expectingNoProblems();
-		
-		// Look for the file again
-		assertTrue("File was not found: " + theFile.getAbsolutePath(), theFile.exists());
-		
-		// remove the annotation, and the file should be deleted
-		code = 
-			"package test;" + "\n" +
-			"public class Test" + "\n" +
-			"{" + "\n" +
-			"}";
-		env.addClass(srcRoot, "test", "Test", code);
-		
-		fullBuild( project.getFullPath() );
-		expectingNoProblems();
-		
-		// Look for the file -- it should be gone
-		assertTrue("File was found, but should be deleted: " + theFile.getAbsolutePath(), !theFile.exists());
-	}
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/JavaVersionTests.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/JavaVersionTests.java
deleted file mode 100644
index 624c8f6..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/JavaVersionTests.java
+++ /dev/null
@@ -1,91 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    jgarms@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests;
-
-import junit.framework.Test;
-import junit.framework.TestSuite;
-
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jdt.apt.tests.annotations.mirrortest.CodeExample;
-import org.eclipse.jdt.apt.tests.annotations.mirrortest.MirrorTestAnnotationProcessor;
-import org.eclipse.jdt.core.tests.builder.Tests;
-import org.eclipse.jdt.core.tests.util.Util;
-
-/**
- * Test that processors do not get invoked on pre-1.5 projects
- */
-public class JavaVersionTests extends Tests {
-	
-	public JavaVersionTests(final String name) {
-		super( name );
-	}
-
-	public static Test suite() {
-		return new TestSuite( JavaVersionTests.class );
-	}
-
-	public void setUp() throws Exception {
-		super.setUp();
-		
-		// project will be deleted by super-class's tearDown() method
-		IPath projectPath = env.addProject( getProjectName(), "1.4" ); //$NON-NLS-1$
-		env.addExternalJars( projectPath, Util.getJavaClassLibs() );
-		fullBuild( projectPath );
-
-		// remove old package fragment root so that names don't collide
-		env.removePackageFragmentRoot( projectPath, "" ); //$NON-NLS-1$
-
-		env.addPackageFragmentRoot( projectPath, "src" ); //$NON-NLS-1$
-		env.setOutputFolder( projectPath, "bin" ); //$NON-NLS-1$
-
-		TestUtil.createAndAddAnnotationJar( env
-			.getJavaProject( projectPath ) );
-	}
-	
-	public static String getProjectName() {
-		return JavaVersionTests.class.getName() + "Project"; //$NON-NLS-1$
-	}
-
-	public IPath getSourcePath() {
-		IProject project = env.getProject( getProjectName() );
-		IFolder srcFolder = project.getFolder( "src" ); //$NON-NLS-1$
-		IPath srcRoot = srcFolder.getFullPath();
-		return srcRoot;
-	}
-	
-	/**
-	 * Runs the MirrorTestAnnotationProcessor, which contains
-	 * the actual tests
-	 */
-	public void testMirror() throws Exception {
-		MirrorTestAnnotationProcessor._processRun = false;
-		
-		IProject project = env.getProject( getProjectName() );
-		IPath srcRoot = getSourcePath();
-		
-		String code = CodeExample.CODE;
-
-		env.addClass( 
-				srcRoot, 
-				CodeExample.CODE_PACKAGE, 
-				CodeExample.CODE_CLASS_NAME,
-				code );
-
-		fullBuild( project.getFullPath() );
-		
-		assertFalse("Processor was run", MirrorTestAnnotationProcessor._processRun); //$NON-NLS-1$
-	}
-	
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/MirrorDeclarationTests.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/MirrorDeclarationTests.java
deleted file mode 100644
index 214da7f..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/MirrorDeclarationTests.java
+++ /dev/null
@@ -1,181 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    sbandow@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests;
-
-import junit.framework.Test;
-import junit.framework.TestSuite;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jdt.apt.tests.annotations.ProcessorTestStatus;
-import org.eclipse.jdt.apt.tests.annotations.mirrortest.MirrorDeclarationCodeExample;
-import org.eclipse.jdt.core.tests.builder.Problem;
-
-public class MirrorDeclarationTests extends APTTestBase {
-
-	public MirrorDeclarationTests(final String name)
-	{
-		super(name);
-	}
-
-	public static Test suite()
-	{
-		return new TestSuite(MirrorDeclarationTests.class);
-	}
-	
-	public void setUp() throws Exception
-	{
-		super.setUp();
-		
-		IProject project = env.getProject( getProjectName() );
-		IPath srcRoot = getSourcePath();
-		String code = MirrorDeclarationCodeExample.CODE;
-		env.addClass(srcRoot, MirrorDeclarationCodeExample.CODE_PACKAGE, MirrorDeclarationCodeExample.CODE_CLASS_NAME, code);
-		fullBuild( project.getFullPath() );
-		expectingNoProblems();
-	}
-	
-	public void testMirrorDeclaration() throws Exception
-	{
-		assertEquals(ProcessorTestStatus.NO_ERRORS, ProcessorTestStatus.getErrors());
-	}
-	
-	public void testDefaultAndConstant() throws Exception
-	{	
-		IProject project = env.getProject( getProjectName() );
-		IPath srcRoot = getSourcePath();
-		String codeTrigger =
-			"package test;\n" +
-			"public @interface Trigger{}";
-		
-		env.addClass(srcRoot, "test", "Trigger", codeTrigger);
-		
-		String codeEntryPoint = "package test;\n" +
-								"@Trigger\n" +
-								"public class EntryPoint {\n" +
-								"    ClassWithNestedAnnotation nestedAnno;\n}";
-		
-		env.addClass(srcRoot, "test", "EntryPoint", codeEntryPoint);	
-		
-		String codeClassWithNestedAnnotation = 
-			"package test; \n" +
-			"public class ClassWithNestedAnnotation {\n" +
-			"	public final int FOUR = 4; \n " +
-			"	public @interface NestedAnnotation{\n" +
-			"		public enum Character{ \n" +
-			"			Winnie, Tiger, Piglet, Eore; \n" +
-			"		}\n"+
-			"		Character value() default Character.Eore; \n" +
-			"	}\n" +
-			"}";
-		
-		env.addClass(srcRoot, "test", "ClassWithNestedAnnotation", codeClassWithNestedAnnotation);
-		fullBuild( project.getFullPath() );
-		expectingNoProblems();
-	}
-	
-	/**
-	 * Test AST based mirror implementation and binding based mirror implementation.
-	 * Specifically,
-	 *   (i) method declaration with unresolvable return type.
-	 *  (ii) constructor declaration with unresolvable parameter
-	 * (iii) field declaration with unresolvable type.
-	 * 
-	 * This test focus on declarations from file in context.
-	 * 
-	 * @throws Exception
-	 */
-	public void testUnresolvableDeclarations0() 
-		throws Exception 
-	{
-		IProject project = env.getProject( getProjectName() );
-		IPath srcRoot = getSourcePath();
-		String declAnno =
-			"package test;\n" +
-			"public @interface DeclarationAnno{}";
-		
-		env.addClass(srcRoot, "test", "DeclarationAnno", declAnno);
-		
-		String codeFoo = 
-			"package test;\n" +
-			"@DeclarationAnno\n" +
-			"public class Foo {\n" +
-			"    int field0;\n " +
-			"    UnknownType field1;\n " +
-			"    public Foo(UnknownType type){} \n" +
-			"    public void voidMethod(){} \n " +
-			"    public UnknownType getType(){}\n " +
-			"    public class Inner{} \n" +
-			"}";
-		
-		final IPath fooPath = env.addClass(srcRoot, "test", "Foo", codeFoo);
-		fullBuild( project.getFullPath() );
-		
-		expectingOnlySpecificProblemsFor(fooPath, new Problem[]{
-				new Problem("", "UnknownType cannot be resolved to a type", fooPath),
-				new Problem("", "UnknownType cannot be resolved to a type", fooPath),
-				new Problem("", "UnknownType cannot be resolved to a type", fooPath)}
-		);
-	}
-	
-	/**
-	 * Test AST based mirror implementation and binding based mirror implementation.
-	 * Specifically,
-	 *   (i) method declaration with unresolvable return type.
-	 *  (ii) constructor declaration with unresolvable parameter
-	 * (iii) field declaration with unresolvable type.
-	 * 
-	 * This test focus on declarations from file outside of processor
-	 * environment context.
-	 * 
-	 * @throws Exception
-	 */
-	public void testUnresolvableDeclarations1() 
-		throws Exception 
-	{
-		IProject project = env.getProject( getProjectName() );
-		IPath srcRoot = getSourcePath();
-		String declAnno =
-			"package test;\n" +
-			"public @interface DeclarationAnno{}";
-		
-		env.addClass(srcRoot, "test", "DeclarationAnno", declAnno);		
-		
-		String codeBar = 
-			"package test;\n" +
-			"@DeclarationAnno\n" +
-			"public class Bar {}";		
-		env.addClass(srcRoot, "test", "Bar", codeBar);
-		
-		String codeFoo = 
-			"package test;\n" +
-			"@DeclarationAnno\n" +
-			"public class Foo {\n" +
-			"    int field0;\n " +
-			"    UnknownType field1;\n " +
-			"    public Foo(UnknownType type){} \n" +
-			"    public void voidMethod(){} \n " +
-			"    public UnknownType getType(){}\n " +
-			"    public class Inner{} \n" +
-			"}";
-		
-		final IPath fooPath = env.addClass(srcRoot, "test", "Foo", codeFoo);
-		
-		fullBuild( project.getFullPath() );
-		expectingOnlySpecificProblemsFor(fooPath, new Problem[]{
-				new Problem("", "UnknownType cannot be resolved to a type", fooPath),
-				new Problem("", "UnknownType cannot be resolved to a type", fooPath),
-				new Problem("", "UnknownType cannot be resolved to a type", fooPath)}
-		);
-	}
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/MirrorTests.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/MirrorTests.java
deleted file mode 100644
index de3f835..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/MirrorTests.java
+++ /dev/null
@@ -1,103 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    jgarms@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests;
-
-import junit.framework.Test;
-import junit.framework.TestSuite;
-
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jdt.apt.core.util.AptConfig;
-import org.eclipse.jdt.apt.tests.annotations.ProcessorTestStatus;
-import org.eclipse.jdt.apt.tests.annotations.mirrortest.CodeExample;
-import org.eclipse.jdt.apt.tests.annotations.mirrortest.MirrorTestAnnotationProcessor;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.tests.builder.Problem;
-import org.eclipse.jdt.core.tests.util.Util;
-
-public class MirrorTests extends APTTestBase {
-	
-	public MirrorTests(final String name) {
-		super( name );
-	}
-
-	public static Test suite() {
-		return new TestSuite( MirrorTests.class );
-	}
-	
-	/**
-	 * Runs the MirrorTestAnnotationProcessor, which contains
-	 * the actual tests
-	 */
-	public void testMirror() throws Exception {
-		MirrorTestAnnotationProcessor._processRun = false;
-		
-		IProject project = env.getProject( getProjectName() );
-		IPath srcRoot = getSourcePath();
-		
-		String code = CodeExample.CODE;
-
-		env.addClass( 
-				srcRoot, 
-				CodeExample.CODE_PACKAGE, 
-				CodeExample.CODE_CLASS_NAME,
-				code );
-
-		fullBuild( project.getFullPath() );
-
-		expectingNoProblems();
-		
-		assertTrue("Processor was not run", MirrorTestAnnotationProcessor._processRun); //$NON-NLS-1$
-		
-		assertEquals(ProcessorTestStatus.NO_ERRORS, ProcessorTestStatus.getErrors());
-	}
-	
-	public void testTypeParmaterAPI() throws Exception{
-		final String projName = MirrorTests.class.getName() + "TypeParameter.Project"; //$NON-NLS-1$
-		IPath projectPath = env.addProject( projName, "1.5" ); //$NON-NLS-1$
-		env.addExternalJars( projectPath, Util.getJavaClassLibs() );
-
-		env.removePackageFragmentRoot( projectPath, "" ); //$NON-NLS-1$
-		env.addPackageFragmentRoot( projectPath, "src" ); //$NON-NLS-1$
-		env.setOutputFolder( projectPath, "bin" ); //$NON-NLS-1$
-
-		TestUtil.createAndAddAnnotationJar( env
-			.getJavaProject( projectPath ) );
-		IProject project = env.getProject( projName );
-		IFolder srcFolder = project.getFolder( "src" );
-		IPath srcRoot = srcFolder.getFullPath();
-
-		String a1Code = "package pkg;\n" +
-			"import org.eclipse.jdt.apt.tests.annotations.apitest.Common;\n" +
-			"import java.lang.annotation.Annotation;\n" +
-			"@Common\n" +
-			"public class A1<T> {\n " +
-			"   @Common\n" + 
-			"   <A extends Annotation> A get(A a){ return a;}\n" +
-			"}\n";
-	
-		final IPath a1Path = env.addClass( srcRoot, "pkg", "A1", a1Code ); //$NON-NLS-1$ //$NON-NLS-2$
-		
-		// Set some per-project preferences
-		IJavaProject jproj = env.getJavaProject( projName );
-		AptConfig.setEnabled(jproj, true);
-		fullBuild( project.getFullPath() );
-		expectingNoMarkers();
-		expectingSpecificProblemsFor(a1Path, new Problem[]{
-				new Problem("", "Type parameter 'T' belongs to org.eclipse.jdt.apt.core.internal.declaration.ClassDeclarationImpl A1", a1Path),
-				new Problem("", "Type parameter 'A' belongs to org.eclipse.jdt.apt.core.internal.declaration.MethodDeclarationImpl get", a1Path)
-				}
-		);
-	}
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/MirrorUtilTests.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/MirrorUtilTests.java
deleted file mode 100644
index 640768f..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/MirrorUtilTests.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    sbandow@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests;
-
-import junit.framework.Test;
-import junit.framework.TestSuite;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IPath;
-
-import org.eclipse.jdt.apt.core.util.AptConfig;
-import org.eclipse.jdt.apt.tests.annotations.ProcessorTestStatus;
-import org.eclipse.jdt.apt.tests.annotations.mirrortest.MirrorUtilTestAnnotationProcessor;
-import org.eclipse.jdt.apt.tests.annotations.mirrortest.MirrorUtilTestCodeExample;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.tests.builder.Problem;
-
-public class MirrorUtilTests extends APTTestBase {
-
-	public MirrorUtilTests(final String name)
-	{
-		super(name);
-	}
-
-	public static Test suite()
-	{
-		return new TestSuite(MirrorUtilTests.class);
-	}
-	
-	public void setUp() throws Exception
-	{	
-		super.setUp();		
-		
-		IProject project = env.getProject( getProjectName() );
-		IJavaProject jproj = env.getJavaProject(project.getFullPath());
-		addEnvOptions(jproj);
-		IPath srcRoot = getSourcePath();
-		String code = MirrorUtilTestCodeExample.CODE;
-		env.addClass(srcRoot, MirrorUtilTestCodeExample.CODE_PACKAGE, MirrorUtilTestCodeExample.CODE_CLASS_NAME, code);
-		fullBuild( project.getFullPath() );
-		assertNoUnexpectedProblems();
-	}
-	
-	/**
-	 * Add options which the AnnotationProcessorEnvironment should see.
-	 * The options will be verified within the processor code.
-	 */
-	private void addEnvOptions(IJavaProject jproj) {
-		for (int i = 0; i < MirrorUtilTestAnnotationProcessor.ENV_KEYS.length; ++i) {
-			AptConfig.addProcessorOption(jproj, 
-					MirrorUtilTestAnnotationProcessor.ENV_KEYS[i], 
-					MirrorUtilTestAnnotationProcessor.ENV_VALUES[i]);
-		}
-	}
-
-	/**
-	 * 
-	 */
-	private void assertNoUnexpectedProblems() {
-		Problem[] problems = env.getProblems();
-		for (Problem problem : problems) {
-			if (problem.getMessage().startsWith("The field DeclarationsTestClass")) { //$NON-NLS-1$
-				continue;
-			}
-			fail("Found unexpected problem: " + problem); //$NON-NLS-1$
-		}
-	}
-	
-	public void testMirrorUtils() throws Exception
-	{
-		assertEquals(ProcessorTestStatus.NO_ERRORS, ProcessorTestStatus.getErrors());
-	}
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/MixedModeTesting.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/MixedModeTesting.java
deleted file mode 100644
index a7a75de..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/MixedModeTesting.java
+++ /dev/null
@@ -1,191 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    tyeung@bea.com - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jdt.apt.tests;
-
-import java.io.File;
-
-import junit.framework.Test;
-import junit.framework.TestSuite;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jdt.apt.core.internal.util.FactoryContainer;
-import org.eclipse.jdt.apt.core.internal.util.FactoryPath;
-import org.eclipse.jdt.apt.core.internal.util.FactoryPathUtil;
-import org.eclipse.jdt.apt.core.util.AptConfig;
-import org.eclipse.jdt.core.IJavaProject;
-
-public class MixedModeTesting extends APTTestBase{
-	
-	private File _extJar; // external annotation jar	
-	
-	public MixedModeTesting(String name){
-		super(name);
-	}
-	
-	
-	public static Test suite()
-	{	
-		return new TestSuite( MixedModeTesting.class );
-	}
-	
-	public void setUp() throws Exception
-	{
-		super.setUp();
-		IJavaProject javaProj = env.getJavaProject( getProjectName() );
-		_extJar = TestUtil.createAndAddExternalAnnotationJar(javaProj);
-				
-		// This file will be locked until GC takes care of unloading the
-		// annotation processor classes, so we can't delete it ourselves.
-		_extJar.deleteOnExit();
-		
-		FactoryPath fp = (FactoryPath)AptConfig.getFactoryPath(javaProj);
-		FactoryContainer fc = FactoryPathUtil.newExtJarFactoryContainer(_extJar);
-		fp.addEntryToHead(fc, /*isEnabled=*/ true, /*runInBatchMode=*/ true);
-		AptConfig.setFactoryPath(javaProj, fp);
-	}
-	
-	/**
-	 * Only one batch processor is involved 
-	 * This test the processor environment and that it returns the correct
-	 * set of declared types.
-	 */	
-	public void testSimpleBatchProcessing() throws Exception
-	{	
-		IProject project = env.getProject( getProjectName() );
-		IPath srcRoot = getSourcePath();
-		
-		String codeA = "package p1;\n"
-			+ "\n import org.eclipse.jdt.apt.tests.external.annotations.batch.*;"
-			+ "\n@Batch\n"
-			+ "public class A {}\n";
-		
-		env.addClass( srcRoot, "p1", "A", codeA );
-		
-		String codeB = "package p1;\n"
-			+ "\n@Deprecated\n"
-			+ "public class B {}\n";
-		
-		env.addClass( srcRoot, "p1", "B", codeB );
-		
-		String codeC = "package p1;\n"
-			+ "\n import org.eclipse.jdt.apt.tests.external.annotations.batch.*;"
-			+ "\n@Batch\n"
-			+ "public class C {}\n";
-		
-		env.addClass( srcRoot, "p1", "C", codeC );
-		
-		// This one doesn't have annotations.
-		String codeD = "package p1; public class D{}";
-		env.addClass( srcRoot, "p1", "D", codeD );
-
-		fullBuild( project.getFullPath() );		
-		expectingNoProblems();
-		expectingMarkers(new String[]{"CompletedSuccessfully"});
-	}
-	
-	/**
-	 * What this tests test.
-	 * This makes sure the internal apt rounding occurs correctly in batch mode.
-	 * @throws CoreException
-	 */
-	public void testAPTRoundingInMixedMode0() throws CoreException
-	{
-		IProject project = env.getProject( getProjectName() );
-		IPath srcRoot = getSourcePath();
-		
-		String codeX = "package p1;\n"
-			+ "\n import org.eclipse.jdt.apt.tests.annotations.aptrounding.*;"
-			+ "\n@GenBean\n"
-			+ "public class X {}\n";
-		
-		env.addClass( srcRoot, "p1", "X", codeX );
-		
-		String codeY = "package p1;\n"
-			+ "\n import org.eclipse.jdt.apt.tests.annotations.aptrounding.*;"
-			+ "public class Y { @GenBean2 test.Bean _bean = null; }\n";
-		
-		env.addClass( srcRoot, "p1", "Y", codeY );
-		
-		String codeA = "package p1;\n"
-			+ "\n import org.eclipse.jdt.apt.tests.external.annotations.batch.*;"
-			+ "\n@Batch\n"
-			+ "public class A {}\n";
-		
-		env.addClass( srcRoot, "p1", "A", codeA );
-		
-		String codeB = "package p1;\n"
-			+ "\n@Deprecated\n"
-			+ "public class B {}\n";
-		
-		env.addClass( srcRoot, "p1", "B", codeB );
-		
-		String codeC = "package p1;\n"
-			+ "\n import org.eclipse.jdt.apt.tests.external.annotations.batch.*;"
-			+ "\n@Batch\n"
-			+ "public class C {}\n";
-		
-		env.addClass( srcRoot, "p1", "C", codeC );
-		
-		// This one doesn't have annotations.
-		String codeD = "package p1; public class D{}";
-		env.addClass( srcRoot, "p1", "D", codeD );
-
-		fullBuild( project.getFullPath() );
-		expectingMarkers(new String[]{"CompletedSuccessfully", "Called 2 times."});
-		
-		expectingNoProblems();
-		
-		// Now run it again to verify that the classloader was successfully bounced
-		fullBuild( project.getFullPath() );
-		expectingMarkers(new String[]{"CompletedSuccessfully", "Called 2 times."});
-		
-		expectingNoProblems();
-	}
-	
-	/* 
-	 * What this test tests.
-	 * There should be a total of 3 rounds. 
-	 * -The first round starts because of the "BatchGen" annotations.
-	 *  This round creates the gen.Class0 type
-	 * -The second round starts because of a batch processor being dispatched in a previous round
-	 * and a new type is generated. 
-	 *  This round creates the gen.Class1 type
-	 * -The third round starts for the exact same reason as round 2.
-	 *  This is a no-op round.
-	 */
-
-	public void testAPTRoundingInMixedMode1() throws CoreException
-	{
-		IProject project = env.getProject( getProjectName() );
-		IPath srcRoot = getSourcePath();
-		
-		String codeA = "package p1;\n"
-			+ "\n import org.eclipse.jdt.apt.tests.external.annotations.batch.*;"
-			+ "\n@BatchGen\n"
-			+ "public class A {" 
-			+ "   gen.Class0 clazz0;\n"
-			+ "   gen.Class1 clazz1;\n" 
-			+ "}\n";
-		
-		env.addClass( srcRoot, "p1", "A", codeA );
-		
-		// drop something to possibily fire off an incremental build
-		String codeB = "package p1;\n"
-			+ "public class B {}\n";
-		
-		env.addClass( srcRoot, "p1", "B", codeB );
-		fullBuild( project.getFullPath() );
-		expectingNoProblems();
-		expectingMarkers(new String[]{"Called the third time."});
-	}
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/PerfTests.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/PerfTests.java
deleted file mode 100644
index 3c35bfa..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/PerfTests.java
+++ /dev/null
@@ -1,161 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    mkaufman@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests;
-
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.InputStream;
-import java.net.URL;
-import java.util.zip.ZipInputStream;
-
-import junit.framework.Test;
-import junit.framework.TestSuite;
-
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.IWorkspaceRoot;
-import org.eclipse.core.resources.IncrementalProjectBuilder;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.jdt.apt.core.util.AptConfig;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jdt.core.tests.builder.Problem;
-import org.eclipse.jdt.core.tests.builder.Tests;
-
-public class PerfTests extends Tests
-{
-	
-	private IPath projectPath;
-
-	public PerfTests(String name)
-	{
-		super( name );
-	}
-
-	public static Test suite()
-	{
-		return new TestSuite( PerfTests.class );
-	}
-
-	public void setUp() throws Exception
-	{
-		super.setUp();
-		
-		IWorkspace ws = env.getWorkspace();
-		IWorkspaceRoot root = ws.getRoot();
-		IPath path = root.getLocation();
-		File destRoot = path.toFile();
-		
-		URL platformURL = Platform.getBundle("org.eclipse.jdt.apt.tests").getEntry("/");  //$NON-NLS-1$//$NON-NLS-2$
-		File f = new File(Platform.asLocalURL(platformURL).getFile());
-		f = new File(f, "perf-test-project.zip"); //$NON-NLS-1$
-
-		
-		//InputStream in = PerfTests.class.getClassLoader().getResourceAsStream("perf-test-project.zip");
-		InputStream in = new FileInputStream(f);
-		ZipInputStream zipIn = new ZipInputStream(in);
-		try {
-			TestUtil.unzip(zipIn, destRoot);
-		}
-		finally {
-			zipIn.close();
-		}
-		
-		// project will be deleted by super-class's tearDown() method
-		projectPath = env.addProject( "org.eclipse.jdt.core", "1.4" ); //$NON-NLS-1$ //$NON-NLS-2$
-		
-		System.out.println("Performing full build..."); //$NON-NLS-1$
-		fullBuild( projectPath );
-		System.out.println("Completed build."); //$NON-NLS-1$
-		
-		assertNoUnexpectedProblems();
-		
-	}
-	
-	/**
-	 * JDT Core has one warning on the use of IWorkingCopy, and a number
-	 * of TODOs, XXXs and FIXMEs.
-	 */
-	@SuppressWarnings("nls")
-	private void assertNoUnexpectedProblems() {
-		Problem[] problems = env.getProblems();
-		for (Problem problem : problems) {
-			if (problem.getMessage().startsWith("TODO") || 
-				problem.getMessage().startsWith("XXX") ||
-				problem.getMessage().startsWith("FIXME")) {
-				continue;
-			}
-			else {
-				if (problem.getMessage().equals("The type IWorkingCopy is deprecated"))
-					continue;
-			}
-			fail("Found unexpected problem: " + problem);
-		}
-	}
-	
-	public static String getProjectName()
-	{
-		return PerfTests.class.getName() + "Project"; //$NON-NLS-1$
-	}
-
-	public IPath getSourcePath()
-	{
-		IProject project = env.getProject( getProjectName() );
-		IFolder srcFolder = project.getFolder( "src" ); //$NON-NLS-1$
-		IPath srcRoot = srcFolder.getFullPath();
-		return srcRoot;
-	}
-	
-	@SuppressWarnings("nls")
-	public void testBuilding() throws Throwable {
-		IProject proj = env.getProject(projectPath);
-		IJavaProject jproj = JavaCore.create(proj); // doesn't actually create anything
-		
-		assertNoUnexpectedProblems();
-		
-		// Start with APT turned off
-		AptConfig.setEnabled(jproj, false);
-		proj.build(IncrementalProjectBuilder.CLEAN_BUILD, null);
-		
-		assertNoUnexpectedProblems();
-		
-		System.out.println("Performing full build without apt...");
-		long start = System.currentTimeMillis();
-		proj.build(IncrementalProjectBuilder.FULL_BUILD, null);
-		long totalWithoutAPT = System.currentTimeMillis() - start;
-		System.out.println("Completed full build without APT in " + totalWithoutAPT + "ms.");
-		
-		assertNoUnexpectedProblems();
-		
-		// Now turn on APT
-		AptConfig.setEnabled(jproj, true);
-		proj.build(IncrementalProjectBuilder.CLEAN_BUILD, null);
-		
-		assertNoUnexpectedProblems();
-		
-		System.out.println("Performing full build with apt...");
-		start = System.currentTimeMillis();
-		proj.build(IncrementalProjectBuilder.FULL_BUILD, null);
-		long totalWithAPT = System.currentTimeMillis() - start;
-		System.out.println("Completed full build with APT in " + totalWithAPT + "ms.");
-		
-		assertNoUnexpectedProblems();
-		
-		if (totalWithAPT > totalWithoutAPT * 1.15) {
-			fail("APT performance degradation greater than 15%");
-		}
-	}
-	
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/PreferencesTests.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/PreferencesTests.java
deleted file mode 100644
index d8627ce..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/PreferencesTests.java
+++ /dev/null
@@ -1,308 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    jgarms@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests;
-
-import java.io.File;
-import java.util.HashMap;
-import java.util.LinkedHashMap;
-import java.util.Map;
-
-import junit.framework.Test;
-import junit.framework.TestSuite;
-
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jdt.apt.core.AptPlugin;
-import org.eclipse.jdt.apt.core.internal.generatedfile.GeneratedSourceFolderManager;
-import org.eclipse.jdt.apt.core.internal.util.FactoryContainer;
-import org.eclipse.jdt.apt.core.internal.util.FactoryPath;
-import org.eclipse.jdt.apt.core.internal.util.FactoryPathUtil;
-import org.eclipse.jdt.apt.core.internal.util.FactoryContainer.FactoryType;
-import org.eclipse.jdt.apt.core.util.AptConfig;
-import org.eclipse.jdt.apt.core.util.AptPreferenceConstants;
-import org.eclipse.jdt.core.IClasspathEntry;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.JavaModelException;
-import org.eclipse.jdt.core.tests.util.Util;
-
-public class PreferencesTests extends APTTestBase {
-	
-	public PreferencesTests(final String name) {
-		super( name );
-	}
-
-	public static Test suite() {
-		return new TestSuite( PreferencesTests.class );
-	}	
-	
-	public void testFactoryPathEncodingAndDecoding() throws Exception {
-		//encode
-		Map<FactoryContainer, FactoryPath.Attributes> factories = new LinkedHashMap<FactoryContainer, FactoryPath.Attributes>();
-		FactoryContainer jarFactory1 = FactoryPathUtil.newExtJarFactoryContainer(new File("C:/test1.jar")); //$NON-NLS-1$
-		FactoryPath.Attributes jarFPA1 = new FactoryPath.Attributes(true, false);
-		FactoryContainer jarFactory2 = FactoryPathUtil.newExtJarFactoryContainer(new File("C:/test2.jar")); //$NON-NLS-1$
-		FactoryPath.Attributes jarFPA2 = new FactoryPath.Attributes(true, true);
-		FactoryContainer pluginFactory = FactoryPathUtil.getPluginFactoryContainer("org.eclipse.jdt.apt.tests"); //$NON-NLS-1$
-		FactoryPath.Attributes pluginFPA = new FactoryPath.Attributes(false, false);
-		factories.put(jarFactory1, jarFPA1);
-		factories.put(jarFactory2, jarFPA2);
-		factories.put(pluginFactory, pluginFPA);
-		String xml = FactoryPathUtil.encodeFactoryPath(factories);
-		assertEquals(serializedFactories, xml);
-		
-		// decode
-		factories = FactoryPathUtil.decodeFactoryPath(xml);
-		assertEquals(3, factories.size());
-
-		int index=0;
-		for (Map.Entry<FactoryContainer, FactoryPath.Attributes> entry : factories.entrySet()) {
-			FactoryContainer container = entry.getKey();
-			switch (index) {
-			case 0:
-				// jar1
-				assertEquals(FactoryType.EXTJAR, container.getType());
-				assertTrue(entry.getValue().isEnabled());
-				assertFalse(entry.getValue().runInBatchMode());
-				break;
-			case 1:
-				// jar2
-				assertEquals(FactoryType.EXTJAR, container.getType());
-				assertTrue(entry.getValue().isEnabled());
-				assertTrue(entry.getValue().runInBatchMode());
-				break;
-			case 2:
-				// plugin
-				assertEquals(FactoryType.PLUGIN, container.getType());
-				assertFalse(entry.getValue().isEnabled());
-				assertEquals("org.eclipse.jdt.apt.tests", container.getId()); //$NON-NLS-1$
-				break;
-			default:
-				fail("FactoryPath had an unexpected number of entries: " + (index + 1));
-			}
-		
-			index++;
-		}
-	}
-	
-	@SuppressWarnings("nls")
-	private static final String serializedFactories = 
-		"<factorypath>\n" + 
-		"    <factorypathentry kind=\"EXTJAR\" id=\"C:\\test1.jar\" enabled=\"true\" runInBatchMode=\"false\"/>\n" + 
-		"    <factorypathentry kind=\"EXTJAR\" id=\"C:\\test2.jar\" enabled=\"true\" runInBatchMode=\"true\"/>\n" + 
-		"    <factorypathentry kind=\"PLUGIN\" id=\"org.eclipse.jdt.apt.tests\" enabled=\"false\" runInBatchMode=\"false\"/>\n" + 
-		"</factorypath>\n";
-	
-	/**
-	 * Test the config API for settings other than factory path
-	 * @throws Exception
-	 */
-	@SuppressWarnings("nls")
-	public void testSimpleConfigApi() throws Exception {
-		IJavaProject jproj = env.getJavaProject( getProjectName() );
-		
-		// aptEnabled
-		AptConfig.setEnabled(jproj, false);
-		assertFalse(AptConfig.isEnabled(jproj));
-		assertFalse(AptConfig.isEnabled(null));
-		AptConfig.setEnabled(jproj, true);
-		assertTrue(AptConfig.isEnabled(jproj));
-		assertFalse(AptConfig.isEnabled(null));
-		
-		// processorOptions
-		Map<String, String> wkspOpts = new HashMap<String, String>(3);
-		wkspOpts.put("b", "bVal");
-		wkspOpts.put("another option", "and\\more \"punctuation!\"");
-		AptConfig.setProcessorOptions(wkspOpts, null);
-		Map<String, String> retrievedWkspOpts = AptConfig.getRawProcessorOptions(null);
-		assertTrue("getRawProcessorOptions() should return the values set in setProcessorOptions()", 
-				wkspOpts.equals(retrievedWkspOpts));
-
-		Map<String, String> projOpts = new HashMap<String, String>(3);
-		projOpts.put("a", "aVal");
-		projOpts.put("with spaces", "value also has spaces");
-		projOpts.put("foo", "bar");
-		AptConfig.setProcessorOptions(projOpts, jproj);
-		Map<String, String> retrievedProjOpts = AptConfig.getRawProcessorOptions(jproj);
-		assertTrue("getRawProcessorOptions() should return the values set in setProcessorOptions()", 
-				projOpts.equals(retrievedProjOpts));
-
-		wkspOpts.clear();
-		wkspOpts.put("noodle", "nubble");
-		wkspOpts.put("spoo/mack", "wumpus");
-		AptConfig.setProcessorOptions(wkspOpts, null);
-		retrievedWkspOpts = AptConfig.getRawProcessorOptions(null);
-		assertTrue("getRawProcessorOptions() should return the values set in setProcessorOptions()", 
-				wkspOpts.equals(retrievedWkspOpts));
-
-		projOpts.clear();
-		projOpts.put("smurf", "more smurfs\\=bad");
-		projOpts.put("baz/quack", "quux");
-		AptConfig.setProcessorOptions(projOpts, jproj);
-		retrievedProjOpts = AptConfig.getRawProcessorOptions(jproj);
-		assertTrue("getRawProcessorOptions() should return the values set in setProcessorOptions()", 
-				projOpts.equals(retrievedProjOpts));
-
-		AptConfig.addProcessorOption(jproj, "foo", "bar");
-		AptConfig.addProcessorOption(jproj, "space", "\"text with spaces\"");
-		AptConfig.addProcessorOption(jproj, "quux", null);
-		AptConfig.addProcessorOption(jproj, "quux", null); // adding twice should have no effect
-		Map<String, String> options = AptConfig.getProcessorOptions(jproj);
-		String val = options.get("foo");
-		assertEquals(val, "bar");
-		val = options.get("quux");
-		assertNull(val);
-		val = options.get("space");
-		assertEquals(val, "\"text with spaces\"");
-		AptConfig.removeProcessorOption(jproj, "foo");
-		options = AptConfig.getProcessorOptions(jproj);
-		assertFalse(options.containsKey("foo"));
-		assertTrue(options.containsKey("quux"));
-		AptConfig.removeProcessorOption(jproj, "quux");
-		AptConfig.removeProcessorOption(jproj, "anOptionThatDoesn'tExist");
-		
-		AptConfig.addProcessorOption(null, "workspace option", "corresponding value");
-		AptConfig.addProcessorOption(null, "foo", "whatever");
-		AptConfig.removeProcessorOption(null, "foo");
-		options = AptConfig.getProcessorOptions(null);
-		assertFalse(options.containsKey("foo"));
-		assertTrue(options.containsKey("workspace option"));
-		AptConfig.removeProcessorOption(null, "workspace option");
-	}
-	
-	/**
-	 * Test the config API for automatically generated options.
-	 */
-	@SuppressWarnings("nls")
-	public void testAutomaticOptions() throws Exception {
-		IJavaProject jproj = env.getJavaProject( getProjectName() );
-		Map<String,String> options = AptConfig.getProcessorOptions(jproj);
-		
-		String classpath = options.get("-classpath");
-		assertNotNull(classpath);
-		assertTrue(classpath.length() > 0);
-		
-		String sourcepath = options.get("-sourcepath");
-		assertNotNull(sourcepath);
-		assertTrue(sourcepath.length() > 0);
-		
-		String target = options.get("-target");
-		assertEquals(target, "1.5");
-		
-		String source = options.get("-source");
-		assertEquals(source, "1.5");
-		
-		String bindir = options.get("-d");
-		assertNotNull(bindir);
-		assertTrue(bindir.length() > 0);
-		
-		String gensrcdirAuto = options.get("-s");
-		assertNotNull(gensrcdirAuto);
-		assertTrue(gensrcdirAuto.length() > 0);
-	}
-	
-	public void testGenSrcDir() throws Exception {
-		IJavaProject jproj = env.getJavaProject( getProjectName() );
-		String genSrcDir = AptConfig.getGenSrcDir(jproj);
-		assertEquals(AptPreferenceConstants.DEFAULT_GENERATED_SOURCE_FOLDER_NAME, genSrcDir);
-		
-		final String newDir = "gen/src";
-		AptConfig.setGenSrcDir(jproj, newDir);
-		genSrcDir = AptConfig.getGenSrcDir(jproj);
-		
-		assertEquals(newDir, genSrcDir);
-		
-	}
-	
-	/**
-	 * Test a series of configuration and make sure the GeneratedFileManager and 
-	 * the classpath reflecting the setup. Configuration setting includes 
-	 * enabling and disabling apt and configure the generated source folder 
-	 * with and without apt enabled.
-	 * 
-	 * See comments in method body for detail testing scenarios
-	 * @throws Exception
-	 */
-	public void testConfigGenSrcDir() throws Exception {
-		
-		final String projectName = "ConfigTestProj";		
-		IPath projectPath = env.addProject( projectName, "1.5" );
-		env.addExternalJars( projectPath, Util.getJavaClassLibs() );
-		final IJavaProject javaProj = env.getJavaProject(projectName);
-		// APT is not enabled
-		boolean aptEnabled = AptConfig.isEnabled(javaProj);
-		// test 1: make sure apt is disabled by default
-		assertEquals(false, aptEnabled);
-		final GeneratedSourceFolderManager gsfm = AptPlugin.getAptProject(javaProj).getGeneratedSourceFolderManager();
-		IFolder srcFolder = gsfm.getFolder();
-		String folderName = srcFolder.getProjectRelativePath().toOSString();
-		// test 2: apt is disabled, then folder should not exists 
-		assertEquals(srcFolder.exists(), false);
-		// test 3: folder name has not been configured, then it should be the default.
-		// folder name should be the default name.
-		assertEquals(folderName, AptPreferenceConstants.DEFAULT_GENERATED_SOURCE_FOLDER_NAME);
-		
-		// set folder name while apt is disabled
-		String newName = ".gensrcdir";
-		AptConfig.setGenSrcDir(javaProj, newName);
-		srcFolder = gsfm.getFolder();
-		folderName = srcFolder.getProjectRelativePath().toOSString();
-		// test 4: apt still disabled but folder name changed, make sure the folder is not on disk.
-		assertEquals(false, srcFolder.exists());
-		// test 5: make sure we got the new name
-		assertEquals(newName, folderName);
-		// test 6: make sure the source folder is not on the classpath.
-		assertEquals( false, isOnClasspath(javaProj, srcFolder.getFullPath()) );
-		
-		// enable apt
-		AptConfig.setEnabled(javaProj, true);
-		aptEnabled = AptConfig.isEnabled(javaProj);
-		// test 7: make sure it's enabled after we called the API to enable it. 
-		assertEquals(true, aptEnabled);
-		srcFolder = gsfm.getFolder();		
-		folderName = srcFolder.getProjectRelativePath().toOSString();
-		// test 8: apt enabled, the source folder should be on disk
-		assertEquals(true, srcFolder.exists());
-		// test 9: make sure the name matches
-		assertEquals(newName, folderName);
-		// test 10: apt is enabled, folder must be on classpath.
-		assertEquals( true, isOnClasspath(javaProj, srcFolder.getFullPath()) );
-		
-		// now disable apt.
-		AptConfig.setEnabled(javaProj, false);
-		aptEnabled = AptConfig.isEnabled(javaProj);
-		// test 11: make sure it's disabled.
-		assertEquals(false, aptEnabled);
-		srcFolder = gsfm.getFolder();
-		folderName = srcFolder.getProjectRelativePath().toOSString();
-		// test 12: make sure we deleted the source folder when we disable apt
-		assertEquals(false, srcFolder.exists());
-		// test 13: make sure we didn't overwrite the configure folder name
-		assertEquals(newName, folderName);
-		// test 14: make sure we cleaned up the classpath.
-		assertEquals( false, isOnClasspath(javaProj, srcFolder.getFullPath()) );
-	}
-	
-	private boolean isOnClasspath(IJavaProject javaProj, IPath path)
-			throws JavaModelException
-	{		
-		final IClasspathEntry[] cp = javaProj.getRawClasspath();
-		for (int i = 0; i < cp.length; i++) 
-		{
-			if (cp[i].getPath().equals( path )) 
-			{
-				return true;
-			}
-		}
-		return false;
-	}
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/ReadAnnotationTests.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/ReadAnnotationTests.java
deleted file mode 100644
index 94a8a40..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/ReadAnnotationTests.java
+++ /dev/null
@@ -1,193 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    tyeung@bea.com - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jdt.apt.tests;
-
-import java.io.File;
-
-import junit.framework.Test;
-import junit.framework.TestSuite;
-
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jdt.apt.tests.annotations.ProcessorTestStatus;
-import org.eclipse.jdt.apt.tests.annotations.readannotation.CodeExample;
-import org.eclipse.jdt.apt.tests.plugin.AptTestsPlugin;
-import org.eclipse.jdt.core.tests.builder.Tests;
-import org.eclipse.jdt.core.tests.util.Util;
-
-public class ReadAnnotationTests extends Tests 
-{
-	private int counter = 0;
-	private String projectName = null;
-	public ReadAnnotationTests(final String name) {
-		super( name );
-	}
-
-	public static Test suite() {
-		return new TestSuite( ReadAnnotationTests.class );
-	}
-	
-	public String getProjectName() {
-		return projectName;
-	}
-	
-	public String getUniqueProjectName(){
-		projectName = ReadAnnotationTests.class.getName() + "Project" + counter; //$NON-NLS-1$
-		counter ++;
-		return projectName;
-	}
-	
-
-	public IPath getSourcePath() {
-		IProject project = env.getProject( getProjectName() );
-		IFolder srcFolder = project.getFolder( "src" ); //$NON-NLS-1$
-		IPath srcRoot = srcFolder.getFullPath();
-		return srcRoot;
-	}
-	
-	public IPath getBinaryPath(){
-		IProject project = env.getProject( getProjectName() );
-		IFolder srcFolder = project.getFolder( "binary" ); //$NON-NLS-1$
-		IPath lib = srcFolder.getFullPath();
-		return lib;
-	}
-	
-	public IPath getOutputPath(){
-		IProject project = env.getProject( getProjectName() );
-		IFolder binFolder = project.getFolder( "bin" ); //$NON-NLS-1$
-		IPath bin = binFolder.getFullPath();
-		return bin;
-	}
-	
-	private void addAllSources()
-	{
-		addQuestionSources();
-		addTriggerSource();
-	}
-	
-	private void addQuestionSources()
-	{
-		IPath srcRoot = getSourcePath();
-		// SimpleAnnotation.java
-		env.addClass( 
-				srcRoot, 
-				CodeExample.PACKAGE_QUESTION, 
-				CodeExample.SIMPLE_ANNOTATION_CLASS,
-				CodeExample.SIMPLE_ANNOTATION_CODE );
-		
-		// RTVisibleAnnotation.java
-		env.addClass(
-				srcRoot,
-				CodeExample.PACKAGE_QUESTION, 
-				CodeExample.RTVISIBLE_CLASS,
-				CodeExample.RTVISIBLE_ANNOTATION_CODE);
-		
-		// RTInvisibleAnnotation.java
-		env.addClass(
-				srcRoot,
-				CodeExample.PACKAGE_QUESTION, 
-				CodeExample.RTINVISIBLE_CLASS,
-				CodeExample.RTINVISIBLE_ANNOTATION_CODE);
-		
-		// package-info.java
-		env.addClass(
-				srcRoot,
-				CodeExample.PACKAGE_QUESTION, 
-				CodeExample.PACKAGE_INFO_CLASS,
-				CodeExample.PACKAGE_INFO_CODE);
-		
-		// Color.java
-		env.addClass(
-				srcRoot,
-				CodeExample.PACKAGE_QUESTION, 
-				CodeExample.COLOR_CLASS,
-				CodeExample.COLOR_CODE);
-		
-		// AnnotationTest.java
-		env.addClass(
-				srcRoot,
-				CodeExample.PACKAGE_QUESTION, 
-				CodeExample.ANNOTATION_TEST_CLASS,
-				CodeExample.ANNOTATION_TEST_CODE);
-	}
-	
-	private void addTriggerSource()
-	{
-		IPath srcRoot = getSourcePath();
-		// MyMarkerAnnotation.java
-		env.addClass(srcRoot,
-				CodeExample.PACKAGE_TRIGGER,
-				CodeExample.MYMARKERANNOTATION_CLASS,
-				CodeExample.MYMARKERANNOTATION_CODE);
-		
-		// Trigger.java
-		env.addClass(srcRoot,
-				CodeExample.PACKAGE_TRIGGER,
-				CodeExample.TRIGGER_CLASS,
-				CodeExample.TRIGGER_CODE);
-	}
-	
-	private IProject setupTest() throws Exception
-	{				
-		ProcessorTestStatus.reset();
-		// project will be deleted by super-class's tearDown() method
-		IPath projectPath = env.addProject( getUniqueProjectName(), "1.5" ); //$NON-NLS-1$
-		env.setOutputFolder(projectPath, "bin"); //$NON-NLS-1$ 
-		env.addExternalJars( projectPath, Util.getJavaClassLibs() );
-		fullBuild( projectPath );
-
-		// remove old package fragment root so that names don't collide
-		env.removePackageFragmentRoot( projectPath, "" ); //$NON-NLS-1$
-
-		env.addPackageFragmentRoot( projectPath, "src" ); //$NON-NLS-1$
-		return env.getProject(getProjectName());
-	}
-	
-	/**
-	 * Set up all the source files for testing.
-	 * Runs the AnnotationReaderProcessor, which contains
-	 * the actual testing.
-	 */
-
-	public void test0() throws Exception {
-		// reset the error reset the error;
-		IProject project = setupTest();	
-		addAllSources();	
-		fullBuild( project.getFullPath() );
-		expectingNoProblems();
-		
-		assertEquals(ProcessorTestStatus.NO_ERRORS, ProcessorTestStatus.getErrors());
-	}
-
-	/**
-	 * Set up the jar file for testing.
-	 * Runs the AnnotationReaderProcessor, which contains
-	 * the actual testing.
-	 */
-	public void test1() throws Exception 
-	{	
-		IProject project = setupTest();
-		final File jar = 
-			TestUtil.getFileInPlugin(AptTestsPlugin.getDefault(), 
-									 new Path("/src/org/eclipse/jdt/apt/tests/annotations/readannotation/lib/question.jar")); //$NON-NLS-1$
-		final String path = jar.getAbsolutePath();
-		env.addExternalJar(project.getFullPath(), path);
-				
-		addTriggerSource();
-		
-		fullBuild( project.getFullPath() );
-		expectingNoProblems();
-
-		assertEquals(ProcessorTestStatus.NO_ERRORS, ProcessorTestStatus.getErrors());
-	}	
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/RegressionTests.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/RegressionTests.java
deleted file mode 100644
index b197ebd..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/RegressionTests.java
+++ /dev/null
@@ -1,178 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *   wharley@bea.com - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests;
-
-import junit.framework.Test;
-import junit.framework.TestSuite;
-
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jdt.apt.core.util.AptConfig;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.tests.builder.Problem;
-import org.eclipse.jdt.core.tests.builder.Tests;
-import org.eclipse.jdt.core.tests.util.Util;
-
-/**
- * 
- */
-public class RegressionTests extends Tests {
-
-	public RegressionTests(String name) {
-		super(name);
-	}
-
-	public static Test suite()
-	{
-		return new TestSuite( RegressionTests.class );
-	}
-
-	public static String getProjectName()
-	{
-		return RegressionTests.class.getName() + "Project"; //$NON-NLS-1$
-	}
-
-	public void setUp() throws Exception
-	{
-		super.setUp();
-	}
-	
-	/**
-	 * Bugzilla 104032: NPE when deleting project that has APT settings.
-	 */
-	@SuppressWarnings("nls")
-	public void testBugzilla104032() throws Exception
-	{
-		// set up project with unique name
-		final String projName = RegressionTests.class.getName() + "104032.Project"; //$NON-NLS-1$
-		IPath projectPath = env.addProject( projName, "1.5" ); //$NON-NLS-1$
-		env.addExternalJars( projectPath, Util.getJavaClassLibs() );
-
-		env.removePackageFragmentRoot( projectPath, "" ); //$NON-NLS-1$
-		env.addPackageFragmentRoot( projectPath, "src" ); //$NON-NLS-1$
-		env.setOutputFolder( projectPath, "bin" ); //$NON-NLS-1$
-
-		TestUtil.createAndAddAnnotationJar( env
-			.getJavaProject( projectPath ) );
-		IProject project = env.getProject( projName );
-		IFolder srcFolder = project.getFolder( "src" );
-		IPath srcRoot = srcFolder.getFullPath();
-
-		String a1Code = "package p1; " + "\n"
-			+ "import org.eclipse.jdt.apt.tests.annotations.helloworld.HelloWorldAnnotation;" + "\n"
-			+ "@HelloWorldAnnotation" + "\n"
-			+ "public class A1 {}";
-		String a2Code = "package p1; " + "\n"
-			+ "import org.eclipse.jdt.apt.tests.annotations.helloworld.HelloWorldAnnotation;" + "\n"
-			+ "@HelloWorldAnnotation" + "\n"
-			+ "public class A2 {}";
-		String bCode = "package p1; " + "\n"
-			+ "public class B { generatedfilepackage.GeneratedFileTest gft; }";
-		env.addClass( srcRoot, "p1", "A1", a1Code ); //$NON-NLS-1$ //$NON-NLS-2$
-		env.addClass( srcRoot, "p1", "A2", a2Code ); //$NON-NLS-1$ //$NON-NLS-2$
-		env.addClass( srcRoot, "p1", "B", bCode ); //$NON-NLS-1$ //$NON-NLS-2$
-		
-		// Set some per-project preferences
-		IJavaProject jproj = env.getJavaProject( projName );
-		AptConfig.addProcessorOption(jproj, "test.104032.a", "foo");
-		AptConfig.setEnabled(jproj, true);
-		
-		fullBuild( project.getFullPath() );
-		expectingNoProblems();
-		
-		// Now delete the project!
-		ResourcesPlugin.getWorkspace().delete(new IResource[] { project }, true, null);
-
-	}
-    
-	/**
-	 * Tests annotation proxies
-	 */
-    public void testBugzilla106541() throws Exception
-    {
-        final String projName = RegressionTests.class.getName() + "104032.Project"; //$NON-NLS-1$
-        IPath projectPath = env.addProject( projName, "1.5" ); //$NON-NLS-1$
-        env.addExternalJars( projectPath, Util.getJavaClassLibs() );
-
-        env.removePackageFragmentRoot( projectPath, "" ); //$NON-NLS-1$
-        env.addPackageFragmentRoot( projectPath, "src" ); //$NON-NLS-1$
-        env.setOutputFolder( projectPath, "bin" ); //$NON-NLS-1$
-
-        IJavaProject javaProject = env.getJavaProject( projectPath ) ;
-		AptConfig.setEnabled(javaProject, true);
-        TestUtil.createAndAddAnnotationJar(javaProject);
-        IProject project = env.getProject( projName );
-        IFolder srcFolder = project.getFolder( "src" );
-        IPath srcRoot = srcFolder.getFullPath();
-
-        String code = "package p1; " + "\n"
-        + "import org.eclipse.jdt.apt.tests.annotations.readAnnotationType.SimpleAnnotation;" + "\n"
-        + "@SimpleAnnotation(SimpleAnnotation.Name.HELLO)" + "\n"
-        + "public class MyClass { \n"
-        + " public test.HELLOGen _gen;"
-        + " }";
-        
-        env.addClass( srcRoot, "p1", "MyClass", code );
-        
-        fullBuild( project.getFullPath() );
-        expectingNoProblems();
-        
-        // Now delete the project!
-        ResourcesPlugin.getWorkspace().delete(new IResource[] { project }, true, null);
-
-    }
-    
-    // doesn't work because of a jdt.core type system universe problem.
-    public void testBugzilla120255() throws Exception{
-    	final String projName = RegressionTests.class.getName() + "120255.Project"; //$NON-NLS-1$
-		IPath projectPath = env.addProject( projName, "1.5" ); //$NON-NLS-1$
-		env.addExternalJars( projectPath, Util.getJavaClassLibs() );
-
-		env.removePackageFragmentRoot( projectPath, "" ); //$NON-NLS-1$
-		env.addPackageFragmentRoot( projectPath, "src" ); //$NON-NLS-1$
-		env.setOutputFolder( projectPath, "bin" ); //$NON-NLS-1$
-
-		TestUtil.createAndAddAnnotationJar( env
-			.getJavaProject( projectPath ) );
-		IProject project = env.getProject( projName );
-		IFolder srcFolder = project.getFolder( "src" );
-		IPath srcRoot = srcFolder.getFullPath();
-
-		String a1Code = "package pkg; " + "\n"
-			+ "import org.eclipse.jdt.apt.tests.annotations.apitest.Common;\n" 
-			+ "import java.util.*;\n\n"
-			+ "@Commmon\n"
-			+ "public class A1<T> {\n "
-			+ "    @Common\n" 
-			+ "    Collection<String> collectionOfString;\n\n" 
-			+ "    @Common\n"
-			+ "    Collection<List> collectionOfList;\n"
-			+ "    public static class inner{}"
-			+ "}";
-	
-		final IPath a1Path = env.addClass( srcRoot, "pkg", "A1", a1Code ); //$NON-NLS-1$ //$NON-NLS-2$
-		
-		// Set some per-project preferences
-		IJavaProject jproj = env.getJavaProject( projName );
-		AptConfig.setEnabled(jproj, true);
-		fullBuild( project.getFullPath() );				
-		expectingSpecificProblemsFor(a1Path, new Problem[]{
-				new Problem("", "java.util.List is assignable to java.util.Collection", a1Path),
-				new Problem("", "java.lang.String is not assignable to java.util.Collection", a1Path)
-				}
-		);
-    }
-	
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/TestAll.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/TestAll.java
deleted file mode 100644
index f0d9d58..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/TestAll.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    wharley@bea.com - initial API and implementation
- *******************************************************************************/
-
-
-package org.eclipse.jdt.apt.tests;
-
-import junit.framework.Test;
-import junit.framework.TestCase;
-import junit.framework.TestSuite;
-
-/**
- * Run all annotation processor tests.
- * Annotation processors may be registered by using this test plugin to extend 
- * <code>org.eclipse.jdt.apt.core.annotationProcessorFactory</code>, providing
- * the name of an annotation processor factory class implemented in this plugin.
- */
-public class TestAll extends TestCase {
-	
-	public TestAll(String testName) 
-	{
-		super(testName);
-	}
-	
-	public static Test suite() 
-	{
-		TestSuite suite = new TestSuite();
-		
-		// Comment out reconcile tests. No reconcile time codegen.
-		//suite.addTest(AptReconcileTests.suite());
-		suite.addTest(AptBuilderTests.suite() );
-		suite.addTest(APITests.suite());
-		suite.addTest(MirrorTests.suite());
-		suite.addTest(ReadAnnotationTests.suite());
-		suite.addTest(PreferencesTests.suite());
-		suite.addTest(FactoryLoaderTests.suite());
-		suite.addTest(MirrorDeclarationTests.suite());
-		suite.addTest(MirrorUtilTests.suite());
-		suite.addTest(AnnotationValueConversionTests.suite());
-		suite.addTest(JavaVersionTests.suite());
-		suite.addTest(RegressionTests.suite());
-		suite.addTest(FileGenerationTests.suite());
-		suite.addTest(MixedModeTesting.suite());
-	
-		return suite;
-		
-	}
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/TestUtil.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/TestUtil.java
deleted file mode 100644
index 416cf41..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/TestUtil.java
+++ /dev/null
@@ -1,378 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 BEA Systems, Inc, IBM Corporation, and others
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    mkaufman@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests;
-
-import java.io.ByteArrayOutputStream;
-import java.io.File;
-import java.io.FileFilter;
-import java.io.FileInputStream;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
-import java.net.URL;
-import java.util.Collections;
-import java.util.Enumeration;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.zip.ZipEntry;
-import java.util.zip.ZipFile;
-import java.util.zip.ZipInputStream;
-import java.util.zip.ZipOutputStream;
-
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.IWorkspaceDescription;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Plugin;
-import org.eclipse.jdt.apt.core.AptPlugin;
-import org.eclipse.jdt.apt.core.internal.util.FileSystemUtil;
-import org.eclipse.jdt.apt.tests.plugin.AptTestsPlugin;
-import org.eclipse.jdt.core.IClasspathEntry;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jdt.core.JavaModelException;
-
-public class TestUtil
-{
-	
-	private static File ANNO_JAR = null;
-
-	/**
-	 * Returns the annotation jar, creating it if it hasn't already been created.
-	 * @return the java.io.File of the jar that was created.
-	 */
-	public static File createAndAddAnnotationJar( IJavaProject project )
-		throws IOException, JavaModelException
-	{
-		if (ANNO_JAR == null) {
-		
-			IPath statePath = AptPlugin.getPlugin().getStateLocation();
-			IPath jarPath = statePath.append("org.eclipse.jdt.apt.tests.TestUtil.jar");
-			ANNO_JAR = new File(jarPath.toOSString());
-			
-			String classesJarPath = ANNO_JAR.getAbsolutePath();
-			FileFilter filter = new PackageFileFilter(
-					ANNOTATIONS_PKG, getPluginClassesDir());
-			Map<File, FileFilter> files = Collections.singletonMap(
-					new File(getPluginClassesDir()), filter);
-			zip( classesJarPath, files );
-			
-			ANNO_JAR.deleteOnExit();
-		}
-		
-		addLibraryEntry( project, new Path(ANNO_JAR.getAbsolutePath()), null /*srcAttachmentPath*/, 
-			null /*srcAttachmentPathRoot*/, true );
-		
-		return ANNO_JAR;
-	}
-	
-	/**
-	 * Creates an annotation jar containing annotations and processors
-	 * from the "external.annotations" package, and adds it to the project.
-	 * Classes will be found under [project]/binext, and manifest will be
-	 * drawn from [project]/srcext/META-INF.  
-	 * This jar is meant to represent an annotation jar file not 
-	 * wrapped within a plugin.  Note that adding a jar to a project makes
-	 * its classes visible to the compiler but does NOT automatically cause 
-	 * its annotation processors to be loaded.
-	 * @return the java.io.File of the jar that was created.
-	 */
-	public static File createAndAddExternalAnnotationJar( 
-			IJavaProject project  )
-		throws IOException, JavaModelException
-	{
-		File jarFile = File.createTempFile("org.eclipse.jdt.apt.tests.TestUtil", ".jar");  //$NON-NLS-1$//$NON-NLS-2$
-		String classesJarPath = jarFile.getAbsolutePath();
-		FileFilter classFilter = new PackageFileFilter(
-				EXTANNOTATIONS_PKG, getPluginExtClassesDir());
-		FileFilter manifestFilter = new PackageFileFilter(
-				"META-INF", getPluginExtSrcDir()); //$NON-NLS-1$
-		Map<File, FileFilter> files = new HashMap<File, FileFilter>(2);
-		files.put(new File( getPluginExtClassesDir() ), classFilter);
-		files.put(new File( getPluginExtSrcDir() ), manifestFilter);
-		zip( classesJarPath, files );
-		addLibraryEntry( project, new Path(classesJarPath), null /*srcAttachmentPath*/, 
-			null /*srcAttachmentPathRoot*/, true );
-		return new File(classesJarPath);
-	}
-	
-	/**
-     * Set the autobuild to the value of the parameter and
-     * return the old one.  This is a workaround for a synchronization
-     * problem: thread A creates a project, thus spawning thread B to
-     * do an autobuild.  Thread A goes on to configure the project's
-     * classpath; at the same time, thread B calls APT, which configures
-     * the project's classpath.  Access to the classpath is not
-     * synchronized, so there's a race for which thread's modification 
-     * wins.  We work around this by disabling autobuild.
-     * 
-     * @param state the value to be set for autobuilding.
-     * @return the old value of the autobuild state
-     */
-    public static boolean enableAutoBuild(boolean state) {
-        IWorkspace workspace= ResourcesPlugin.getWorkspace();
-        IWorkspaceDescription desc= workspace.getDescription();
-        boolean isAutoBuilding= desc.isAutoBuilding();
-        if (isAutoBuilding != state) {
-            desc.setAutoBuilding(state);
-            try {
-				workspace.setDescription(desc);
-			} catch (CoreException e) {
-				e.printStackTrace();
-			}
-        }
-        return isAutoBuilding;
-    }
-    
-	public static IPath getProjectPath( IJavaProject project )
-	{
-		return project.getResource().getLocation();
-	}
-	
-	public static String getPluginClassesDir()
-	{
-		return getFileInPlugin( AptTestsPlugin.getDefault(), new Path( "/bin" ) ) //$NON-NLS-1$
-			.getAbsolutePath();
-	}
-
-	public static String getPluginExtClassesDir()
-	{
-		return getFileInPlugin( AptTestsPlugin.getDefault(), new Path( "/binext" ) ) //$NON-NLS-1$
-			.getAbsolutePath();
-	}
-
-	public static String getPluginExtSrcDir()
-	{
-		return getFileInPlugin( AptTestsPlugin.getDefault(), new Path( "/srcext" ) ) //$NON-NLS-1$
-			.getAbsolutePath();
-	}
-
-	public static java.io.File getFileInPlugin(Plugin plugin, IPath path)
-	{
-		try
-		{
-			URL installURL = plugin.getBundle().getEntry( path.toString() );
-			URL localURL = Platform.asLocalURL( installURL );
-			return new java.io.File( localURL.getFile() );
-		}
-		catch( IOException e )
-		{
-			return null;
-		}
-	}
-
-	/**
-	 * Create a zip file and add contents.
-	 * @param zipPath the zip file
-	 * @param input a map of root directories and corresponding filters.  Each
-	 * root directory will be searched, and any files that pass the filter will
-	 * be added to the zip file.
-	 * @throws IOException
-	 */
-	public static void zip(String zipPath, Map<File, FileFilter> input)
-		throws IOException
-	{
-		ZipOutputStream zip = null;
-		try
-		{
-			zip = new ZipOutputStream( new FileOutputStream( zipPath ) );
-			// +1 for last slash
-			for (Map.Entry<File, FileFilter> e : input.entrySet()) {
-				zip( zip, e.getKey(), e.getKey().getPath().length() + 1, e.getValue() );
-			}
-		}
-		finally
-		{
-			if( zip != null )
-			{
-				zip.close();
-			}
-		}
-	}
-	
-	private static void zip(ZipOutputStream zip, File dir, int rootPathLength,
-		FileFilter filter) throws IOException
-	{
-		String[] list = dir.list();
-		if( list != null )
-		{
-			for( int i = 0, length = list.length; i < length; i++ )
-			{
-				String name = list[i];
-				File file = new File( dir, name );
-				if( filter == null || filter.accept( file ) )
-				{
-					if( file.isDirectory() )
-					{
-						zip( zip, file, rootPathLength, filter );
-					}
-					else
-					{
-						String path = file.getPath();
-						path = path.substring( rootPathLength );
-						ZipEntry entry = new ZipEntry( path.replace( '\\', '/' ) );
-						zip.putNextEntry( entry );
-						zip.write( getBytesFromFile( file ) );
-						zip.closeEntry();
-					}
-				}
-			}
-		}
-	}
-	
-	private static byte[] getBytesFromFile( File f )
-		throws IOException
-	{
-		FileInputStream fis = null;
-		ByteArrayOutputStream baos = null;
-		byte[] rtrn = new byte[0]; 
-		try
-		{
-			fis = new FileInputStream( f );
-			baos = new ByteArrayOutputStream();
-			int b;
-			while ( ( b = fis.read() ) != -1)
-				baos.write( b );
-			rtrn = baos.toByteArray();
-		}
-		finally
-		{
-			if ( fis != null ) fis.close();
-			if ( baos != null ) baos.close();
-		}
-		return rtrn;
-	
-	}
-	
-	public static void unzip (File srcZip, File destDir) throws IOException {
-		ZipFile zf = new ZipFile(srcZip);
-		for (Enumeration<? extends ZipEntry> entries = zf.entries(); entries.hasMoreElements();) {
-			ZipEntry entry = entries.nextElement();
-			String name = entry.getName();
-			File dest = new File(destDir, name);
-			if (entry.isDirectory()) {
-				FileSystemUtil.mkdirs(dest);
-			}
-			else {
-				File parent = dest.getParentFile();
-				FileSystemUtil.mkdirs(parent);
-				InputStream from = null;
-	            OutputStream to = null;
-	            try {
-	                from = zf.getInputStream(entry);
-	                to = new FileOutputStream(dest);
-	                byte[] buffer = new byte[4096];
-	                int bytesRead;
-	                while ((bytesRead = from.read(buffer)) != -1) {
-	                    to.write(buffer, 0, bytesRead);
-	                }
-	            }
-	            finally {
-	                if (from != null) try {from.close();} catch (IOException ioe){}
-	                if (to != null) try {to.close();} catch (IOException ioe) {}
-	            }
-			}
-		}
-	}
-	
-	public static void unzip (ZipInputStream srcZip, File destDir) throws IOException {
-		ZipEntry entry;
-		while ((entry = srcZip.getNextEntry()) != null) {
-			String name = entry.getName();
-			File dest = new File(destDir, name);
-			if (entry.isDirectory()) {
-				FileSystemUtil.mkdirs(dest);
-			}
-			else {
-				File parent = dest.getParentFile();
-				FileSystemUtil.mkdirs(parent);
-	            OutputStream to = null;
-	            try {
-	                to = new FileOutputStream(dest);
-	                byte[] buffer = new byte[4096];
-	                int bytesRead;
-	                while ((bytesRead = srcZip.read(buffer)) != -1) {
-	                    to.write(buffer, 0, bytesRead);
-	                }
-	            }
-	            finally {
-                    srcZip.closeEntry();
-	                if (to != null) try {to.close();} catch (IOException ioe) {}
-	            }
-			}
-		}
-	}
-	
-	
-
-	public static void addLibraryEntry(IJavaProject project, IPath path, IPath srcAttachmentPath, IPath srcAttachmentPathRoot, boolean exported) throws JavaModelException{
-		IClasspathEntry[] entries = project.getRawClasspath();
-		int length = entries.length;
-		System.arraycopy(entries, 0, entries = new IClasspathEntry[length + 1], 1, length);
-		entries[0] = JavaCore.newLibraryEntry(
-			path, 
-			srcAttachmentPath, 
-			srcAttachmentPathRoot, 
-			exported);
-		project.setRawClasspath(entries, null);
-	}
-	
-	
-	private static class PackageFileFilter implements FileFilter {
-		private final String[] _packageParts;
-		private final Path _binDir;
-		
-		/**
-		 * Select only those files under a certain package.
-		 * @param packageSubset a partial package name, such as 
-		 * "org.eclipse.jdt.apt.tests.annotations".
-		 * @param binDir the absolute path of the directory 
-		 * in which the compiled classes are to be found.
-		 */
-		public PackageFileFilter(String packageSubset, String binDir) {
-			_packageParts = packageSubset.split("\\."); //$NON-NLS-1$
-			_binDir = new Path(binDir);
-		}
-		
-		public boolean accept(File pathname)
-		{
-			IPath f = new Path( pathname.getAbsolutePath() );
-
-			int nsegments = f.matchingFirstSegments( _binDir );
-			boolean ok = true;
-			int min = Math.min( f.segmentCount() - nsegments,
-					_packageParts.length );
-			for( int i = nsegments, j = 0; j < min; i++, j++ )
-			{
-				if( !f.segment( i ).equals( _packageParts[j] ) )
-				{
-					ok = false;
-					break;
-				}
-			}
-			return ok;
-		}
-	}
-	
-	public static final String ANNOTATIONS_PKG = 
-		"org.eclipse.jdt.apt.tests.annotations"; //$NON-NLS-1$
-
-	public static final String EXTANNOTATIONS_PKG = 
-		"org.eclipse.jdt.apt.tests.external.annotations"; //$NON-NLS-1$
-
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/BaseFactory.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/BaseFactory.java
deleted file mode 100644
index 209ca39..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/BaseFactory.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    jgarms@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-package org.eclipse.jdt.apt.tests.annotations;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
-
-import com.sun.mirror.apt.AnnotationProcessorFactory;
-
-/**
- * Base class for annotation factories. Takes care of supported
- * annotations and supported options.
- */
-public abstract class BaseFactory implements AnnotationProcessorFactory {
-
-	private final Collection<String> _supportedAnnotations;
-	
-	/**
-	 * Pass in supported annotations. At least one is required,
-	 * the rest are optional.
-	 * 
-	 * @param anno main annotation
-	 * @param otherAnnos other supported annotations. Not necessary if 
-	 * no extra annotations are supported.
-	 */
-	public BaseFactory(String anno, String... otherAnnos) {
-		_supportedAnnotations = new ArrayList<String>(1 + otherAnnos.length);
-		_supportedAnnotations.add(anno);
-		for (String s : otherAnnos) {
-			_supportedAnnotations.add(s);
-		}
-	}
-	
-	public Collection<String> supportedOptions() {
-		return Collections.emptyList();
-	}
-
-	public Collection<String> supportedAnnotationTypes() {
-		return _supportedAnnotations;
-	}
-
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/BaseProcessor.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/BaseProcessor.java
deleted file mode 100644
index fd1440a..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/BaseProcessor.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    jgarms@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-package org.eclipse.jdt.apt.tests.annotations;
-
-import com.sun.mirror.apt.AnnotationProcessor;
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.apt.Messager;
-
-public abstract class BaseProcessor implements AnnotationProcessor {
-
-	protected final AnnotationProcessorEnvironment _env;
-	
-	public BaseProcessor(final AnnotationProcessorEnvironment env) {
-		_env = env;
-	}
-	
-	protected void assertEqual(final int expected, final int actual, final String message){
-		if(expected != actual){
-			final Messager msgr = _env.getMessager();
-			msgr.printError(message + " expected: " + expected + " actual: " + actual );
-		}
-	}
-	
-	protected void assertEqual(final String expected, final String actual, final String message){
-		if( expected == null ){
-			final Messager msgr = _env.getMessager();
-			msgr.printError(message + " actual: " + actual );
-		}
-		else if( actual == null ){
-			final Messager msgr = _env.getMessager();
-			msgr.printError(message + "expected " + expected );
-		}
-		else if( !expected.equals(actual) ){
-			final Messager msgr = _env.getMessager();
-			msgr.printError(message + " expected: " + expected + " actual: " + actual );
-		}
-	}
-	
-	protected void assertNonNull(final Object obj, final String message){
-		if( obj == null ){
-			final Messager msgr = _env.getMessager();
-			msgr.printError(message);
-		}
-	}
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/ProcessorTestStatus.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/ProcessorTestStatus.java
deleted file mode 100644
index 0251bb2..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/ProcessorTestStatus.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    jgarms@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-package org.eclipse.jdt.apt.tests.annotations;
-
-/**
- * Utility class to hold results of processor-based tests.
- * All methods are static.
- */
-public final class ProcessorTestStatus {
-	
-	/** 
-	 * Marker string to indicate that no errors were encountered.
-	 */
-	public static final String NO_ERRORS = "NO ERRORS";
-	
-	/** Error status. Will be == NO_ERRORS if no errors were encountered **/
-	private static String s_errorStatus = NO_ERRORS;
-	
-	/** An expected condition failed. Record the error **/
-	public static void failWithoutException(final String error) {
-		s_errorStatus = error;
-	}
-	
-	/** Returns true if any errors were encountered **/
-	public static boolean hasErrors() {
-		return s_errorStatus == NO_ERRORS;
-	}
-	
-	/** Get the error string. Will be NO_ERRORS if none were encountered **/
-	public static String getErrors() {
-		return s_errorStatus;
-	}
-	
-	/** Reset the status. Needs to be called before each set of tests that could fail **/
-	public static void reset() {
-		s_errorStatus = NO_ERRORS;
-	}
-	
-	// Private c-tor to prevent construction
-	private ProcessorTestStatus() {}
-
-	public static void assertEquals(String reason, Object expected, Object actual) {
-		if (expected == actual)
-			return;
-		if (expected != null && expected.equals(actual))
-			return;
-		ProcessorTestStatus.fail("Expected " + expected + ", but saw " + actual + ". Reason: " + reason);
-	}
-
-	public static void assertEquals(String reason, String expected, String actual) {
-		if (expected == actual)
-			return;
-		if (expected != null && expected.equals(actual))
-			return;
-		ProcessorTestStatus.fail("Expected " + expected + ", but saw " + actual + ". Reason: " + reason);
-	}
-
-	public static void assertEquals(String reason, int expected, int actual) {
-		if (expected == actual)
-			return;
-		ProcessorTestStatus.fail("Expected " + expected + ", but saw " + actual + ". Reason: " + reason);
-	}
-
-	public static void assertTrue(String reason, boolean expected) {
-		if (!expected)
-			ProcessorTestStatus.fail(reason);
-	}
-
-	public static void fail(final String reason) {
-		failWithoutException(reason);
-		throw new IllegalStateException("Failed during test: " + reason);
-	}
-
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/apitest/APIAnnotationProcessorFactory.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/apitest/APIAnnotationProcessorFactory.java
deleted file mode 100644
index a7390d5..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/apitest/APIAnnotationProcessorFactory.java
+++ /dev/null
@@ -1,85 +0,0 @@
-package org.eclipse.jdt.apt.tests.annotations.apitest;
-
-import java.util.Collection;
-import java.util.Set;
-
-import org.eclipse.jdt.apt.tests.annotations.BaseFactory;
-import org.eclipse.jdt.apt.tests.annotations.BaseProcessor;
-
-import com.sun.mirror.apt.AnnotationProcessor;
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.apt.Messager;
-import com.sun.mirror.declaration.AnnotationTypeDeclaration;
-import com.sun.mirror.declaration.Declaration;
-import com.sun.mirror.declaration.FieldDeclaration;
-import com.sun.mirror.declaration.MethodDeclaration;
-import com.sun.mirror.declaration.TypeDeclaration;
-import com.sun.mirror.declaration.TypeParameterDeclaration;
-import com.sun.mirror.type.DeclaredType;
-import com.sun.mirror.type.TypeMirror;
-
-
-public class APIAnnotationProcessorFactory extends BaseFactory {
-	
-	public APIAnnotationProcessorFactory(){
-		super(Common.class.getName());
-	}
-	
-	public AnnotationProcessor getProcessorFor(
-			Set<AnnotationTypeDeclaration> decls, 
-			AnnotationProcessorEnvironment env) {
-		return new APIAnnotationProcessor(env);
-	}
-	
-	public static class APIAnnotationProcessor extends BaseProcessor{
-		
-		public APIAnnotationProcessor(AnnotationProcessorEnvironment env){
-			super(env);
-		}
-		
-		public void process() {	
-			final Messager msgr = _env.getMessager();
-			final AnnotationTypeDeclaration commonAnnoType = 
-				(AnnotationTypeDeclaration)_env.getTypeDeclaration(Common.class.getName());
-			final Collection<Declaration> decls = 
-				_env.getDeclarationsAnnotatedWith(commonAnnoType);
-			for( Declaration decl : decls ){
-				if(decl instanceof FieldDeclaration ){
-					final FieldDeclaration field = (FieldDeclaration)decl;
-					final TypeMirror type = field.getType();
-					if( type instanceof DeclaredType ){
-						final TypeMirror collectionType =
-							_env.getTypeUtils().getDeclaredType(_env.getTypeDeclaration(Collection.class.getName()));
-						final Collection<TypeMirror> typeVars =
-							((DeclaredType)type).getActualTypeArguments();
-						if(typeVars.size() == 1 ){
-							TypeMirror typeVar = typeVars.iterator().next(); 
-							boolean assignable = _env.getTypeUtils().isAssignable(typeVar, collectionType);							
-							if( assignable )
-								msgr.printError(typeVar + " is assignable to " + collectionType );
-							else
-								msgr.printError(typeVar + " is not assignable to " + collectionType );
-						}
-					}
-				}else if(decl instanceof TypeDeclaration){
-					final TypeDeclaration typeDecl = (TypeDeclaration)decl;
-					final Collection<TypeParameterDeclaration> typeParams =
-						typeDecl.getFormalTypeParameters();					
-					for(TypeParameterDeclaration typeParam : typeParams){
-						Declaration owner = typeParam.getOwner();
-						msgr.printError("Type parameter '" + typeParam + "' belongs to " + owner.getClass().getName() + " " + owner.getSimpleName() );
-					}
-				}
-				else if( decl instanceof MethodDeclaration ){
-					final MethodDeclaration methodDecl = (MethodDeclaration)decl;
-					final Collection<TypeParameterDeclaration> typeParams =
-						methodDecl.getFormalTypeParameters();					
-					for(TypeParameterDeclaration typeParam : typeParams){
-						Declaration owner = typeParam.getOwner();
-						msgr.printError("Type parameter '" + typeParam + "' belongs to " + owner.getClass().getName() + " " + owner.getSimpleName() );
-					}
-				}
-			}
-		}
-	}
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/apitest/Common.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/apitest/Common.java
deleted file mode 100644
index a1cac13..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/apitest/Common.java
+++ /dev/null
@@ -1,8 +0,0 @@
-package org.eclipse.jdt.apt.tests.annotations.apitest;
-
-/** 
- * This annotation will trigger the {@link APIAnnotationProcessorFactory}  
- */
-public @interface Common {
-
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/aptrounding/GenBean.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/aptrounding/GenBean.java
deleted file mode 100644
index 27ab60c..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/aptrounding/GenBean.java
+++ /dev/null
@@ -1,15 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    tyeung@bea.com - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jdt.apt.tests.annotations.aptrounding;
-
-public @interface GenBean {
-
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/aptrounding/GenBean2.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/aptrounding/GenBean2.java
deleted file mode 100644
index 8ce17ec..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/aptrounding/GenBean2.java
+++ /dev/null
@@ -1,15 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    tyeung@bea.com - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jdt.apt.tests.annotations.aptrounding;
-
-public @interface GenBean2 {
-
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/aptrounding/Round1GenAnnotationFactory.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/aptrounding/Round1GenAnnotationFactory.java
deleted file mode 100644
index 0a7fd81..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/aptrounding/Round1GenAnnotationFactory.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    tyeung@bea.com - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jdt.apt.tests.annotations.aptrounding;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.List;
-import java.util.Set;
-
-import com.sun.mirror.apt.AnnotationProcessor;
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.apt.AnnotationProcessorFactory;
-import com.sun.mirror.declaration.AnnotationTypeDeclaration;
-
-public class Round1GenAnnotationFactory implements AnnotationProcessorFactory{
-	
-	public static final List<String> SUPPORTED_TYPES;
-	
-	static{
-		SUPPORTED_TYPES = new ArrayList<String>();
-		SUPPORTED_TYPES.add(GenBean.class.getName());	
-	}
-	
-	public AnnotationProcessor getProcessorFor(Set<AnnotationTypeDeclaration> decls, AnnotationProcessorEnvironment env) {
-		return new Round1GenAnnotationProcessor(env);
-	}
-	
-	public Collection<String> supportedAnnotationTypes() {
-		return SUPPORTED_TYPES;
-	}
-	
-	public Collection<String> supportedOptions() {		
-		return Collections.emptyList();
-	}
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/aptrounding/Round1GenAnnotationProcessor.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/aptrounding/Round1GenAnnotationProcessor.java
deleted file mode 100644
index 322ea74..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/aptrounding/Round1GenAnnotationProcessor.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    tyeung@bea.com - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jdt.apt.tests.annotations.aptrounding;
-import java.io.IOException;
-import java.io.PrintWriter;
-import java.util.Collection;
-
-import com.sun.mirror.apt.AnnotationProcessor;
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.apt.Filer;
-import com.sun.mirror.apt.Messager;
-import com.sun.mirror.declaration.TypeDeclaration;
-
-public class Round1GenAnnotationProcessor implements AnnotationProcessor{
-
-	private final AnnotationProcessorEnvironment _env;
-	Round1GenAnnotationProcessor(AnnotationProcessorEnvironment env)
-	{
-		_env = env;
-	}
-	
-	public void process() {
-		final TypeDeclaration beanType = _env.getTypeDeclaration("test.Bean");
-		final Filer filer = _env.getFiler();
-		if( beanType == null ){
-			try{
-				PrintWriter writer = filer.createSourceFile("test.Bean");
-				writer.print("package test;\n");
-				writer.print("public class Bean{}\n");
-				writer.close();
-			}
-			catch(IOException io){}
-		}
-		
-		final Collection<TypeDeclaration> typeDecls = _env.getTypeDeclarations();
-		final Messager msger = _env.getMessager();
-		if( typeDecls.size() == 1 ){
-			final TypeDeclaration type = typeDecls.iterator().next();
-			if( !type.getQualifiedName().equals( "p1.X") )
-				msger.printError("Expected to find p1.X but got " + type.getQualifiedName() ); 
-		}
-		else
-			msger.printError("expected one type declaration but got " + typeDecls );	
-	}
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/aptrounding/Round2GenAnnotationFactory.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/aptrounding/Round2GenAnnotationFactory.java
deleted file mode 100644
index 724f21b..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/aptrounding/Round2GenAnnotationFactory.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    tyeung@bea.com - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jdt.apt.tests.annotations.aptrounding;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.List;
-import java.util.Set;
-
-import com.sun.mirror.apt.AnnotationProcessor;
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.apt.AnnotationProcessorFactory;
-import com.sun.mirror.declaration.AnnotationTypeDeclaration;
-
-public class Round2GenAnnotationFactory implements AnnotationProcessorFactory{
-	
-	public static final List<String> SUPPORTED_TYPES;
-	
-	static{
-		SUPPORTED_TYPES = new ArrayList<String>();
-		SUPPORTED_TYPES.add(GenBean2.class.getName());	
-	}
-	
-	public AnnotationProcessor getProcessorFor(Set<AnnotationTypeDeclaration> decls, AnnotationProcessorEnvironment env) {
-		return new Round2GenAnnotationProcessor(env);
-	}
-	
-	public Collection<String> supportedAnnotationTypes() {
-		return SUPPORTED_TYPES;
-	}
-	
-	public Collection<String> supportedOptions() {		
-		return Collections.emptyList();
-	}
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/aptrounding/Round2GenAnnotationProcessor.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/aptrounding/Round2GenAnnotationProcessor.java
deleted file mode 100644
index 743fa7a..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/aptrounding/Round2GenAnnotationProcessor.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    tyeung@bea.com - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jdt.apt.tests.annotations.aptrounding;
-
-import java.io.IOException;
-import java.io.PrintWriter;
-
-import com.sun.mirror.apt.AnnotationProcessor;
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.apt.Filer;
-import com.sun.mirror.declaration.TypeDeclaration;
-
-public class Round2GenAnnotationProcessor implements AnnotationProcessor {
-	private final AnnotationProcessorEnvironment _env;
-	Round2GenAnnotationProcessor(AnnotationProcessorEnvironment env)
-	{
-		_env = env;
-	}
-	
-	public void process() {
-		final TypeDeclaration beanType = _env.getTypeDeclaration("test.Bean");
-		final Filer filer = _env.getFiler();
-		if( beanType != null ){
-			try{
-				PrintWriter writer = filer.createSourceFile("test.BeanBean");
-				writer.print("package test;\n");
-				writer.print("public class BeanBean{ public Bean bean = null; }\n");
-				writer.close();
-			}
-			catch(IOException io){}
-		}
-	}
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/extradependency/ExtraDependencyAnnotation.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/extradependency/ExtraDependencyAnnotation.java
deleted file mode 100644
index 0a7a1d2..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/extradependency/ExtraDependencyAnnotation.java
+++ /dev/null
@@ -1,18 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    mkaufman@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests.annotations.extradependency;
-
-public @interface ExtraDependencyAnnotation
-{
-	String value() default "";  //$NON-NLS-1$
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/extradependency/ExtraDependencyAnnotationProcessor.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/extradependency/ExtraDependencyAnnotationProcessor.java
deleted file mode 100644
index 15c8aff..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/extradependency/ExtraDependencyAnnotationProcessor.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    mkaufman@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests.annotations.extradependency;
-
-import org.eclipse.jdt.apt.tests.annotations.BaseProcessor;
-
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-
-public class ExtraDependencyAnnotationProcessor extends BaseProcessor {
-
-	public ExtraDependencyAnnotationProcessor(AnnotationProcessorEnvironment env) {
-		super(env);
-	}
-
-	public void process() {
-		_env.getTypeDeclaration( "p1.p2.p3.p4.C" ); //$NON-NLS-1$
-	}
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/extradependency/ExtraDependencyAnnotationProcessorFactory.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/extradependency/ExtraDependencyAnnotationProcessorFactory.java
deleted file mode 100644
index dd80009..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/extradependency/ExtraDependencyAnnotationProcessorFactory.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    mkaufman@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests.annotations.extradependency;
-
-import java.util.Set;
-
-import org.eclipse.jdt.apt.tests.annotations.BaseFactory;
-
-import com.sun.mirror.apt.AnnotationProcessor;
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.declaration.AnnotationTypeDeclaration;
-
-public class ExtraDependencyAnnotationProcessorFactory extends BaseFactory {
-
-	public ExtraDependencyAnnotationProcessorFactory() {
-		super(ExtraDependencyAnnotation.class.getName());
-	}
-
-	public AnnotationProcessor getProcessorFor(
-			Set<AnnotationTypeDeclaration> atds,
-			AnnotationProcessorEnvironment env) {
-		
-		return new ExtraDependencyAnnotationProcessor( env );
-	}
-	
-}
\ No newline at end of file
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/FileGenLocationAnnotation.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/FileGenLocationAnnotation.java
deleted file mode 100644
index aaf337a..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/FileGenLocationAnnotation.java
+++ /dev/null
@@ -1,18 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    sbandow@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests.annotations.filegen;
-
-public @interface FileGenLocationAnnotation
-{
-	String value() default ""; //$NON-NLS-1$
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/FileGenLocationAnnotationProcessor.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/FileGenLocationAnnotationProcessor.java
deleted file mode 100644
index fbff957..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/FileGenLocationAnnotationProcessor.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    sbandow@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests.annotations.filegen;
-
-import java.io.IOException;
-import java.io.PrintWriter;
-
-import org.eclipse.jdt.apt.tests.annotations.BaseProcessor;
-
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.apt.Filer;
-
-public class FileGenLocationAnnotationProcessor extends BaseProcessor {
-
-	public FileGenLocationAnnotationProcessor(AnnotationProcessorEnvironment env) {
-		super(env);
-	}
-
-	public void process()
-	{
-		try
-		{
-			Filer f = _env.getFiler();
-
-			PrintWriter pwa = f.createSourceFile("test.A"); //$NON-NLS-1$
-			pwa.print(CODE_GEN_IN_PKG);
-			pwa.close();
-
-			PrintWriter pwb = f.createSourceFile("B"); //$NON-NLS-1$
-			pwb.print(CODE_GEN_AT_PROJ_ROOT);
-			pwb.close();
-			
-		}
-		catch( IOException ioe )
-		{
-			ioe.printStackTrace();
-		}
-	}
-
-	@SuppressWarnings("nls")
-	protected String CODE_GEN_IN_PKG = 
-		"package test;" + "\n" +
-		"public class A" + "\n" +
-		"{" + "\n" +
-		"}";
-
-	@SuppressWarnings("nls")
-	protected String CODE_GEN_AT_PROJ_ROOT = 
-		"public class B" + "\n" +
-		"{" + "\n" +
-		"    test.A a;" + "\n" +
-		"}";
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/FileGenLocationAnnotationProcessorFactory.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/FileGenLocationAnnotationProcessorFactory.java
deleted file mode 100644
index 9363c29..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/FileGenLocationAnnotationProcessorFactory.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    sbandow@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests.annotations.filegen;
-
-import java.util.Set;
-
-import org.eclipse.jdt.apt.tests.annotations.BaseFactory;
-
-import com.sun.mirror.apt.AnnotationProcessor;
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.declaration.AnnotationTypeDeclaration;
-
-public class FileGenLocationAnnotationProcessorFactory extends BaseFactory {
-	
-	public FileGenLocationAnnotationProcessorFactory() {
-		super(FileGenLocationAnnotation.class.getName());
-	}
-
-	public AnnotationProcessor getProcessorFor(
-			Set<AnnotationTypeDeclaration> atds,
-			AnnotationProcessorEnvironment env) 
-	{
-		return new FileGenLocationAnnotationProcessor( env );
-	}
-	
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/FirstGenAnnotation.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/FirstGenAnnotation.java
deleted file mode 100644
index a2906fa..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/FirstGenAnnotation.java
+++ /dev/null
@@ -1,18 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    sbandow@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests.annotations.filegen;
-
-public @interface FirstGenAnnotation
-{
-	String value() default ""; //$NON-NLS-1$
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/FirstGenAnnotationProcessor.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/FirstGenAnnotationProcessor.java
deleted file mode 100644
index 0ca59e0..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/FirstGenAnnotationProcessor.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    sbandow@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests.annotations.filegen;
-
-import java.io.IOException;
-import java.io.PrintWriter;
-
-import org.eclipse.jdt.apt.tests.annotations.BaseProcessor;
-
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.apt.Filer;
-
-public class FirstGenAnnotationProcessor extends BaseProcessor {
-
-	public FirstGenAnnotationProcessor(AnnotationProcessorEnvironment env) {
-		super(env);
-	}
-
-	public void process()
-	{
-		try
-		{
-			Filer f = _env.getFiler();
-			PrintWriter pw = f.createSourceFile("duptest.DupFile"); //$NON-NLS-1$
-			pw.print(CODE);
-			pw.close();
-		}
-		catch( IOException e )
-		{
-			e.printStackTrace();
-		}
-	}
-
-	@SuppressWarnings("nls")
-	protected String CODE =
-		"package duptest;" + "\n" +
-		"import org.eclipse.jdt.apt.tests.annotations.filegen.SecondGenAnnotation;" + "\n" +
-		"@SecondGenAnnotation" + "\n" +
-		"public class DupFile" + "\n" +
-		"{" + "\n" +
-		"}";
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/FirstGenAnnotationProcessorFactory.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/FirstGenAnnotationProcessorFactory.java
deleted file mode 100644
index 1f06bf9..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/FirstGenAnnotationProcessorFactory.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    sbandow@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests.annotations.filegen;
-
-import java.util.Set;
-
-import org.eclipse.jdt.apt.tests.annotations.BaseFactory;
-
-import com.sun.mirror.apt.AnnotationProcessor;
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.declaration.AnnotationTypeDeclaration;
-
-public class FirstGenAnnotationProcessorFactory extends BaseFactory {
-	
-	public FirstGenAnnotationProcessorFactory() {
-		super(FirstGenAnnotation.class.getName());
-	}
-
-	public AnnotationProcessor getProcessorFor(
-			Set<AnnotationTypeDeclaration> atds,
-			AnnotationProcessorEnvironment env) 
-	{
-		return new FirstGenAnnotationProcessor( env );
-	}
-	
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/SecondGenAnnotation.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/SecondGenAnnotation.java
deleted file mode 100644
index a8fbd21..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/SecondGenAnnotation.java
+++ /dev/null
@@ -1,18 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    sbandow@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests.annotations.filegen;
-
-public @interface SecondGenAnnotation
-{
-	String value() default ""; //$NON-NLS-1$
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/SecondGenAnnotationProcessor.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/SecondGenAnnotationProcessor.java
deleted file mode 100644
index 0177867..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/SecondGenAnnotationProcessor.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    sbandow@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests.annotations.filegen;
-
-import java.io.IOException;
-import java.io.PrintWriter;
-
-import org.eclipse.jdt.apt.tests.annotations.BaseProcessor;
-
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.apt.Filer;
-
-public class SecondGenAnnotationProcessor extends BaseProcessor {
-
-	public SecondGenAnnotationProcessor(AnnotationProcessorEnvironment env) {
-		super(env);
-	}
-
-	public void process()
-	{
-		try
-		{
-			Filer f = _env.getFiler();
-			PrintWriter pw = f.createSourceFile("duptest.DupFile"); //$NON-NLS-1$
-			pw.print(CODE_OVERWRITE);
-			pw.close();
-
-			Filer fr = _env.getFiler();
-			PrintWriter pwr = fr.createSourceFile("reftest.RefFile"); //$NON-NLS-1$
-			pwr.print(CODE_REF);
-			pwr.close();
-		}
-		catch( IOException e )
-		{
-			e.printStackTrace();
-		}
-	}
-
-	@SuppressWarnings("nls")
-	protected String CODE_OVERWRITE =
-		"package duptest;" + "\n" +
-		"public class DupFile" + "\n" +
-		"{" + "\n" +
-		"    public class Inner" + "\n" +
-		"    {" + "\n" +
-		"    }" + "\n" +
-		"}";
-
-	@SuppressWarnings("nls")
-	protected String CODE_REF =
-		"package reftest;" + "\n" +
-		"public class RefFile" + "\n" +
-		"{" + "\n" +
-		"    duptest.DupFile.Inner i;" + "\n" +
-		"}";
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/SecondGenAnnotationProcessorFactory.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/SecondGenAnnotationProcessorFactory.java
deleted file mode 100644
index 0560ed4..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/SecondGenAnnotationProcessorFactory.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    sbandow@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests.annotations.filegen;
-
-import java.util.Set;
-
-import org.eclipse.jdt.apt.tests.annotations.BaseFactory;
-
-import com.sun.mirror.apt.AnnotationProcessor;
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.declaration.AnnotationTypeDeclaration;
-
-public class SecondGenAnnotationProcessorFactory extends BaseFactory {
-	
-	public SecondGenAnnotationProcessorFactory() {
-		super(SecondGenAnnotation.class.getName());
-	}
-
-	public AnnotationProcessor getProcessorFor(
-			Set<AnnotationTypeDeclaration> atds,
-			AnnotationProcessorEnvironment env) 
-	{
-		return new SecondGenAnnotationProcessor( env );
-	}
-	
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/TextGenAnnotation.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/TextGenAnnotation.java
deleted file mode 100644
index 7c8c10d..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/TextGenAnnotation.java
+++ /dev/null
@@ -1,17 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    jgarms@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-package org.eclipse.jdt.apt.tests.annotations.filegen;
-
-public @interface TextGenAnnotation {
-
-	String value() default ""; //$NON-NLS-1$
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/TextGenAnnotationProcessor.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/TextGenAnnotationProcessor.java
deleted file mode 100644
index 60c720f..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/TextGenAnnotationProcessor.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    jgarms@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-package org.eclipse.jdt.apt.tests.annotations.filegen;
-
-import java.io.File;
-import java.io.IOException;
-import java.io.PrintWriter;
-
-import org.eclipse.jdt.apt.tests.annotations.BaseProcessor;
-
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.apt.Filer;
-
-public class TextGenAnnotationProcessor extends BaseProcessor {
-	
-	public static final String FILE_NAME = "TextFile.txt";
-
-	public TextGenAnnotationProcessor(AnnotationProcessorEnvironment env) {
-		super(env);
-	}
-	
-	public void process() {
-		Filer f = _env.getFiler();
-		try {
-			PrintWriter writer = f.createTextFile(
-					Filer.Location.CLASS_TREE, 
-					"", 
-					new File(FILE_NAME), 
-					null);
-			writer.print(TEXT);
-			writer.close();
-			
-		}
-		catch (IOException ioe) {
-			throw new RuntimeException("Could not generate text file",ioe);
-		}
-	}
-	
-	private static final String TEXT = "This is some text generated by an annotation processor";
-
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/TextGenAnnotationProcessorFactory.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/TextGenAnnotationProcessorFactory.java
deleted file mode 100644
index 357d0b3..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/filegen/TextGenAnnotationProcessorFactory.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    jgarms@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-package org.eclipse.jdt.apt.tests.annotations.filegen;
-
-import java.util.Set;
-
-import org.eclipse.jdt.apt.tests.annotations.BaseFactory;
-
-import com.sun.mirror.apt.AnnotationProcessor;
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.declaration.AnnotationTypeDeclaration;
-
-public class TextGenAnnotationProcessorFactory extends BaseFactory {
-
-	public TextGenAnnotationProcessorFactory() {
-		super(TextGenAnnotation.class.getName());
-	}
-	
-	public AnnotationProcessor getProcessorFor(
-			Set<AnnotationTypeDeclaration> decls,
-			AnnotationProcessorEnvironment env) {
-		return new TextGenAnnotationProcessor(env);
-	}
-
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/helloworld/HelloWorldAnnotation.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/helloworld/HelloWorldAnnotation.java
deleted file mode 100644
index 1b75d8e..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/helloworld/HelloWorldAnnotation.java
+++ /dev/null
@@ -1,18 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    mkaufman@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests.annotations.helloworld;
-
-public @interface HelloWorldAnnotation
-{
-	String value() default ""; //$NON-NLS-1$
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/helloworld/HelloWorldAnnotationProcessor.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/helloworld/HelloWorldAnnotationProcessor.java
deleted file mode 100644
index adf7c11..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/helloworld/HelloWorldAnnotationProcessor.java
+++ /dev/null
@@ -1,70 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    mkaufman@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests.annotations.helloworld;
-
-import java.io.IOException;
-import java.io.PrintWriter;
-
-import org.eclipse.jdt.apt.tests.annotations.BaseProcessor;
-
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.apt.Filer;
-
-public class HelloWorldAnnotationProcessor extends BaseProcessor {
-
-	public HelloWorldAnnotationProcessor(AnnotationProcessorEnvironment env) {
-		super(env);
-	}
-
-	public void process()
-	{
-		try
-		{
-			Filer f = _env.getFiler();
-			PrintWriter pw = f
-				.createSourceFile( getPackageName() + "." + getTypeName() ); //$NON-NLS-1$
-			pw.print( getCode() );
-			pw.close();
-		}
-		catch( IOException ioe )
-		{
-			ioe.printStackTrace();
-		}
-	}
-
-	public String getCode() { return CODE; }
-	public String getPackageName() { return "generatedfilepackage"; } //$NON-NLS-1$
-	public String getTypeName() { return "GeneratedFileTest"; } //$NON-NLS-1$
-
-	protected final static String	PACKAGE_NAME	= ""; //$NON-NLS-1$
-
-	protected final static String	TYPE_NAME		= ""; //$NON-NLS-1$
-
-	@SuppressWarnings("nls")
-	protected String	CODE			= "package "
-														+ getPackageName()
-														+ ";"
-														+ "\n"
-														+ "public class "
-														+ getTypeName()
-														+ "\n"
-														+ "{"
-														+ "\n"
-														+ "    public static void helloWorld()"
-														+ "\n"
-														+ "    {"
-														+ "\n"
-														+ "        System.out.println( \"Hello, world!  I am a generated file!\" ); "
-														+ "\n" + "    }" + "\n"
-														+ "}";
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/helloworld/HelloWorldAnnotationProcessorFactory.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/helloworld/HelloWorldAnnotationProcessorFactory.java
deleted file mode 100644
index 0bef2bc..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/helloworld/HelloWorldAnnotationProcessorFactory.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    mkaufman@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests.annotations.helloworld;
-
-import java.util.Set;
-
-import org.eclipse.jdt.apt.tests.annotations.BaseFactory;
-
-import com.sun.mirror.apt.AnnotationProcessor;
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.declaration.AnnotationTypeDeclaration;
-
-public class HelloWorldAnnotationProcessorFactory extends BaseFactory {
-	
-	public HelloWorldAnnotationProcessorFactory() {
-		super(HelloWorldAnnotation.class.getName());
-	}
-
-	public AnnotationProcessor getProcessorFor(
-			Set<AnnotationTypeDeclaration> atds,
-			AnnotationProcessorEnvironment env) 
-	{
-		return new HelloWorldAnnotationProcessor( env );
-	}
-	
-}
\ No newline at end of file
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/helloworld/HelloWorldWildcardAnnotationProcessorFactory.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/helloworld/HelloWorldWildcardAnnotationProcessorFactory.java
deleted file mode 100644
index 826f177..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/helloworld/HelloWorldWildcardAnnotationProcessorFactory.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    jgarms@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-package org.eclipse.jdt.apt.tests.annotations.helloworld;
-
-import java.util.Collection;
-import java.util.Collections;
-
-/**
- * Processor factory that claims annotations with a wildcard 
- * ("org.eclipse.jdt.apt.tests.annotations.helloworld.*")
- */
-public class HelloWorldWildcardAnnotationProcessorFactory extends
-		HelloWorldAnnotationProcessorFactory {
-
-	
-	public Collection<String> supportedAnnotationTypes() {
-		return Collections.singletonList("org.eclipse.jdt.apt.tests.annotations.helloworld.*"); //$NON-NLS-1$
-	}
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/messager/MessagerAnnotation.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/messager/MessagerAnnotation.java
deleted file mode 100644
index 1e0e92a..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/messager/MessagerAnnotation.java
+++ /dev/null
@@ -1,21 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *   wharley@bea.com - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests.annotations.messager;
-
-/**
- *
- */
-public @interface MessagerAnnotation {
-	enum Severity { ERROR, WARNING, INFO, OK };
-	
-	Severity severity();
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/messager/MessagerAnnotationProcessor.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/messager/MessagerAnnotationProcessor.java
deleted file mode 100644
index 791a35f..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/messager/MessagerAnnotationProcessor.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *   wharley@bea.com - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests.annotations.messager;
-
-import java.util.Collection;
-import java.util.Set;
-
-import org.eclipse.jdt.apt.tests.annotations.BaseProcessor;
-
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.apt.Messager;
-import com.sun.mirror.declaration.AnnotationTypeDeclaration;
-import com.sun.mirror.declaration.Declaration;
-import com.sun.mirror.util.SourcePosition;
-
-/**
- * Used to test the Messager interface.  Processing @MessagerAnnotation
- * causes messages to be posted.
- */
-public class MessagerAnnotationProcessor extends BaseProcessor {
-
-	private final AnnotationTypeDeclaration _annotationDecl;
-	
-	// Text of problems created
-	public static final String PROBLEM_TEXT_INFO = "Annotated with MessagerAnnotation(INFO)"; //$NON-NLS-1$
-	public static final String PROBLEM_TEXT_WARNING = "Annotated with MessagerAnnotation(WARNING)"; //$NON-NLS-1$
-	public static final String PROBLEM_TEXT_ERROR = "Annotated with MessagerAnnotation(ERROR)"; //$NON-NLS-1$
-
-	public MessagerAnnotationProcessor(
-			Set<AnnotationTypeDeclaration> decls, AnnotationProcessorEnvironment env) {
-		super(env);
-        assert decls.size() == 1;
-        _annotationDecl = decls.iterator().next();
-	}
-
-	/* (non-Javadoc)
-	 * @see com.sun.mirror.apt.AnnotationProcessor#process()
-	 */
-	public void process() {
-        Collection<Declaration> annotatedDecls = _env.getDeclarationsAnnotatedWith(_annotationDecl);
-        Messager m = _env.getMessager();
-        for (Declaration decl : annotatedDecls) {
-        	MessagerAnnotation a = decl.getAnnotation(MessagerAnnotation.class);
-        	SourcePosition sp = decl.getPosition();
-        	MessagerAnnotation.Severity sev = a.severity();
-        	switch (sev) {
-        	case ERROR :
-        		m.printError(sp, PROBLEM_TEXT_ERROR);
-        		break;
-        	case WARNING :
-        		m.printWarning(sp, PROBLEM_TEXT_WARNING);
-        		break;
-        	case INFO :
-        		m.printNotice(sp, PROBLEM_TEXT_INFO);
-        		break;
-        	}
-        }
-	}
-
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/messager/MessagerAnnotationProcessorFactory.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/messager/MessagerAnnotationProcessorFactory.java
deleted file mode 100644
index 1b3f279..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/messager/MessagerAnnotationProcessorFactory.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *   wharley@bea.com - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests.annotations.messager;
-
-import java.util.Set;
-
-import org.eclipse.jdt.apt.tests.annotations.BaseFactory;
-
-import com.sun.mirror.apt.AnnotationProcessor;
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.declaration.AnnotationTypeDeclaration;
-
-public class MessagerAnnotationProcessorFactory extends BaseFactory {
-
-	private final static String annotationName = "org.eclipse.jdt.apt.tests.annotations.messager.MessagerAnnotation";
-	public MessagerAnnotationProcessorFactory() {
-		super(annotationName);
-	}
-
-	/* (non-Javadoc)
-	 * @see com.sun.mirror.apt.AnnotationProcessorFactory#getProcessorFor(java.util.Set, com.sun.mirror.apt.AnnotationProcessorEnvironment)
-	 */
-	public AnnotationProcessor getProcessorFor(
-			Set<AnnotationTypeDeclaration> decls, 
-			AnnotationProcessorEnvironment env) {
-		return new MessagerAnnotationProcessor(decls, env);
-	}
-
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/messager/MessagerCodeExample.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/messager/MessagerCodeExample.java
deleted file mode 100644
index 4f5dca5..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/messager/MessagerCodeExample.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *   wharley@bea.com - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests.annotations.messager;
-
-
-/**
- * Code examples for tests of Messager interface
- */
-@SuppressWarnings("nls")
-public class MessagerCodeExample {
-
-	public static final String CODE_PACKAGE = "messagertestpackage";
-	public static final String CODE_CLASS_NAME = "MessagerTestClass";
-	public static final String CODE_FULL_NAME = CODE_PACKAGE + "." + CODE_CLASS_NAME;
-	
-	// These offsets work for each code example, as long as the examples are cumulative
-	public static final int INFO_START = 219;
-	public static final int INFO_END = 222;
-	public static final int WARNING_START = 319;
-	public static final int WARNING_END = 322;
-	public static final int ERROR_START = 417;
-	public static final int ERROR_END = 421;
-
-	private static final String HEADER_CHUNK = 
-		"package messagertestpackage;\n" +
-		"import org.eclipse.jdt.apt.tests.annotations.messager.MessagerAnnotation;" + "\n" +
-		"public class MessagerTestClass {" + "\n";
-
-	private static final String INFO_CHUNK =
-		"    @MessagerAnnotation(severity=MessagerAnnotation.Severity.INFO)" + "\n" +
-		"    public void Foo() {" + "\n" +
-		"    }" + "\n";
-
-	private static final String WARNING_CHUNK =
-		"    @MessagerAnnotation(severity=MessagerAnnotation.Severity.WARNING)" + "\n" +
-		"    public void Bar() {" + "\n" +
-		"    }" + "\n";
-
-	private static final String ERROR_CHUNK =
-		"    @MessagerAnnotation(severity=MessagerAnnotation.Severity.ERROR)" + "\n" +
-		"    public void Quux() {" + "\n" +
-		"    }" + "\n";
-	
-	private static final String OK_CHUNK =
-		"    @MessagerAnnotation(severity=MessagerAnnotation.Severity.OK)" + "\n" +
-		"    public void Foo() {" + "\n" +
-		"    }" + "\n";
-
-	/** Code example with INFO, WARNING, and ERROR severities */
-	public static final String CODE1 = 
-		HEADER_CHUNK +
-		INFO_CHUNK +
-		WARNING_CHUNK +
-		ERROR_CHUNK +
-		"}";
-
-	/** Code example with INFO and WARNING severities */
-	public static final String CODE2 = 
-		HEADER_CHUNK +
-		INFO_CHUNK +
-		WARNING_CHUNK +
-		"}";
-	
-	/** Code example with INFO severity only */
-	public static final String CODE3 = 
-		HEADER_CHUNK +
-		INFO_CHUNK +
-		"}";
-	
-	/** Code example with INFO severity only */
-	public static final String CODE4 = 
-		HEADER_CHUNK +
-		OK_CHUNK +
-		"}";
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/ASTBasedMirrorDeclarationProcessorFactory.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/ASTBasedMirrorDeclarationProcessorFactory.java
deleted file mode 100644
index db8e4c1..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/ASTBasedMirrorDeclarationProcessorFactory.java
+++ /dev/null
@@ -1,122 +0,0 @@
-package org.eclipse.jdt.apt.tests.annotations.mirrortest;
-
-import java.util.Collection;
-import java.util.Set;
-
-import org.eclipse.jdt.apt.tests.annotations.BaseFactory;
-import org.eclipse.jdt.apt.tests.annotations.BaseProcessor;
-
-import com.sun.mirror.apt.AnnotationProcessor;
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.declaration.AnnotationTypeDeclaration;
-import com.sun.mirror.declaration.ClassDeclaration;
-import com.sun.mirror.declaration.ConstructorDeclaration;
-import com.sun.mirror.declaration.FieldDeclaration;
-import com.sun.mirror.declaration.MethodDeclaration;
-import com.sun.mirror.declaration.TypeDeclaration;
-
-public class ASTBasedMirrorDeclarationProcessorFactory
-	extends BaseFactory
-{
-	public ASTBasedMirrorDeclarationProcessorFactory(){
-		super("test.DeclarationAnno");
-	}
-	
-	public AnnotationProcessor getProcessorFor(
-			Set<AnnotationTypeDeclaration> arg0, 
-			AnnotationProcessorEnvironment env) {
-		return new ASTBasedMirrorDeclarationProcessor(env);
-	}
-	
-	public static final class ASTBasedMirrorDeclarationProcessor
-		extends BaseProcessor{
-		
-		public ASTBasedMirrorDeclarationProcessor(AnnotationProcessorEnvironment env){
-			super(env);
-		}
-		public void process() {
-			final Collection<TypeDeclaration> typeDecls = _env.getTypeDeclarations();
-			boolean done = false;
-			for( TypeDeclaration typeDecl : typeDecls ){
-				if(typeDecl instanceof ClassDeclaration ){
-					examineClass( (ClassDeclaration)typeDecl );
-					if( typeDecl.getQualifiedName().equals("test.Foo") )
-						done = true;
-				}
-			}
-			// if the current file does not contain "test.Foo",
-			// look for it by name and run the same tests.
-			if( !done ){
-				final ClassDeclaration fooDecl = (ClassDeclaration)_env.getTypeDeclaration("test.Foo");
-				examineClass(fooDecl);
-				final ClassDeclaration innerTypeDecl = (ClassDeclaration)_env.getTypeDeclaration("test.Foo$Inner");
-				examineClass(innerTypeDecl);
-			}
-		}
-	
-		private void examineClass(ClassDeclaration typeDecl ){
-			
-			assertNonNull(typeDecl, "missing type declaration");
-			if( typeDecl != null ){				
-				final String typename = typeDecl.getSimpleName();
-				if(typename.equals("Foo")){
-					final Collection<? extends MethodDeclaration> methods = 
-						typeDecl.getMethods();
-					assertEqual(2, methods.size(), "number of methods do not match ");
-					for(MethodDeclaration method : methods ){
-						final String name = method.getSimpleName();
-						if( name.equals("getType") ){
-							final String methodString = method.toString();
-							final String expectedString = "UnknownType getType()";
-							assertEqual(expectedString, methodString, "signature mismatch");
-						}
-						else if( name.equals("voidMethod")){
-							final String methodString = method.toString();
-							final String expectedString = "void voidMethod()";
-							assertEqual(expectedString, methodString, "signature mismatch");
-						}
-						else{
-							assertEqual(null, method.toString(), "unexpected method");
-						}
-					}
-					
-					final Collection<ConstructorDeclaration> constructors = 
-						typeDecl.getConstructors();
-					assertEqual(1, constructors.size(), "number of constructors do not match");
-					for( ConstructorDeclaration constructor : constructors ){
-						final String constructorString = constructor.toString();
-						final String expectedString = " Foo(type)";
-						assertEqual(expectedString, constructorString, "signature mismatch");
-					}
-					final Collection<FieldDeclaration> fields = 
-						typeDecl.getFields();
-					assertEqual(2, fields.size(), "number of fields do not match");
-					for( FieldDeclaration field : fields ){
-						final String name = field.getSimpleName();
-						if( "field0".equals(name) || "field1".equals(name) ){
-							continue;
-						}
-						assertEqual(null, name, "unexpected field");
-					}
-				}
-				else if(typename.equals("Inner")){
-					final Collection<? extends MethodDeclaration> methods = 
-						typeDecl.getMethods();
-					assertEqual(0, methods.size(), "number of methods do not match ");
-					
-					final Collection<ConstructorDeclaration> constructors = 
-						typeDecl.getConstructors();
-					assertEqual(1, constructors.size(), "number of constructors do not match");
-					for( ConstructorDeclaration constructor : constructors ){
-						final String constructorString = constructor.toString();
-						final String expectedString = "Inner()";
-						assertEqual(expectedString, constructorString, "signature mismatch");
-					}
-					final Collection<FieldDeclaration> fields = 
-						typeDecl.getFields();
-					assertEqual(0, fields.size(), "number of fields do not match");
-				}
-			}
-		}
-	}
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/CodeExample.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/CodeExample.java
deleted file mode 100644
index 1ef9baa..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/CodeExample.java
+++ /dev/null
@@ -1,70 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    jgarms@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-
-package org.eclipse.jdt.apt.tests.annotations.mirrortest;
-
-/**
- * Holds information for the mirror tests.
- */
-@SuppressWarnings("nls")
-public class CodeExample {
-	
-	public static final String CODE_PACKAGE = "mirrortestpackage";
-	
-	public static final String CODE_CLASS_NAME = "MirrorTestClass";
-	
-	public static final String CODE_FULL_NAME = CODE_PACKAGE + "." + CODE_CLASS_NAME;
-	
-	public static final String CODE = 
-		"package mirrortestpackage;\n" +
-        "\n" +
-        "import java.io.Serializable;\n" +
-        "import org.eclipse.jdt.apt.tests.annotations.mirrortest.MirrorTestAnnotation;\n" +
-        "\n" +
-        "public class MirrorTestClass implements Serializable {\n" +
-        "\n" +
-        "    public static final String STATIC_FIELD = \"Static Field\";\n" +
-        "\n" +
-        "    private static final long serialVersionUID = 42L;\n" +
-        "\n" +
-        "    public String field;\n" +
-        "\n" +
-        "    public MirrorTestClass() {\n" +
-        "        field = \"Field\";\n" +
-        "    }\n" +
-        "\n" +
-        "    @MirrorTestAnnotation\n" +
-        "    public static Object staticMethod() {\n" +
-        "        return null;\n" +
-        "    }\n" +
-        "\n" +
-        "    public String stringMethod() {\n" +
-        "        return null;\n" +
-        "    }\n" +
-        "\n" +
-		"\n" +
-        "    public String toString() {\n" +
-        "        return null;\n" +
-        "    }\n" +
-        "\n" +
-        "    public static class InnerClass extends MirrorTestClass {\n" +
-		"\n" +
-        "        private static final long serialVersionUID = 148L;\n" +
-        "\n" +
-        "        public static Object staticMethod() {\n" +
-        "            return null;\n" +
-        "        }\n" +
-        "\n" +
-        "    }\n" +
-        "}";
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/DefaultConstantAnnotationFactory.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/DefaultConstantAnnotationFactory.java
deleted file mode 100644
index 8321617..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/DefaultConstantAnnotationFactory.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    tyeung@bea.com - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jdt.apt.tests.annotations.mirrortest;
-
-import java.util.Set;
-
-import org.eclipse.jdt.apt.tests.annotations.BaseFactory;
-
-import com.sun.mirror.apt.AnnotationProcessor;
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.declaration.AnnotationTypeDeclaration;
-
-public class DefaultConstantAnnotationFactory extends BaseFactory{
-	
-	public DefaultConstantAnnotationFactory(){
-		super("test.Trigger");
-	}
-	public AnnotationProcessor getProcessorFor(Set<AnnotationTypeDeclaration> decls, AnnotationProcessorEnvironment env) {
-		return new DefaultConstantProcessor(env);
-	}
-
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/DefaultConstantProcessor.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/DefaultConstantProcessor.java
deleted file mode 100644
index 9484dc3..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/DefaultConstantProcessor.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    tyeung@bea.com - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jdt.apt.tests.annotations.mirrortest;
-
-import java.util.Collection;
-
-import org.eclipse.jdt.apt.tests.annotations.BaseProcessor;
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.apt.Messager;
-import com.sun.mirror.declaration.AnnotationTypeDeclaration;
-import com.sun.mirror.declaration.AnnotationTypeElementDeclaration;
-import com.sun.mirror.declaration.Declaration;
-import com.sun.mirror.declaration.FieldDeclaration;
-import com.sun.mirror.declaration.MethodDeclaration;
-import com.sun.mirror.declaration.TypeDeclaration;
-import com.sun.mirror.type.DeclaredType;
-
-public class DefaultConstantProcessor extends BaseProcessor {
-	public DefaultConstantProcessor(AnnotationProcessorEnvironment env){
-		super(env);
-	}
-	public void process() {
-		final AnnotationTypeDeclaration trigger = (AnnotationTypeDeclaration)_env.getTypeDeclaration("test.Trigger");
-		
-		final Messager msger = _env.getMessager();
-		if( trigger == null)
-			msger.printError("cannot find test.Trigger");
-		
-		final Collection<Declaration> decls = _env.getDeclarationsAnnotatedWith(trigger);
-		for(Declaration decl : decls ){
-			if( decl instanceof TypeDeclaration ){
-				final TypeDeclaration typeDecl = (TypeDeclaration)decl;
-				if( "test.EntryPoint".equals(typeDecl.getQualifiedName()) ){
-					final Collection<FieldDeclaration> fields = typeDecl.getFields();
-					for( FieldDeclaration field : fields ){
-						final String name = field.getSimpleName();
-						if( "nestedAnno".equals(name)){
-							final DeclaredType fieldType = (DeclaredType)field.getType();
-							final Collection<TypeDeclaration> nestedTypes = fieldType.getDeclaration().getNestedTypes();
-							for(TypeDeclaration nestedType : nestedTypes ){
-								if( "NestedAnnotation".equals(nestedType.getSimpleName()) ){
-									final Collection<? extends MethodDeclaration> annotationMethods = nestedType.getMethods();
-									for( MethodDeclaration annotationMethod : annotationMethods ){
-										if( "value".equals(annotationMethod.getSimpleName()) ){
-											final AnnotationTypeElementDeclaration value = 
-												(AnnotationTypeElementDeclaration)annotationMethod;
-											final String defaultString = value.getDefaultValue() == null ? "" :
-												value.getDefaultValue().toString();
-											final String expected = "Eore";
-											if(!defaultString.equals(expected) )
-												msger.printError("expecting default=" + expected + " but got " +defaultString);
-										}
-									}
-								}
-							}
-							
-							final Collection<FieldDeclaration> nestedAnnoFields = fieldType.getDeclaration().getFields();
-							for(FieldDeclaration nestedAnnoField : nestedAnnoFields ){
-								if(nestedAnnoField.getSimpleName().equals("FOUR")){
-									final Object constant = nestedAnnoField.getConstantValue();
-									final String expected = "4";
-									final String constantStr = constant == null ? "" : constant.toString();
-									if(!constantStr.equals(expected) )
-										msger.printError("expecting constant=" + expected + " but got " + constantStr);
-								}
-							}
-							continue;
-						}
-						else{
-							msger.printError("found unexpected field " + field );
-						}
-						
-					}
-					
-					continue;
-				}
-			}
-			msger.printError("found unexpected declaration " + decl );
-		}
-	}
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorDeclarationCodeExample.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorDeclarationCodeExample.java
deleted file mode 100644
index 9208678..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorDeclarationCodeExample.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    sbandow@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests.annotations.mirrortest;
-
-@SuppressWarnings("nls")
-public class MirrorDeclarationCodeExample
-{
-	public static final String CODE_PACKAGE = "mirrortestpackage";
-	public static final String CODE_CLASS_NAME = "DeclarationTestClass";
-	public static final String CODE_FULL_NAME = CODE_PACKAGE + "." + CODE_CLASS_NAME;
-
-	public static final String CODE = 
-		"package mirrortestpackage;\n" +
-		"import org.eclipse.jdt.apt.tests.annotations.mirrortest.MirrorDeclarationTestAnnotation;" + "\n" +
-		"@MirrorDeclarationTestAnnotation(s=\"fred\", value=5)" + "\n" +
-		"public class DeclarationTestClass {" + "\n" +
-		"    public class ClassDec {" + "\n" +
-		"	     public ClassDec() {}" + "\n" +
-		"	     public ClassDec(int j) {}" + "\n" +
-		"	     public static final int i = 1;" + "\n" +
-		"	     public float f;" + "\n" +
-		"	     public static final String s = \"hello\";" + "\n" +
-		"	     public java.util.GregorianCalendar gc;" + "\n" +
-		"        public void methodDec(int k, String... t) throws Exception {}" + "\n" +
-		"        public void methodDecNoArg(){}" + "\n" +
-		"    }" + "\n" +
-    	"    public enum EnumDec {" + "\n" +
-		"        aardvark, anteater" + "\n" +
-		"    }" + "\n" +
-		"}";
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorDeclarationTestAnnotation.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorDeclarationTestAnnotation.java
deleted file mode 100644
index 2ae16c4..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorDeclarationTestAnnotation.java
+++ /dev/null
@@ -1,18 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    sbandow@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests.annotations.mirrortest;
-
-public @interface MirrorDeclarationTestAnnotation {
-	String s() default "bob"; //$NON-NLS-1$
-	int value() default 3;
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorDeclarationTestAnnotationProcessor.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorDeclarationTestAnnotationProcessor.java
deleted file mode 100644
index e5887a9..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorDeclarationTestAnnotationProcessor.java
+++ /dev/null
@@ -1,320 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    sbandow@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-//TODO AnnotationMirror.ElementValues()
-//TODO AnnotationMirror.getPosition()
-//TODO AnnotationValue.getPosition()
-//TODO AnnotationValue.toString()
-//TODO Declaration
-//TODO ExecutableDeclaration
-//TODO TypeDeclaration
-//TODO InterfaceDeclaration
-//TODO MemberDeclaration
-//TODO MethodDeclaration.getFormalTypeParameters()
-//TODO PackageDeclaration
-//TODO TypeParameterDeclaration
-
-package org.eclipse.jdt.apt.tests.annotations.mirrortest;
-
-import java.util.Collection;
-
-import org.eclipse.jdt.apt.tests.annotations.BaseProcessor;
-import org.eclipse.jdt.apt.tests.annotations.ProcessorTestStatus;
-
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.declaration.AnnotationMirror;
-import com.sun.mirror.declaration.AnnotationTypeDeclaration;
-import com.sun.mirror.declaration.AnnotationTypeElementDeclaration;
-import com.sun.mirror.declaration.AnnotationValue;
-import com.sun.mirror.declaration.ClassDeclaration;
-import com.sun.mirror.declaration.ConstructorDeclaration;
-import com.sun.mirror.declaration.EnumConstantDeclaration;
-import com.sun.mirror.declaration.EnumDeclaration;
-import com.sun.mirror.declaration.FieldDeclaration;
-import com.sun.mirror.declaration.MethodDeclaration;
-import com.sun.mirror.declaration.Modifier;
-import com.sun.mirror.declaration.ParameterDeclaration;
-import com.sun.mirror.declaration.TypeDeclaration;
-import com.sun.mirror.type.AnnotationType;
-import com.sun.mirror.type.ClassType;
-import com.sun.mirror.type.ReferenceType;
-
-@SuppressWarnings("nls")
-public class MirrorDeclarationTestAnnotationProcessor extends BaseProcessor {
-	
-	public MirrorDeclarationTestAnnotationProcessor(AnnotationProcessorEnvironment env) {
-		super(env);
-	}
-
-	public void process() {
-		try {
-			Collection<TypeDeclaration> decls = _env.getSpecifiedTypeDeclarations();
-			TypeDeclaration testClass = null;
-			ClassDeclaration testClassDec = null;
-			for(TypeDeclaration decl : decls) {
-	            if(decl.toString().endsWith("DeclarationTestClass")) { //$NON-NLS-1$
-	            	testClass = decl;
-	            }
-	            if(decl.toString().endsWith("ClassDec")) { //$NON-NLS-1$
-	            	testClassDec = (ClassDeclaration)decl;
-	            }
-			}
-
-			testAnnotationImplementations(testClass);
-			testClassDeclaration(testClassDec);
-			testEnumImplementations(testClass);
-			testFieldDeclaration(testClassDec);
-			testMethodDeclaration(testClassDec);
-		}
-		catch (Throwable t) {
-			if (!ProcessorTestStatus.hasErrors()) {
-				ProcessorTestStatus.failWithoutException(t.toString());
-			}
-			t.printStackTrace();
-		}
-	}
-	
-	
-	/**
-	 * Tests for:
-	 * Annotation Mirror
-	 * AnnotationTypeDeclaration
-	 * AnnotationTypeElementDeclaration
-	 * AnnotationValue
-	 * 
-	 * @param testClass TypeDeclaration
-	 * 
-	 */
-	private void testAnnotationImplementations(TypeDeclaration testClass) {
-		
-		//AnnotationMirror tests
-		Collection<AnnotationMirror> annoMirrors = testClass.getAnnotationMirrors();
-		ProcessorTestStatus.assertEquals("Number of annotation mirrors", 1, annoMirrors.size());
-		
-        AnnotationMirror annoMirror = annoMirrors.iterator().next();
-        ProcessorTestStatus.assertTrue("Annotation mirror contents", annoMirror.toString().startsWith("@MirrorDeclarationTestAnnotation"));
-        
-        AnnotationType annoType = annoMirror.getAnnotationType();
-        ProcessorTestStatus.assertTrue("AnnotationType name", annoType.toString().endsWith("mirrortest.MirrorDeclarationTestAnnotation"));
-        
-
-        //AnnotationTypeDeclaration tests
-        AnnotationTypeDeclaration annoTypeDecl = annoType.getDeclaration();
-        ProcessorTestStatus.assertEquals("AnnotationTypeDeclaration same as AnnotationType", annoType, annoTypeDecl);
-        
-        
-        //AnnotationTypeElementDeclaration and AnnotationValue tests
-        Collection<AnnotationTypeElementDeclaration> elementDeclarations = annoTypeDecl.getMethods();
-        ProcessorTestStatus.assertEquals("Number of methods on annotation", 2, elementDeclarations.size());
-
-        AnnotationTypeElementDeclaration elementString = null;
-        AnnotationTypeElementDeclaration elementInt = null;
-        for(AnnotationTypeElementDeclaration ated : elementDeclarations) {
-        	if(ated.toString().startsWith("S"))
-        		elementString = ated;
-        	if(ated.toString().startsWith("i"))
-        		elementInt = ated;
-        }
-        ProcessorTestStatus.assertEquals("declaring type same as AnnotationTypeDeclaration", annoTypeDecl, elementString.getDeclaringType());
-        ProcessorTestStatus.assertEquals("declaring type same as AnnotationTypeDeclaration", annoTypeDecl, elementInt.getDeclaringType());
-
-        AnnotationValue valueString = elementString.getDefaultValue();
-        AnnotationValue valueInt = elementInt.getDefaultValue();
-        ProcessorTestStatus.assertEquals("", "bob", valueString.getValue());
-        ProcessorTestStatus.assertEquals("", new Integer(3), valueInt.getValue());
-        ProcessorTestStatus.assertEquals("", "bob", valueString.toString());
-        ProcessorTestStatus.assertEquals("", "3", valueInt.toString());
-	}
-	
-	/**
-	 * Tests for:
-	 * ClassDeclaration
-	 * ConstructorDeclaration
-	 * 
-	 * @param testClass
-	 */
-	private void testClassDeclaration(ClassDeclaration testClassDec) {
-			
-		//ClassDeclaration tests
-		Collection<ConstructorDeclaration> constructDecls = testClassDec.getConstructors();
-		ProcessorTestStatus.assertEquals("Number of constructors", 2, constructDecls.size());
-
-		ConstructorDeclaration constructNoArg = null;
-		ConstructorDeclaration constructIntArg = null;
-		for(ConstructorDeclaration construct : constructDecls) {
-			if(construct.toString().endsWith("()"))
-				constructNoArg = construct;
-			if(construct.toString().endsWith("(int j)"))
-				constructIntArg = construct;
-		}
-		ProcessorTestStatus.assertTrue("constructor with no args", constructNoArg != null);
-		ProcessorTestStatus.assertTrue("constructor with one (int) arg", constructIntArg != null);
-		
-		Collection<MethodDeclaration> methodDecls = testClassDec.getMethods();
-		ProcessorTestStatus.assertEquals("Number of methods", 2, methodDecls.size());
-
-		MethodDeclaration methodDecl = null;
-		methodDecl = methodDecls.iterator().next();
-		ProcessorTestStatus.assertTrue("method declaration exists", methodDecl != null);
-		
-		ClassType superClass = testClassDec.getSuperclass();
-		ProcessorTestStatus.assertEquals("Object is only super", "java.lang.Object", superClass.toString());	
-	}
-	
-	/**
-	 * Tests for:
-	 * EnumConstantDeclaration
-	 * EnumDeclaration 
-	 * 
-	 * @param testClass
-	 */
-	private void testEnumImplementations(TypeDeclaration testClass) {
-		
-		//EnumDeclaration tests
-		Collection<TypeDeclaration> nestedTypes = testClass.getNestedTypes();
-		EnumDeclaration enumDecl = null;
-		for(TypeDeclaration decl : nestedTypes) {
-			if(decl.toString().endsWith("EnumDec"))
-				enumDecl = (EnumDeclaration)decl;
-		}
-		ProcessorTestStatus.assertTrue("EnumDeclaration exists", enumDecl != null);
-
-		Collection<EnumConstantDeclaration> enumConstDecls = enumDecl.getEnumConstants();
-		ProcessorTestStatus.assertEquals("Number of enum constants", 2, enumConstDecls.size());
-		EnumConstantDeclaration enumConstAardvark = null;
-		EnumConstantDeclaration enumConstAnteater = null;
-		for(EnumConstantDeclaration enumConst : enumConstDecls) {
-			if(enumConst.toString().equals("aardvark"))
-				enumConstAardvark = enumConst;
-			if(enumConst.toString().equals("anteater"))
-				enumConstAnteater = enumConst;
-		}
-		ProcessorTestStatus.assertTrue("enum constant \"aardvark\" exists", enumConstAardvark != null);
-		ProcessorTestStatus.assertTrue("enum constant \"anteater\" exists", enumConstAnteater != null);
-		
-		//EnumConstantDeclaration tests
-		EnumDeclaration declaringTypeAardvark = enumConstAardvark.getDeclaringType();
-		EnumDeclaration declaringTypeAnteater = enumConstAnteater.getDeclaringType();
-		ProcessorTestStatus.assertEquals("Declaring type is EnumDec", "mirrortestpackage.DeclarationTestClass.EnumDec", declaringTypeAardvark.toString());
-		ProcessorTestStatus.assertEquals("Declaring type is EnumDec", "mirrortestpackage.DeclarationTestClass.EnumDec", declaringTypeAnteater.toString());
-		
-		
-		//Modifier tests
-		Modifier[] valuesArray = Modifier.values();
-		int valuesArrayLength = valuesArray.length;
-		ProcessorTestStatus.assertEquals("Modifier.values() array length", 11, valuesArrayLength);
-
-		ProcessorTestStatus.assertEquals("Modifier.ABSTRACT", "abstract", Modifier.ABSTRACT.toString());
-		ProcessorTestStatus.assertEquals("Modifier.FINAL", "final", Modifier.FINAL.toString());
-		ProcessorTestStatus.assertEquals("Modifier.NATIVE", "native", Modifier.NATIVE.toString());
-		ProcessorTestStatus.assertEquals("Modifier.PRIVATE", "private", Modifier.PRIVATE.toString());
-		ProcessorTestStatus.assertEquals("Modifier.PROTECTED", "protected", Modifier.PROTECTED.toString());
-		ProcessorTestStatus.assertEquals("Modifier.PUBLIC", "public", Modifier.PUBLIC.toString());
-		ProcessorTestStatus.assertEquals("Modifier.STATIC", "static", Modifier.STATIC.toString());
-		ProcessorTestStatus.assertEquals("Modifier.STRICTFP", "strictfp", Modifier.STRICTFP.toString());
-		ProcessorTestStatus.assertEquals("Modifier.SYNCHRONIZED", "synchronized", Modifier.SYNCHRONIZED.toString());
-		ProcessorTestStatus.assertEquals("Modifier.TRANSIENT", "transient", Modifier.TRANSIENT.toString());
-		ProcessorTestStatus.assertEquals("Modifier.VOLATILE", "volatile", Modifier.VOLATILE.toString());
-		ProcessorTestStatus.assertEquals("Modifier.valueOf(\"PUBLIC\")", Modifier.PUBLIC, Modifier.valueOf("PUBLIC"));
-	}
-	
-	/**
-	 * Tests for:
-	 * FieldDeclaration
-	 * 
-	 * @param testClassDec
-	 */
-	private void testFieldDeclaration(ClassDeclaration testClassDec) {
-		
-		//FieldDeclaration tests
-		Collection<FieldDeclaration> fieldDecls = testClassDec.getFields();
-		ProcessorTestStatus.assertEquals("Number of fields", 4, fieldDecls.size());
-		FieldDeclaration fieldI = null;
-		FieldDeclaration fieldF = null;
-		FieldDeclaration fieldS = null;
-		FieldDeclaration fieldGC = null;
-		for(FieldDeclaration field : fieldDecls) {
-			if(field.toString().equals("i"))
-				fieldI = field;
-			if(field.toString().equals("f"))
-				fieldF = field;
-			if(field.toString().equals("s"))
-				fieldS = field;
-			if(field.toString().equals("gc"))
-				fieldGC = field;
-		}
-		ProcessorTestStatus.assertTrue("Field i exists", fieldI != null);
-		ProcessorTestStatus.assertEquals("Field i constant expression is 1", "1", fieldI.getConstantExpression());
-		ProcessorTestStatus.assertEquals("Field i constant value is 1", "1", fieldI.getConstantValue().toString());
-		ProcessorTestStatus.assertEquals("Field i type is int", "int", fieldI.getType().toString());
-		ProcessorTestStatus.assertTrue("Field f exists", fieldF != null);
-		ProcessorTestStatus.assertEquals("Field f constant expression is null", null, fieldF.getConstantExpression());
-		ProcessorTestStatus.assertEquals("Field f constant value is null", null, fieldF.getConstantValue());
-		ProcessorTestStatus.assertEquals("Field f type is float", "float", fieldF.getType().toString());
-		ProcessorTestStatus.assertTrue("Field s exists", fieldS != null);
-		ProcessorTestStatus.assertEquals("Field s constant expression is hello", "hello", fieldS.getConstantExpression());
-		ProcessorTestStatus.assertEquals("Field s constant value is hello", "hello", fieldS.getConstantValue().toString());
-		ProcessorTestStatus.assertEquals("Field s type is java.lang.String", "java.lang.String", fieldS.getType().toString());
-		ProcessorTestStatus.assertTrue("Field gc exists", fieldGC != null);
-		ProcessorTestStatus.assertEquals("Field gc constant expression is null", null, fieldGC.getConstantExpression());
-		ProcessorTestStatus.assertEquals("Field gc constant value is null", null, fieldGC.getConstantValue());
-		ProcessorTestStatus.assertEquals("Field gc type is java.util.GregorianCalendar", "java.util.GregorianCalendar", fieldGC.getType().toString());
-	}
-	
-	/**
-	 * Tests for:
-	 * MethodDeclaration
-	 * ParameterDeclaration
-	 * 
-	 * @param testClassDec
-	 */
-	private void testMethodDeclaration(ClassDeclaration testClassDec) {
-		
-		//Tests for MethodDeclaration
-		Collection<MethodDeclaration> methodDecls = testClassDec.getMethods();
-		MethodDeclaration methodDec = null;
-		MethodDeclaration methodDecNoArg = null;
-		for(MethodDeclaration method : methodDecls) {
-			if(method.toString().endsWith("methodDec(int k, String... t)"))
-				methodDec = method;
-			if(method.toString().endsWith("methodDecNoArg()"))
-				methodDecNoArg = method;
-		}
-		ProcessorTestStatus.assertTrue("Method methodDec exists", methodDec != null);
-
-		Collection<ReferenceType> thrownTypes = methodDec.getThrownTypes();
-		ProcessorTestStatus.assertEquals("Number of types thrown", 1, thrownTypes.size());
-		
-		ReferenceType thrownType = thrownTypes.iterator().next();
-		ProcessorTestStatus.assertEquals("methodDec throws Exception", "java.lang.Exception", thrownType.toString());
-		ProcessorTestStatus.assertTrue("methodDec is varargs", methodDec.isVarArgs());
-		ProcessorTestStatus.assertTrue("Method methodDecNoArg exists", methodDecNoArg != null);
-		ProcessorTestStatus.assertEquals("Number of types thrown", 0, methodDecNoArg.getThrownTypes().size());
-		ProcessorTestStatus.assertTrue("methodDecNoArg is not varargs", !methodDecNoArg.isVarArgs());
-
-		
-		//Tests for ParameterDeclaration
-		Collection<ParameterDeclaration> paramDecls = methodDec.getParameters();
-		ParameterDeclaration paramDeclInt = null;
-		ParameterDeclaration paramDeclString = null;
-		for(ParameterDeclaration param : paramDecls) {
-			if(param.toString().startsWith("int"))
-				paramDeclInt = param;
-			if(param.toString().startsWith("String..."))
-				paramDeclString = param;
-		}
-		ProcessorTestStatus.assertTrue("int parameter exists", paramDeclInt != null);
-		ProcessorTestStatus.assertEquals("Parameter type is int", "int", paramDeclInt.getType().toString());
-		ProcessorTestStatus.assertTrue("String... parameter exists", paramDeclString != null);
-		ProcessorTestStatus.assertEquals("Parameter type is String[]", "java.lang.String[]", paramDeclString.getType().toString());
-		ProcessorTestStatus.assertEquals("Number of parameters in methodDecNoArg", 0, methodDecNoArg.getParameters().size());
-	}
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorDeclarationTestAnnotationProcessorFactory.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorDeclarationTestAnnotationProcessorFactory.java
deleted file mode 100644
index db5b08b..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorDeclarationTestAnnotationProcessorFactory.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    jgarms@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests.annotations.mirrortest;
-
-import java.util.Set;
-
-import org.eclipse.jdt.apt.tests.annotations.BaseFactory;
-
-import com.sun.mirror.apt.AnnotationProcessor;
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.declaration.AnnotationTypeDeclaration;
-
-public class MirrorDeclarationTestAnnotationProcessorFactory extends BaseFactory 
-{
-	
-	public MirrorDeclarationTestAnnotationProcessorFactory() {
-		super(MirrorDeclarationTestAnnotation.class.getName());
-	}
-
-	public AnnotationProcessor getProcessorFor(Set<AnnotationTypeDeclaration> atds, AnnotationProcessorEnvironment env)
-	{
-		return new MirrorDeclarationTestAnnotationProcessor(env);
-	}
-
-
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorTestAnnotation.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorTestAnnotation.java
deleted file mode 100644
index ecb1e72..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorTestAnnotation.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    jgarms@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-
-package org.eclipse.jdt.apt.tests.annotations.mirrortest;
-
-/**
- * Annotation for testing the Mirror API implementation.
- * Work takes place in the MirrorTestAnnotationProcessor.
- *
- */
-public @interface MirrorTestAnnotation {
-
-	String value() default ""; //$NON-NLS-1$
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorTestAnnotationProcessor.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorTestAnnotationProcessor.java
deleted file mode 100644
index b2b86fe..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorTestAnnotationProcessor.java
+++ /dev/null
@@ -1,172 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    jgarms@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-
-package org.eclipse.jdt.apt.tests.annotations.mirrortest;
-
-import java.util.Collection;
-
-import org.eclipse.jdt.apt.tests.annotations.BaseProcessor;
-import org.eclipse.jdt.apt.tests.annotations.ProcessorTestStatus;
-
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.declaration.ClassDeclaration;
-import com.sun.mirror.declaration.EnumDeclaration;
-import com.sun.mirror.declaration.FieldDeclaration;
-import com.sun.mirror.declaration.InterfaceDeclaration;
-import com.sun.mirror.declaration.MethodDeclaration;
-import com.sun.mirror.declaration.PackageDeclaration;
-import com.sun.mirror.declaration.TypeDeclaration;
-import com.sun.mirror.declaration.TypeParameterDeclaration;
-import com.sun.mirror.type.InterfaceType;
-import com.sun.mirror.util.Declarations;
-
-@SuppressWarnings("nls")
-public class MirrorTestAnnotationProcessor extends BaseProcessor {
-	
-	private static final String[] CLASSNAMES = {
-		"java.util.Map.Entry",
-		"java.lang.Object",
-		"java.lang.String",
-		"java.util.concurrent.TimeUnit",
-		"java.lang.Override"
-	};
-	
-	private static final String[] NONEXISTANT_CLASSNAMES = {
-		"java.util.NotExist",
-		"java.annotation.NotExist.ReallyNotExist",
-		"bar.baz.Foo"
-	};
-	
-	public static boolean _processRun = false;
-	
-	public MirrorTestAnnotationProcessor(AnnotationProcessorEnvironment env) {
-		super(env);
-	}
-
-	public void process() {
-		_processRun = true;
-		try {
-			Collection<TypeDeclaration> decls = _env.getSpecifiedTypeDeclarations();
-			TypeDeclaration decl = null;
-			for (TypeDeclaration declTemp : decls) {
-				if (CodeExample.CODE_FULL_NAME.equals(declTemp.getQualifiedName()))
-					decl = declTemp;
-			}
-			testTypeDecl(decl);
-			testDeclarationsUtil(decl);
-			testPackageImpl();
-			testGetTypeDeclarations();
-		}
-		catch (Throwable t) {
-			if (!ProcessorTestStatus.hasErrors()) {
-				ProcessorTestStatus.failWithoutException(t.toString());
-			}
-			t.printStackTrace();
-		}
-	}
-	
-	private void testTypeDecl(TypeDeclaration typeDecl) {
-		ProcessorTestStatus.assertEquals("Type name", 
-				CodeExample.CODE_PACKAGE + "." + CodeExample.CODE_CLASS_NAME,
-				typeDecl.getQualifiedName());
-		
-		PackageDeclaration pkg = typeDecl.getPackage();
-		ProcessorTestStatus.assertEquals("Package", CodeExample.CODE_PACKAGE, pkg.getQualifiedName());
-		
-		Collection<FieldDeclaration> fields = typeDecl.getFields();
-		ProcessorTestStatus.assertEquals("Number of fields: " + fields, 3, fields.size());
-		
-		Collection<TypeParameterDeclaration> typeParams = typeDecl.getFormalTypeParameters();
-		ProcessorTestStatus.assertEquals("Number of type params", 0, typeParams.size());
-		
-		Collection<? extends MethodDeclaration> methods = typeDecl.getMethods();
-		ProcessorTestStatus.assertEquals("Number of methods", 3, methods.size());
-		
-		Collection<TypeDeclaration> nestedTypes = typeDecl.getNestedTypes();
-		ProcessorTestStatus.assertEquals("Number of nested types", 1, nestedTypes.size());
-		
-		Collection<InterfaceType> supers = typeDecl.getSuperinterfaces();
-		ProcessorTestStatus.assertEquals("Number of supers", 1, supers.size());
-	}
-	
-	private void testPackageImpl() {
-		PackageDeclaration pkg = _env.getPackage("org.eclipse.jdt.apt.tests.annotations.mirrortest");
-		ProcessorTestStatus.assertEquals("Package name", "org.eclipse.jdt.apt.tests.annotations.mirrortest", pkg.getQualifiedName());
-		// Not sure if this is the best way to test -- can we count on the number of classes 
-		// remaining the same in java.util?
-		
-		pkg = _env.getPackage("java");
-		ProcessorTestStatus.assertEquals("Package name", "java", pkg.getQualifiedName());
-		ProcessorTestStatus.assertEquals("Number of classes in java", 0, pkg.getClasses().size());
-		
-		pkg = _env.getPackage("java.util");
-		ProcessorTestStatus.assertEquals("Package name", "java.util", pkg.getQualifiedName());
-		
-		Collection<ClassDeclaration> classes = pkg.getClasses();
-		ProcessorTestStatus.assertEquals("Number of classes in java.util", 79, classes.size());
-		
-		Collection<EnumDeclaration> enums = pkg.getEnums();
-		ProcessorTestStatus.assertEquals("Number of enums in java.util", 0, enums.size());
-		
-		Collection<InterfaceDeclaration> interfaces = pkg.getInterfaces();
-		ProcessorTestStatus.assertEquals("Number of interfaces in java.util", 15, interfaces.size());
-	}
-	
-	private void testDeclarationsUtil(TypeDeclaration typeDecl) {
-		Declarations utils = _env.getDeclarationUtils();
-		TypeDeclaration objType = _env.getTypeDeclaration("java.lang.Object");
-		
-		// Test negative case
-		ProcessorTestStatus.assertTrue("Class hides Object", !utils.hides(typeDecl, objType));
-		
-		// Test positive case
-		TypeDeclaration innerClass = typeDecl.getNestedTypes().iterator().next();
-		
-		MethodDeclaration innerMethod = null;
-		for (MethodDeclaration method : innerClass.getMethods()) {
-			if (method.getSimpleName().equals("staticMethod")) {
-				innerMethod = method;
-				break;
-			}
-		}
-		
-		MethodDeclaration outerMethod = null;
-		for (MethodDeclaration method : typeDecl.getMethods()) {
-			if (method.getSimpleName().equals("staticMethod")) {
-				outerMethod = method;
-				break;
-			}
-		}
-		ProcessorTestStatus.assertTrue("inner's staticMethod() should hide MirrorTestClass'", utils.hides(innerMethod, outerMethod));
-	}
-	
-	private void testGetTypeDeclarations() {
-		for (String className : CLASSNAMES) {
-			testGetTypeDeclaration(className);
-		}
-		for (String className : NONEXISTANT_CLASSNAMES) {
-			testNonExistantTypeDeclaration(className);
-		}
-	}
-	
-	private void testGetTypeDeclaration(String className) {
-		TypeDeclaration type = _env.getTypeDeclaration(className);
-		ProcessorTestStatus.assertTrue("Could not find " + className, type != null);
-		ProcessorTestStatus.assertTrue("Name is incorrect", className.equals(type.getQualifiedName()));
-	}
-	
-	private void testNonExistantTypeDeclaration(String className) {
-		TypeDeclaration type = _env.getTypeDeclaration(className);
-		ProcessorTestStatus.assertTrue("Bad class found: " + className, null == type);
-	}
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorTestAnnotationProcessorFactory.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorTestAnnotationProcessorFactory.java
deleted file mode 100644
index f40b782..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorTestAnnotationProcessorFactory.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    jgarms@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-
-package org.eclipse.jdt.apt.tests.annotations.mirrortest;
-
-import java.util.Set;
-
-import org.eclipse.jdt.apt.tests.annotations.BaseFactory;
-
-import com.sun.mirror.apt.AnnotationProcessor;
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.declaration.AnnotationTypeDeclaration;
-
-public class MirrorTestAnnotationProcessorFactory extends BaseFactory {
-
-	public MirrorTestAnnotationProcessorFactory() {
-		super(MirrorTestAnnotation.class.getName());
-	}
-
-	public AnnotationProcessor getProcessorFor(Set<AnnotationTypeDeclaration> typeDecls, AnnotationProcessorEnvironment env) {
-		return new MirrorTestAnnotationProcessor(env);
-	}
-
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorUtilTestAnnotation.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorUtilTestAnnotation.java
deleted file mode 100644
index 0249f1e..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorUtilTestAnnotation.java
+++ /dev/null
@@ -1,6 +0,0 @@
-package org.eclipse.jdt.apt.tests.annotations.mirrortest;
-
-public @interface MirrorUtilTestAnnotation
-{
-	String value() default ""; //$NON-NLS-1$
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorUtilTestAnnotationProcessor.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorUtilTestAnnotationProcessor.java
deleted file mode 100644
index dbb9a0d..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorUtilTestAnnotationProcessor.java
+++ /dev/null
@@ -1,189 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    sbandow@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests.annotations.mirrortest;
-
-import java.io.File;
-import java.util.Map;
-
-import org.eclipse.jdt.apt.tests.annotations.BaseProcessor;
-import org.eclipse.jdt.apt.tests.annotations.ProcessorTestStatus;
-
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.declaration.FieldDeclaration;
-import com.sun.mirror.declaration.MethodDeclaration;
-import com.sun.mirror.declaration.TypeDeclaration;
-
-@SuppressWarnings("nls")
-public class MirrorUtilTestAnnotationProcessor extends BaseProcessor
-{
-
-	// Environment options test cases
-		// no-translation cases
-	public static final int EC_NORMAL = 0;
-	public static final int EC_NORMALPATH = 1;
-	public static final int EC_BOGUSCPVAR = 2;
-	public static final int EC_BADPROJ = 3;
-		// end of no-translation cases
-	public static final int EC_NUM_NOTRANSLATIONCASES = 4;
-		// expected-translation cases
-	public static final int EC_CPVAR = 4;
-	public static final int EC_CPVARPATH = 5;
-	public static final int EC_CPVARFILE = 6;
-	public static final int EC_PROJ = 7;
-	public static final int EC_PROJFILE = 8;
-	public static final int EC_PROJDIRFILE = 9;
-	
-	private static final String ENVPREFIX = "apt.tests.annotations.mirrortest.";
-	public static final String[] ENV_KEYS = {
-			// no-translation
-		ENVPREFIX + "normal",
-		ENVPREFIX + "normalPath",
-		ENVPREFIX + "boguscpvar",
-		ENVPREFIX + "badProj",
-			// expected-translation
-		ENVPREFIX + "cpvar",
-		ENVPREFIX + "cpvarPath",
-		ENVPREFIX + "cpvarFile",
-		ENVPREFIX + "proj",
-		ENVPREFIX + "projFile",
-		ENVPREFIX + "projdirFile"
-	};
-	public static final String[] ENV_VALUES = {
-			// no-translation
-		"normal",
-		"normal\\foo.bar",
-		"%NOSUCH\\VARNAME%",
-		"%ROOT%\\someOtherProject\\foo\\nonexistent.txt",
-			// expected-translation
-		"%ECLIPSE_HOME%",
-		"%ECLIPSE_HOME%\\plugins",
-		"%ECLIPSE_HOME%\\startup.jar",
-		"%ROOT%\\org.eclipse.jdt.apt.tests.MirrorUtilTestsProject",
-		"%ROOT%\\org.eclipse.jdt.apt.tests.MirrorUtilTestsProject\\.classpath",
-		"%PROJECT.DIR%\\.classpath"
-	};
-	
-	public MirrorUtilTestAnnotationProcessor(AnnotationProcessorEnvironment env)
-	{
-		super(env);
-	}
-
-	public void process()
-	{
-		testHidesOverrides();
-		testEnvOptions();
-	}
-	
-
-	@SuppressWarnings("unused")
-	private void testHidesOverrides()
-	{
-		//set the type declarations
-		TypeDeclaration type_EnvTestClass = null;
-		TypeDeclaration type_A = null;
-		TypeDeclaration type_B = null;
-		TypeDeclaration type_C = null;
-		TypeDeclaration type_D = null;
-		TypeDeclaration type_I = null;
-		TypeDeclaration type_J = null;
-		TypeDeclaration type_K = null;
-		for(TypeDeclaration type : _env.getTypeDeclarations())
-		{
-			if(type.toString().endsWith("EnvTestClass"))
-				type_EnvTestClass = type;
-			if(type.toString().endsWith("A"))
-				type_A = type;
-			if(type.toString().endsWith("B"))
-				type_B = type;
-			if(type.toString().endsWith("C"))
-				type_C = type;
-			if(type.toString().endsWith("D"))
-				type_D = type;
-			if(type.toString().endsWith("I"))
-				type_I = type;
-			if(type.toString().endsWith("J"))
-				type_J = type;
-			if(type.toString().endsWith("K"))
-				type_K = type;
-		}
-		
-		//set the method declarations
-		MethodDeclaration method_A = type_A.getMethods().iterator().next();
-		MethodDeclaration method_B = type_B.getMethods().iterator().next();
-		MethodDeclaration method_C = type_C.getMethods().iterator().next();
-		MethodDeclaration method_D = type_D.getMethods().iterator().next();
-		MethodDeclaration method_I = type_I.getMethods().iterator().next();
-		MethodDeclaration method_K = type_K.getMethods().iterator().next();
-		
-		//set the field declarations
-		FieldDeclaration field_A = type_A.getFields().iterator().next();
-		FieldDeclaration field_B = type_B.getFields().iterator().next();
-		FieldDeclaration field_C = type_C.getFields().iterator().next();
-		FieldDeclaration field_D = type_D.getFields().iterator().next();
-		FieldDeclaration field_I = type_I.getFields().iterator().next();
-		FieldDeclaration field_K = type_K.getFields().iterator().next();
-
-		//overrides positive tests
-		ProcessorTestStatus.assertTrue("Expect B.method() to override A.method()", _env.getDeclarationUtils().overrides(method_B, method_A));
-		ProcessorTestStatus.assertTrue("Expect K.method() to override I.method()", _env.getDeclarationUtils().overrides(method_K, method_I));
-		
-		//overrides negative tests
-		ProcessorTestStatus.assertTrue("Expect B.method() to not override C.method()", !_env.getDeclarationUtils().overrides(method_B, method_C));
-    	ProcessorTestStatus.assertTrue("Expect D.method(String s) to not override A.method()", !_env.getDeclarationUtils().overrides(method_D, method_A));
-		
-		//hides positive tests
-		ProcessorTestStatus.assertTrue("Expect B.field to hide A.field", _env.getDeclarationUtils().hides(field_B, field_A));
-		ProcessorTestStatus.assertTrue("Expect D.field to hide A.field", _env.getDeclarationUtils().hides(field_D, field_A));
-		ProcessorTestStatus.assertTrue("Expect K.field to hide I.field", _env.getDeclarationUtils().hides(field_K, field_I));
-		
-    	//hides negative test
-		ProcessorTestStatus.assertTrue("Expect B.field to not hide C.field", !_env.getDeclarationUtils().hides(field_B, field_C));
-	}
-	
-	private void testEnvOptions() {
-		Map<String, String> options = _env.getOptions();
-		// no-translation cases should be unchanged
-		for (int i = 0; i < EC_NUM_NOTRANSLATIONCASES; ++i) {
-			ProcessorTestStatus.assertEquals(ENV_KEYS[i], options.get(ENV_KEYS[i]), ENV_VALUES[i]);
-		}
-		// translation cases should be changed
-		for (int i = EC_NUM_NOTRANSLATIONCASES; i < ENV_KEYS.length; ++i) {
-			ProcessorTestStatus.assertTrue(ENV_KEYS[i], !ENV_VALUES[i].equals(options.get(ENV_KEYS[i])) );
-		}
-		// the files should exist at the specified absolute location
-		String name = options.get(ENV_KEYS[EC_CPVARFILE]);
-		File file;
-		if (name == null) {
-			ProcessorTestStatus.fail(ENV_KEYS[EC_CPVARFILE] + " was not in options map");
-		} else {
-			file = new File(name);
-			ProcessorTestStatus.assertTrue(ENV_KEYS[EC_CPVARFILE] + " was not found", file != null && file.exists());
-		}
-		
-		name = options.get(ENV_KEYS[EC_PROJFILE]);
-		if (name == null) {
-			ProcessorTestStatus.fail(ENV_KEYS[EC_PROJFILE] + " was not in options map");
-		} else {
-			file = new File(name);
-			ProcessorTestStatus.assertTrue(ENV_KEYS[EC_PROJFILE] + " was not found", file != null && file.exists());
-		}
-		
-		name = options.get(ENV_KEYS[EC_PROJDIRFILE]);
-		if (name == null) {
-			ProcessorTestStatus.fail(ENV_KEYS[EC_PROJDIRFILE] + " was not in options map");
-		} else {
-			file = new File(name);
-			ProcessorTestStatus.assertTrue(ENV_KEYS[EC_PROJDIRFILE] + " was not found", file != null && file.exists());
-		}
-	}
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorUtilTestAnnotationProcessorFactory.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorUtilTestAnnotationProcessorFactory.java
deleted file mode 100644
index a10bc2a..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorUtilTestAnnotationProcessorFactory.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    sbandow@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests.annotations.mirrortest;
-
-import java.util.Set;
-
-import org.eclipse.jdt.apt.tests.annotations.BaseFactory;
-
-import com.sun.mirror.apt.AnnotationProcessor;
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.declaration.AnnotationTypeDeclaration;
-
-public class MirrorUtilTestAnnotationProcessorFactory extends BaseFactory 
-{
-	
-	public MirrorUtilTestAnnotationProcessorFactory() {
-		super(MirrorUtilTestAnnotation.class.getName());
-	}
-
-	public AnnotationProcessor getProcessorFor(Set<AnnotationTypeDeclaration> atds, AnnotationProcessorEnvironment env)
-	{
-		return new MirrorUtilTestAnnotationProcessor(env);
-	}
-
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorUtilTestCodeExample.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorUtilTestCodeExample.java
deleted file mode 100644
index eef9d31..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/mirrortest/MirrorUtilTestCodeExample.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    sbandow@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests.annotations.mirrortest;
-
-/**
- * Holds information for the mirror tests.
- */
-@SuppressWarnings("nls")
-public class MirrorUtilTestCodeExample {
-	
-	public static final String CODE_PACKAGE = "testpackage";
-	
-	public static final String CODE_CLASS_NAME = "DeclarationsTestClass";
-
-	public static final String CODE_FULL_NAME = CODE_PACKAGE + "." + CODE_CLASS_NAME;
-	
-	public static final String CODE = 
-		"package testpackage;" + "\n" +
-	    "import org.eclipse.jdt.apt.tests.annotations.mirrortest.MirrorUtilTestAnnotation;" + "\n" +
-	    "@MirrorUtilTestAnnotation" + "\n" +
-	    "public class DeclarationsTestClass" + "\n" +
-	    "{" + "\n" +
-		"    public class A" + "\n" +
-		"    {" + "\n" +
-		"        public int field; " + "\n" +
-		"        public void method(){}" + "\n" +
-		"    }" + "\n" +
-		"    public class B extends A" + "\n" +
-		"    {" + "\n" +
-		"        public int field; " + "\n" +
-		"        public void method(){}" + "\n" +
-		"    }" + "\n" +
-		"    public class C" + "\n" +
-		"    {" + "\n" +
-		"        public int field; " + "\n" +
-		"        public void method(){}" + "\n" +
-		"    }" + "\n" +
-		"    public class D extends A" + "\n" +
-		"    {" + "\n" +
-		"    	public Object field;" + "\n" +
-		"    	public void method(String s){}" + "\n" +
-		"    }" + "\n" +
-		"    public interface I" + "\n" +
-		"    {" + "\n" +
-		"    	public int field = 1;" + "\n" +
-		"       public void method();" + "\n" +
-		"    }" + "\n" +
-		"    public interface J" + "\n" +
-		"    {" + "\n" +
-		"    	public int field = 2;" + "\n" +
-		"    }" + "\n" +
-		"    public class K implements I, J" + "\n" +
-		"    {" + "\n" +
-		"    	public int field;" + "\n" +
-		"       public void method(){}" + "\n" +
-		"    }" + "\n" +
-	    "}";
-	
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/nestedhelloworld/NestedHelloWorldAnnotation.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/nestedhelloworld/NestedHelloWorldAnnotation.java
deleted file mode 100644
index 3b267ed..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/nestedhelloworld/NestedHelloWorldAnnotation.java
+++ /dev/null
@@ -1,18 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    mkaufman@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests.annotations.nestedhelloworld;
-
-public @interface NestedHelloWorldAnnotation
-{
-	String value() default ""; //$NON-NLS-1$
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/nestedhelloworld/NestedHelloWorldAnnotationProcessor.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/nestedhelloworld/NestedHelloWorldAnnotationProcessor.java
deleted file mode 100644
index 37d5d08..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/nestedhelloworld/NestedHelloWorldAnnotationProcessor.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    mkaufman@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-
-package org.eclipse.jdt.apt.tests.annotations.nestedhelloworld;
-
-import org.eclipse.jdt.apt.tests.annotations.helloworld.HelloWorldAnnotation;
-import org.eclipse.jdt.apt.tests.annotations.helloworld.HelloWorldAnnotationProcessor;
-
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-
-
-public class NestedHelloWorldAnnotationProcessor extends
-		HelloWorldAnnotationProcessor {
-
-	public NestedHelloWorldAnnotationProcessor(AnnotationProcessorEnvironment env)
-	{
-		super( env );
-	}
-
-	public String getCode() { return CODE; }
-	
-	@SuppressWarnings("nls")
-	private final String CODE = 
-		"package " + getPackageName() + ";" + "\n" + 
-		"@" + HelloWorldAnnotation.class.getName() + "\n" + 
-		"public class NestedHelloWorldAnnotationGeneratedClass " + "\n" +
-		"{  }";
-		
-		public String getPackageName() { return "nested.hello.world.generatedclass.pkg"; } //$NON-NLS-1$
-		public String getTypeName() { return "NestedHelloWorldAnnotationGeneratedClass"; } //$NON-NLS-1$
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/nestedhelloworld/NestedHelloWorldAnnotationProcessorFactory.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/nestedhelloworld/NestedHelloWorldAnnotationProcessorFactory.java
deleted file mode 100644
index 72a2125..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/nestedhelloworld/NestedHelloWorldAnnotationProcessorFactory.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    mkaufman@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-
-package org.eclipse.jdt.apt.tests.annotations.nestedhelloworld;
-
-import java.util.Set;
-
-import org.eclipse.jdt.apt.tests.annotations.BaseFactory;
-
-import com.sun.mirror.apt.AnnotationProcessor;
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.declaration.AnnotationTypeDeclaration;
-
-public class NestedHelloWorldAnnotationProcessorFactory extends BaseFactory
-{
-	public NestedHelloWorldAnnotationProcessorFactory() {
-		super(NestedHelloWorldAnnotation.class.getName());
-	}
-
-	public AnnotationProcessor getProcessorFor(
-			Set<AnnotationTypeDeclaration> atds,
-			AnnotationProcessorEnvironment env) 
-	{
-		return new NestedHelloWorldAnnotationProcessor( env );
-	}
-	
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/noop/NoOpAnnotation.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/noop/NoOpAnnotation.java
deleted file mode 100644
index 80e807f..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/noop/NoOpAnnotation.java
+++ /dev/null
@@ -1,18 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    mkaufman@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests.annotations.noop;
-
-public @interface NoOpAnnotation
-{
-	String value() default ""; //$NON-NLS-1$
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/noop/NoOpAnnotationProcessor.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/noop/NoOpAnnotationProcessor.java
deleted file mode 100644
index 33cdb62..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/noop/NoOpAnnotationProcessor.java
+++ /dev/null
@@ -1,20 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    mkaufman@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests.annotations.noop;
-
-import com.sun.mirror.apt.AnnotationProcessor;
-
-public class NoOpAnnotationProcessor implements AnnotationProcessor
-{
-	public void process(){}
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/noop/NoOpAnnotationProcessorFactory.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/noop/NoOpAnnotationProcessorFactory.java
deleted file mode 100644
index ea5b98a..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/noop/NoOpAnnotationProcessorFactory.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    mkaufman@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests.annotations.noop;
-
-import java.util.Set;
-
-import org.eclipse.jdt.apt.tests.annotations.BaseFactory;
-
-import com.sun.mirror.apt.AnnotationProcessor;
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.declaration.AnnotationTypeDeclaration;
-
-public class NoOpAnnotationProcessorFactory extends BaseFactory 
-{
-	
-	public NoOpAnnotationProcessorFactory() {
-		super(NoOpAnnotation.class.getName());
-	}
-
-	public AnnotationProcessor getProcessorFor(
-			Set<AnnotationTypeDeclaration> atds,
-			AnnotationProcessorEnvironment env) 
-	{
-		return new NoOpAnnotationProcessor();
-	}
-}
\ No newline at end of file
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/readAnnotationType/AnnotationReader.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/readAnnotationType/AnnotationReader.java
deleted file mode 100644
index 85d9764..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/readAnnotationType/AnnotationReader.java
+++ /dev/null
@@ -1,36 +0,0 @@
-package org.eclipse.jdt.apt.tests.annotations.readAnnotationType;
-
-import java.io.IOException;
-import java.io.PrintWriter;
-import java.util.Collection;
-
-
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.declaration.Declaration;
-
-public class AnnotationReader {
-    public void createClassFilesForAnnotatedDeclarations(
-            Collection<Declaration> declarations,
-            AnnotationProcessorEnvironment env) throws IOException {
-        assert declarations.size() == 1;
-        for (Declaration dec : declarations) {
-
-            PrintWriter writer = null;
-            try {
-                SimpleAnnotation annotation = dec
-                        .getAnnotation(SimpleAnnotation.class);
-                String value = annotation.value().name();
-                //Class annotationType = annotation.annotationType();
-                String className = value + "Gen";
-                writer = env.getFiler().createSourceFile("test/" + className);
-                writer.println("package test;");
-                writer.println("public class " + className);
-                writer.println("{}");
-            } finally {
-                if (writer != null) {
-                    writer.close();
-                }
-            }
-        }
-    }
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/readAnnotationType/ReadAnnotationTypeProcessor.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/readAnnotationType/ReadAnnotationTypeProcessor.java
deleted file mode 100644
index 6564376..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/readAnnotationType/ReadAnnotationTypeProcessor.java
+++ /dev/null
@@ -1,44 +0,0 @@
-package org.eclipse.jdt.apt.tests.annotations.readAnnotationType;
-
-import java.io.PrintWriter;
-import java.util.Collection;
-import java.util.Set;
-
-import org.eclipse.jdt.apt.tests.annotations.BaseProcessor;
-
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.declaration.AnnotationTypeDeclaration;
-import com.sun.mirror.declaration.Declaration;
-
-public class ReadAnnotationTypeProcessor extends BaseProcessor {
-
-    private AnnotationTypeDeclaration _annotationType;
-    
-    public ReadAnnotationTypeProcessor(Set<AnnotationTypeDeclaration> declarationTypes, AnnotationProcessorEnvironment env) {
-        super(env);
-        assert declarationTypes.size() == 1;
-        _annotationType = declarationTypes.iterator().next();
-    }
-
-    public void process() {
-        PrintWriter writer = null;
-        try
-        {
-            Collection<Declaration> declarations = _env.getDeclarationsAnnotatedWith(_annotationType);     
-            assert declarations.size() == 1;
-            new AnnotationReader().createClassFilesForAnnotatedDeclarations(declarations, _env);
-        } catch (Throwable e)
-        {
-            e.printStackTrace();
-            _env.getMessager().printError(e.getMessage());
-        } finally
-        {
-            if (writer != null)
-            {
-                writer.close();
-            }
-        }
-    }
-    
-
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/readAnnotationType/ReadAnnotationTypeProcessorFactory.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/readAnnotationType/ReadAnnotationTypeProcessorFactory.java
deleted file mode 100644
index e43d590..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/readAnnotationType/ReadAnnotationTypeProcessorFactory.java
+++ /dev/null
@@ -1,21 +0,0 @@
-package org.eclipse.jdt.apt.tests.annotations.readAnnotationType;
-
-import java.util.Set;
-
-import org.eclipse.jdt.apt.tests.annotations.BaseFactory;
-
-import com.sun.mirror.apt.AnnotationProcessor;
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.declaration.AnnotationTypeDeclaration;
-
-public class ReadAnnotationTypeProcessorFactory extends BaseFactory {
-
-    public ReadAnnotationTypeProcessorFactory() {
-        super(SimpleAnnotation.class.getName());
-    }
-
-    public AnnotationProcessor getProcessorFor(Set<AnnotationTypeDeclaration> declarations, AnnotationProcessorEnvironment env) {
-        return new ReadAnnotationTypeProcessor(declarations, env);
-    }
-
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/readAnnotationType/SimpleAnnotation.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/readAnnotationType/SimpleAnnotation.java
deleted file mode 100644
index d977341..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/readAnnotationType/SimpleAnnotation.java
+++ /dev/null
@@ -1,11 +0,0 @@
-package org.eclipse.jdt.apt.tests.annotations.readAnnotationType;
-
-public @interface SimpleAnnotation {
-    
-    enum Name
-    {
-        HELLO, GOOD_BYE
-    }
-    
-    public Name value();
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/readannotation/CodeExample.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/readannotation/CodeExample.java
deleted file mode 100644
index c2bfcc3..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/readannotation/CodeExample.java
+++ /dev/null
@@ -1,157 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    tyeung@bea.com - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jdt.apt.tests.annotations.readannotation;
-
-@SuppressWarnings("nls")
-public class CodeExample {
-	
-	public static final String PACKAGE_QUESTION = "question";
-	
-	public static final String ANNOTATION_TEST_CLASS = "AnnotationTest";
-	public static final String ANNOTATION_TEST_CODE = 
-			"package question;\n" +
-	        "\n" +
-	        "@Deprecated\n" +
-	        "@RTVisibleAnno(anno=@SimpleAnnotation(\"test\"), clazzes={})\n" +
-	        "@RTInvisibleAnno(\"question\")\n" +        
-	        "public interface AnnotationTest{\n" +
-	        "\n" +
-	        "    @RTVisibleAnno(name = \"Foundation\",\n" +
-	        "                   boolValue   = false, \n"  +
-	        "                   byteValue   = 0x10,  \n"  +
-	        "                   charValue   = 'c', \n"    +
-	        "                   doubleValue = 99.0, \n"   +
-	        "                   floatValue  = (float)9.0, \n"    +
-	        "                   intValue    = 999, \n"    +
-	        "                   longValue = 3333,  \n"    +
-	        "                   shortValue = 3,    \n"    +
-	        "                   colors ={ Color.RED, Color.BLUE }, \n"    +
-	        "                   anno = @SimpleAnnotation(\"core\"),\n"    +
-	        "                   simpleAnnos = {@SimpleAnnotation(\"org\"),    \n" + 
-			"              	                   @SimpleAnnotation(\"eclipse\"),\n" +
-			"        		                   @SimpleAnnotation(\"jdt\") },  \n" +
-			"                   clazzes = {Object.class, String.class},\n " +
-			"		            clazz = Object.class)\n " +
-	        "    @RTInvisibleAnno(\"org.eclipse.jdt.core\")\n " +
-		    "    @Deprecated \n " +
-		    "    public int field0 = 0; \n" +
-	        "\n" +
-	        "    @Deprecated \n" +
-	    	"    public int field1 = 1; \n" +
-	    	"\n" +
-	    	"    @RTVisibleAnno(anno=@SimpleAnnotation(\"field\"), clazzes={})\n " +
-	    	"    @RTInvisibleAnno(\"2\") \n " +
-	    	"    public int field2 = 2; \n" +	
-	    	"\n" +
-	    	"    @RTInvisibleAnno(\"3\") \n" +
-	    	"    public int field3 = 3; \n"  +
-	    	"\n" +
-	    	"    @SimpleAnnotation(\"4\") \n" +
-	    	"    public int field4 = 4; \n" +
-	    	"\n" +
-	    	"    @RTVisibleAnno(anno=@SimpleAnnotation(\"method0\"), clazzes={}) \n" +
-	    	"    @RTInvisibleAnno(\"0\") \n" +
-	    	"    @Deprecated \n " +
-	    	"    public int method0();  \n " +
-	    	"\n" +
-	    	"    @Deprecated \n " +
-	    	"    public int method1(); \n " +
-	    	"\n" +
-	    	"    @RTVisibleAnno(anno=@SimpleAnnotation(\"method2\"), clazzes={}) \n " +
-	    	"    @RTInvisibleAnno(\"2\") \n" +
-	    	"    public int method2(); \n" +
-	    	"\n" +
-	    	"   @RTInvisibleAnno(\"3\") \n" +
-	    	"   public int method3(); \n" +
-	    	"\n" +
-	    	"   @SimpleAnnotation(\"method4\") \n" +
-	    	"   public int method4(); \n" +
-	    	"\n" +
-	    	"   public int method5(int p0, \n" +
-	    	"   				   @Deprecated  \n" +
-	    	"   				   int p1, \n" +
-	    	"   				   @RTVisibleAnno(anno=@SimpleAnnotation(\"param2\"), clazzes={}) \n" +
-	    	"   				   @RTInvisibleAnno(\"2\") \n" +
-	    	"   				   int p2); \n" +
-	    	"\n" +
-	    	"   public int method6(int p0, int p1, int p2); \n" +
-	    	"\n }";
-
-	public static final String COLOR_CLASS = "Color";
-	public static final String COLOR_CODE = 
-		"package question;\n" +
-		"\n" +
-		"public enum Color { RED, WHITE, BLUE; } ";				
-	
-	public static final String PACKAGE_INFO_CLASS = "package-info";
-	public static final String PACKAGE_INFO_CODE = 
-		"@Deprecated package question; ";
-	
-	public static final String RTINVISIBLE_CLASS = "RTInvisibleAnno";
-	public static final String RTINVISIBLE_ANNOTATION_CODE = 
-		"package question;  \n" +
-		"\n" +
-		"   public @interface RTInvisibleAnno{  \n" +		
-		"   	String value(); \n" +
-		"   }";
-	
-	public static final String RTVISIBLE_CLASS = "RTVisibleAnno";
-	public static final String RTVISIBLE_ANNOTATION_CODE = 
-		"package question; \n" +
-		"\n" +
-		"import java.lang.annotation.*; \n" +
-		"\n" +
-		"@Retention(value=RetentionPolicy.RUNTIME) \n" +
-		"public @interface RTVisibleAnno  \n" +
-		"{	\n" +	
-		"	String name() default \"eclipse\"; \n" +
-		"	boolean boolValue() default true; \n" +
-		"	byte byteValue() default 0x0001; \n" +
-		"	char charValue() default 'e'; \n" +
-		"	double doubleValue() default 0.0; \n" +
-		"	float floatValue()  default 0; \n" +
-		"	int intValue() default 17; \n" +
-		"	long longValue() default 43; \n" +
-		"	short shortValue() default 1; \n" +
-		"	Color[] colors() default {Color.RED, Color.WHITE, Color.BLUE}; \n" +
-		"	SimpleAnnotation anno(); \n" +
-		"	SimpleAnnotation[] simpleAnnos() default { @SimpleAnnotation(\"org.eclipse.org\") }; \n" +
-		"	Class[] clazzes(); \n" +
-		"	Class clazz() default java.lang.String.class; \n" +
-		"\n }";
-	
-	public static final String SIMPLE_ANNOTATION_CLASS = "SimpleAnnotation";
-	public static final String SIMPLE_ANNOTATION_CODE = 
-		"package question; \n" +
-		"\n" +
-		"import java.lang.annotation.Retention; \n" +
-		"import java.lang.annotation.RetentionPolicy; \n" +
-		"\n" +
-		"@Retention(value=RetentionPolicy.RUNTIME) \n" +
-		"public @interface SimpleAnnotation { \n" +
-		"\n" +	
-		"	String value(); \n" +
-		"}";
-	
-	public static final String PACKAGE_TRIGGER = "trigger";
-	public static final String TRIGGER_CLASS = "Trigger";
-	public static final String TRIGGER_CODE = 
-		"package trigger; \n" +
-		"\n" +
-		"@MyMarkerAnnotation \n" +
-		"public class Trigger {}";
-	
-	public static final String MYMARKERANNOTATION_CLASS = "MyMarkerAnnotation";
-	public static final String MYMARKERANNOTATION_CODE = 
-		"package trigger; \n" +
-		"\n" +		
-		"public @interface MyMarkerAnnotation {}";
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/readannotation/ReadAnnotationProcessor.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/readannotation/ReadAnnotationProcessor.java
deleted file mode 100644
index f017252..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/readannotation/ReadAnnotationProcessor.java
+++ /dev/null
@@ -1,193 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    tyeung@bea.com - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jdt.apt.tests.annotations.readannotation;
-
-import java.util.Collection;
-import java.util.HashSet;
-
-import junit.framework.ComparisonFailure;
-import junit.framework.TestCase;
-
-import org.eclipse.jdt.apt.tests.annotations.BaseProcessor;
-import org.eclipse.jdt.apt.tests.annotations.ProcessorTestStatus;
-
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.declaration.AnnotationMirror;
-import com.sun.mirror.declaration.FieldDeclaration;
-import com.sun.mirror.declaration.MethodDeclaration;
-import com.sun.mirror.declaration.ParameterDeclaration;
-import com.sun.mirror.declaration.TypeDeclaration;
-
-public class ReadAnnotationProcessor extends BaseProcessor
-{
-	private static final String[] NO_ANNOTATIONS = new String[0];
-	
-	public ReadAnnotationProcessor(AnnotationProcessorEnvironment env)
-	{
-		super(env);
-	}
-
-	@SuppressWarnings("nls")
-	public void process()
-	{	
-		try{			
-			TypeDeclaration typeDecl = _env.getTypeDeclaration("question.AnnotationTest");		
-			TestCase.assertNotNull("failed to locate type 'question.AnnotationTest'", typeDecl);
-			if( typeDecl != null){			
-				TestCase.assertEquals("Type name mismatch", "question.AnnotationTest", typeDecl.getQualifiedName());			
-				
-				final String[] expectedPkgAnnos = new String[]{ "@Deprecated()" };
-				assertAnnotation(expectedPkgAnnos, typeDecl.getPackage().getAnnotationMirrors() );				
-				
-				final String[] expectedTypeAnnos = new String[]{ "@Deprecated()",
-														  	     "@RTVisibleAnno(anno = @SimpleAnnotation(value = test), clazzes = {})",
-															     "@RTInvisibleAnno(value = question)" };
-				assertAnnotation(expectedTypeAnnos, typeDecl.getAnnotationMirrors());	
-				
-				final Collection<FieldDeclaration> fieldDecls = typeDecl.getFields();
-				
-				int counter = 0;
-				TestCase.assertEquals(5, fieldDecls.size());
-				for(FieldDeclaration fieldDecl : fieldDecls ){
-					final String name = "field" + counter;				
-					
-					TestCase.assertEquals("field name mismatch", name, fieldDecl.getSimpleName());
-					final String[] expected;
-					switch(counter){				
-					case 0:		
-						expected = new String[] { "@RTVisibleAnno(name = Foundation, boolValue = false, byteValue = 16, charValue = c, doubleValue = 99.0, floatValue = 9.0, intValue = 999, longValue = 3333, shortValue = 3, colors = {question.Color RED, question.Color BLUE}, anno = @SimpleAnnotation(value = core), simpleAnnos = {@SimpleAnnotation(value = org), @SimpleAnnotation(value = eclipse), @SimpleAnnotation(value = jdt)}, clazzes = {Object.class, String.class}, clazz = Object.class)",
-										          "@RTInvisibleAnno(value = org.eclipse.jdt.core)",
-										          "@Deprecated()" };
-						break;	
-					case 1:
-						expected = new String[] { "@Deprecated()" };
-						break;
-					case 2:
-						expected = new String[] { "@RTVisibleAnno(anno = @SimpleAnnotation(value = field), clazzes = {})",
-												  "@RTInvisibleAnno(value = 2)" };
-						break;
-					case 3:
-						expected = new String[] { "@RTInvisibleAnno(value = 3)" };
-						break;
-					case 4:
-						expected = new String[] { "@SimpleAnnotation(value = 4)" };
-						break;
-					default:
-						expected = NO_ANNOTATIONS;
-					}
-					
-					assertAnnotation(expected, fieldDecl.getAnnotationMirrors());
-					counter ++;
-				}			
-				
-				final Collection<? extends MethodDeclaration> methodDecls = typeDecl.getMethods();
-				counter = 0;
-				TestCase.assertEquals(7, methodDecls.size());
-				for(MethodDeclaration methodDecl : methodDecls ){
-					final String name = "method" + counter;				
-					
-					TestCase.assertEquals("method name mismatch", name, methodDecl.getSimpleName());
-					final String[] expected;
-					switch(counter)
-					{
-					case 0:
-						expected = new String[] { "@RTVisibleAnno(anno = @SimpleAnnotation(value = method0), clazzes = {})",
-							                      "@RTInvisibleAnno(value = 0)",
-							                      "@Deprecated()" };				
-						break;
-					case 1:
-						expected = new String[] { "@Deprecated()" };
-						break;
-					case 2:
-						expected = new String[] { "@RTVisibleAnno(anno = @SimpleAnnotation(value = method2), clazzes = {})",
-												  "@RTInvisibleAnno(value = 2)" };
-						break;
-					case 3:
-						expected = new String[] { "@RTInvisibleAnno(value = 3)" };
-						break;
-					case 4:
-						expected = new String[] { "@SimpleAnnotation(value = method4)" };
-						break;
-					case 5:
-					case 6:
-					default:
-						expected = NO_ANNOTATIONS;
-					}
-					
-					assertAnnotation(expected, methodDecl.getAnnotationMirrors());
-					
-					if( counter == 5 ){
-						Collection<ParameterDeclaration> paramDecls = methodDecl.getParameters();				
-						int pCounter = 0;
-						for( ParameterDeclaration paramDecl : paramDecls ){
-							final String[] expectedParamAnnotations;
-							switch( pCounter )
-							{
-							case 1:
-								expectedParamAnnotations = new String[] { "@Deprecated()" };
-								break;
-							case 2:							
-								expectedParamAnnotations = new String[] { "@RTVisibleAnno(anno = @SimpleAnnotation(value = param2), clazzes = {})",
-																	      "@RTInvisibleAnno(value = 2)" };							
-								break;						
-							default:
-								expectedParamAnnotations = NO_ANNOTATIONS;						
-							}
-							assertAnnotation(expectedParamAnnotations, paramDecl.getAnnotationMirrors());
-							pCounter ++;
-						}
-						
-					}
-					counter ++;
-				}
-			}
-		}
-		catch( ComparisonFailure failure ){			
-			if (!ProcessorTestStatus.hasErrors()) {
-				ProcessorTestStatus.failWithoutException(failure.toString());
-			}
-			throw failure;
-		}
-		catch( junit.framework.AssertionFailedError error ){
-			if (!ProcessorTestStatus.hasErrors()) {
-				ProcessorTestStatus.failWithoutException(error.toString());
-			}
-			throw error;
-		}
-	}
-	
-	private void assertAnnotation(final String[] expected, Collection<AnnotationMirror> annotations)
-	{
-		final int expectedLen = expected.length;		
-		TestCase.assertEquals("annotation number mismatch", expected.length, annotations.size()); //$NON-NLS-1$
-		
-		final HashSet<String> expectedSet = new HashSet<String>(expectedLen * 4 / 3 + 1);
-		for( int i=0; i<expectedLen; i++ )
-			expectedSet.add(expected[i]);
-			
-		int counter = 0;
-		for( AnnotationMirror mirror : annotations ){
-			if( counter >= expectedLen )
-				TestCase.assertEquals("", mirror.toString()); //$NON-NLS-1$
-			else{
-				final String mirrorToString = mirror.toString();
-				final boolean contains = expectedSet.contains(mirrorToString);
-				if( !contains ){					
-					System.err.println(mirrorToString);
-					System.err.println(expectedSet);
-				}
-				TestCase.assertTrue("unexpected annotation " + mirrorToString, contains); //$NON-NLS-1$
-				expectedSet.remove(mirrorToString);
-			}
-			counter ++;
-		}
-	}
-}
\ No newline at end of file
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/readannotation/ReadAnnotationProcessorFactory.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/readannotation/ReadAnnotationProcessorFactory.java
deleted file mode 100644
index 1639d77..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/readannotation/ReadAnnotationProcessorFactory.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    tyeung@bea.com - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jdt.apt.tests.annotations.readannotation;
-
-import java.util.Set;
-
-import org.eclipse.jdt.apt.tests.annotations.BaseFactory;
-
-import com.sun.mirror.apt.AnnotationProcessor;
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.declaration.AnnotationTypeDeclaration;
-
-public class ReadAnnotationProcessorFactory extends BaseFactory
-{
-
-	public ReadAnnotationProcessorFactory() {
-		super("trigger.MyMarkerAnnotation"); //$NON-NLS-1$
-	}
-
-	public AnnotationProcessor getProcessorFor(
-			Set<AnnotationTypeDeclaration> atds,
-			AnnotationProcessorEnvironment env) 
-	{
-		return new ReadAnnotationProcessor( env );
-	}
-	
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/readannotation/lib/question.jar b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/readannotation/lib/question.jar
deleted file mode 100644
index bb21cdc..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/readannotation/lib/question.jar
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/valueconversion/Annotation.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/valueconversion/Annotation.java
deleted file mode 100644
index ca6ee0a..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/valueconversion/Annotation.java
+++ /dev/null
@@ -1,12 +0,0 @@
-package org.eclipse.jdt.apt.tests.annotations.valueconversion;
-
-public @interface Annotation {
-	boolean z();
-	char c();
-	byte b();
-	short s();
-	int i(); 
-	long l();
-	float f();
-	double d();
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/valueconversion/AnnotationWithArray.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/valueconversion/AnnotationWithArray.java
deleted file mode 100644
index bc3572f..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/valueconversion/AnnotationWithArray.java
+++ /dev/null
@@ -1,13 +0,0 @@
-package org.eclipse.jdt.apt.tests.annotations.valueconversion;
-
-public @interface AnnotationWithArray {
-	boolean[] booleans(); 
-	byte[] bytes();
-	short[] shorts(); 
-	int[] ints();
-	long[] longs();
-	float[] floats();
-	double[] doubles();
-	char[] chars();
-	String str() default "some string";
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/valueconversion/RefAnnotation.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/valueconversion/RefAnnotation.java
deleted file mode 100644
index 6dc2484..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/valueconversion/RefAnnotation.java
+++ /dev/null
@@ -1,12 +0,0 @@
-package org.eclipse.jdt.apt.tests.annotations.valueconversion;
-
-public @interface RefAnnotation {
-	boolean z();
-	char c();
-	byte b();
-	short s();
-	int i(); 
-	long l();
-	float f();
-	double d();
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/valueconversion/RefAnnotationWithArray.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/valueconversion/RefAnnotationWithArray.java
deleted file mode 100644
index 11af6989..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/valueconversion/RefAnnotationWithArray.java
+++ /dev/null
@@ -1,13 +0,0 @@
-package org.eclipse.jdt.apt.tests.annotations.valueconversion;
-
-public @interface RefAnnotationWithArray {
-	boolean[] booleans(); 
-	byte[] bytes();
-	short[] shorts(); 
-	int[] ints();
-	long[] longs();
-	float[] floats();
-	double[] doubles();
-	char[] chars();
-	String str() default "string";
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/valueconversion/ValueConversionProcessor.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/valueconversion/ValueConversionProcessor.java
deleted file mode 100644
index 700aaf6..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/valueconversion/ValueConversionProcessor.java
+++ /dev/null
@@ -1,462 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    tyeung@bea.com - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jdt.apt.tests.annotations.valueconversion;
-
-import java.util.Collection;
-import java.util.List;
-import java.util.Map;
-
-import junit.framework.TestCase;
-
-import org.eclipse.jdt.apt.tests.annotations.BaseProcessor;
-
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.apt.Messager;
-import com.sun.mirror.declaration.AnnotationMirror;
-import com.sun.mirror.declaration.AnnotationTypeElementDeclaration;
-import com.sun.mirror.declaration.AnnotationValue;
-import com.sun.mirror.declaration.TypeDeclaration;
-import com.sun.mirror.type.AnnotationType;
-
-public class ValueConversionProcessor extends BaseProcessor {
-	
-	public static final Byte BYTE_49 = 49;
-	public static final Byte BYTE_50 = 50; 
-	public static final Character CHAR_ONE = '1';
-	public static final Character CHAR_TWO = '2';
-	public static final Double DOUBLE_49 = 49d;
-	public static final Double DOUBLE_50 = 50d;
-	public static final Float FLOAT_49 = 49f;
-	public static final Float FLOAT_50 = 50f;
-	public static final Integer INTEGER_49 = 49;
-	public static final Integer INTEGER_50 = 50;
-	public static final Long LONG_49 = 49l;
-	public static final Long LONG_50 = 50l;
-	public static final Short SHORT_49 = 49;
-	public static final Short SHORT_50 = 50;
-	
-	public ValueConversionProcessor(AnnotationProcessorEnvironment env)
-	{
-		super(env);
-	}
-	
-	@SuppressWarnings("nls")
-	public void process() 
-	{	
-		final TypeDeclaration test = _env.getTypeDeclaration("sample.Test");
-		if( test == null )
-			TestCase.assertNotNull("failed to locate type 'sample.Test'", test);
-		
-		testCompilerAPIPath(test);
-		testReflectionPath(test);
-	}
-	
-	private void testCompilerAPIPath(TypeDeclaration test){
-		final Collection<AnnotationMirror> annotations = test.getAnnotationMirrors();
-		final int numAnnotations = annotations == null ? 0 : annotations.size();
-		TestCase.assertEquals("annotation number mismatch", 1, numAnnotations);
-		
-		final AnnotationMirror annotation = annotations.iterator().next();
-		final AnnotationType annotationType = annotation.getAnnotationType();
-		final String annoTypeName = annotationType.getDeclaration().getQualifiedName();
-		if( !Annotation.class.getName().equals( annoTypeName ) &&
-			!AnnotationWithArray.class.getName().equals( annoTypeName ))
-			return;
-	
-		final Map<AnnotationTypeElementDeclaration, AnnotationValue> elementValues =
-			annotation.getElementValues();
-		
-		for( Map.Entry<AnnotationTypeElementDeclaration, AnnotationValue> entry : 
-			 elementValues.entrySet() ){
-			AnnotationTypeElementDeclaration elementDecl = entry.getKey();
-			final String name = elementDecl.getSimpleName();
-			final AnnotationValue value = entry.getValue();
-			compare(name, value.getValue());
-		}
-	}
-	
-	private void testReflectionPath(TypeDeclaration test){
-		final RefAnnotation refAnno = test.getAnnotation(RefAnnotation.class);
-		if( refAnno != null ){
-			assertValueMatch("z", refAnno.z(), true);
-			assertValueMatch("b", refAnno.b(), (byte)49);
-			assertValueMatch("c", refAnno.c(), '1');
-			assertValueMatch("d", refAnno.d(), 49);
-			assertValueMatch("f", refAnno.f(), 49);
-			assertValueMatch("i", refAnno.i(), 49);
-			assertValueMatch("l", refAnno.l(), 49);
-			assertValueMatch("s", refAnno.s(), (short)49);
-		}
-		final RefAnnotationWithArray refAnnoArray = test.getAnnotation(RefAnnotationWithArray.class);
-		if( refAnnoArray != null ){
-			assertArrayValueMatch("booleans", refAnnoArray.booleans(), new boolean[]{true, true});
-			assertArrayValueMatch("bytes", refAnnoArray.bytes(), new byte[]{49, 50} );
-			assertArrayValueMatch("chars", refAnnoArray.chars(), new char[]{'1', '2'});
-			assertArrayValueMatch("doubles", refAnnoArray.doubles(), new double[]{49d, 50d});
-			assertArrayValueMatch("floats", refAnnoArray.floats(), new float[]{49f, 50f});
-			assertArrayValueMatch("ints", refAnnoArray.ints(), new int[]{49, 50});
-			assertArrayValueMatch("longs", refAnnoArray.longs(), new long[]{49l, 50l});
-			assertArrayValueMatch("shorts", refAnnoArray.shorts(), new short[]{49, 50});
-			compare("str", refAnnoArray.str());
-		}
-	}
-	
-	private void compare(final String name, final Object actualValue){
-		if( name.length() == 1 )
-		{
-			final Class expectedType;
-			final Object expectedValue;
-			switch(name.charAt(0))
-			{
-			case 'z':
-				expectedType = Boolean.class;
-				expectedValue = Boolean.TRUE;
-				break;
-			case 'b':
-				expectedType = Byte.class;
-				expectedValue = BYTE_49;
-				break;					
-			case 'c':
-				expectedType = Character.class;
-				expectedValue = CHAR_ONE;
-				break;
-			case 's':
-				expectedType = Short.class;
-				expectedValue = SHORT_49;
-				break;
-			case 'i':
-				expectedType = Integer.class;
-				expectedValue = INTEGER_49;
-				break;
-			case 'l':
-				expectedType = Long.class;
-				expectedValue = LONG_49;
-				break;
-			case 'f':
-				expectedType = Float.class;
-				expectedValue = FLOAT_49;
-				break;
-			case 'd':
-				expectedType = Double.class;
-				expectedValue = DOUBLE_49;
-				break;
-			default:
-				TestCase.assertNotNull("unexpected member " + name, null);
-				throw new IllegalStateException(); // won't get here.
-			}
-			assertValueTypeMatch(name, actualValue, expectedType, expectedValue);
-		}	
-		else{
-			final Class expectedElementType;
-			final Object[] expectedElementValues;
-			if( "booleans".equals(name) ){
-				expectedElementType = Boolean.class;
-				expectedElementValues = new Object[]{Boolean.TRUE, Boolean.TRUE};
-			}
-			else if( "chars".equals(name) ){
-				expectedElementType = Character.class;
-				expectedElementValues = new Object[]{CHAR_ONE, CHAR_TWO};
-			}
-			else if( "bytes".equals(name) ){
-				expectedElementType = Byte.class;
-				expectedElementValues = new Object[]{BYTE_49, BYTE_50};
-			}
-			else if( "shorts".equals(name) ){
-				expectedElementType = Short.class;
-				expectedElementValues = new Object[]{SHORT_49, SHORT_50};
-			}
-			else if( "ints".equals(name) ){
-				expectedElementType = Integer.class;
-				expectedElementValues = new Object[]{INTEGER_49, INTEGER_50};
-			}
-			else if( "longs".equals(name) ){
-				expectedElementType = Long.class;
-				expectedElementValues = new Object[]{LONG_49, LONG_50};
-			}
-			else if( "floats".equals(name) ){
-				expectedElementType = Float.class;
-				expectedElementValues = new Object[]{FLOAT_49, FLOAT_50};
-				
-			}
-			else if( "doubles".equals(name) ){
-				expectedElementType = Double.class;
-				expectedElementValues = new Object[]{DOUBLE_49, DOUBLE_50};
-			}
-			else if( "str".equals(name) ){
-				assertValueTypeMatch(name, actualValue, String.class, "string");
-				return;
-			}
-			else{
-				TestCase.assertNotNull("unexpected member " + name, null);
-				throw new IllegalStateException(); // won't get here.
-			}
-			@SuppressWarnings("unchecked")
-			List<AnnotationValue> actualList = (List<AnnotationValue>)actualValue;
-			assertArrayValueTypeMatch(name, actualList, expectedElementType, expectedElementValues);
-		}
-	}
-	
-	private void assertValueTypeMatch(
-			final String name, 
-			final Object actualValue, 
-			final Class expectedType,
-			final Object expectedValue)
-	{
-		if( actualValue != null && expectedType != actualValue.getClass() ){
-			final Messager msgr = _env.getMessager(); 
-			msgr.printError("type mismatch for memeber " + name + 
-					" expected " + expectedType.getName() + " but got " + actualValue.getClass().getName());
-		}
-		else if( !expectedValue.equals(actualValue) ){
-			final Messager msgr = _env.getMessager(); 
-			msgr.printError("value mismatch for memeber " + name + 
-					" expected " + expectedValue + " but got " + actualValue);
-		}
-	}
-	
-	private void assertArrayValueTypeMatch(
-			final String name, 
-			final List<AnnotationValue> actualValues, 
-			final Class expectedElementType,
-			final Object[] expectedValues)
-	{	
-		int i=0;
-		for( AnnotationValue av : actualValues ){
-			assertValueTypeMatch(name, av.getValue(), expectedElementType, expectedValues[i] );
-			i++;
-		}
-	}
-	
-	private void assertValueMatch(
-			final String name,
-			final boolean actual,
-			final boolean expected){
-		
-		if( actual != expected ){
-			final Messager msgr = _env.getMessager();
-			msgr.printError("value mismatch for memeber " + name + 
-					" expected " + expected + " but got " + actual);
-		}
-	}
-	
-	private void assertValueMatch(
-			final String name,
-			final byte actual,
-			final byte expected){
-		
-		if( actual != expected ){
-			final Messager msgr = _env.getMessager();
-			msgr.printError("value mismatch for memeber " + name + 
-					" expected " + expected + " but got " + actual);
-		}
-	}
-	
-	private void assertValueMatch(
-			final String name,
-			final char actual,
-			final char expected){
-		
-		if( actual != expected ){
-			final Messager msgr = _env.getMessager();
-			msgr.printError("value mismatch for memeber " + name + 
-					" expected " + expected + " but got " + actual);
-		}
-	}
-	
-	private void assertValueMatch(
-			final String name,
-			final double actual,
-			final double expected){
-		
-		if( actual != expected ){
-			final Messager msgr = _env.getMessager();
-			msgr.printError("value mismatch for memeber " + name + 
-					" expected " + expected + " but got " + actual);
-		}
-	}
-	
-	private void assertValueMatch(
-			final String name,
-			final float actual,
-			final float expected){
-		
-		if( actual != expected ){
-			final Messager msgr = _env.getMessager();
-			msgr.printError("value mismatch for memeber " + name + 
-					" expected " + expected + " but got " + actual);
-		}
-	}
-	
-	private void assertValueMatch(
-			final String name,
-			final int actual,
-			final int expected){
-		
-		if( actual != expected ){
-			final Messager msgr = _env.getMessager();
-			msgr.printError("value mismatch for memeber " + name + 
-					" expected " + expected + " but got " + actual);
-		}
-	}
-	
-	private void assertValueMatch(
-			final String name,
-			final long actual,
-			final long expected){
-		
-		if( actual != expected ){
-			final Messager msgr = _env.getMessager();
-			msgr.printError("value mismatch for memeber " + name + 
-					" expected " + expected + " but got " + actual);
-		}
-	}
-	
-	private void assertValueMatch(
-			final String name,
-			final short actual,
-			final short expected){
-		
-		if( actual != expected ){
-			final Messager msgr = _env.getMessager();
-			msgr.printError("value mismatch for memeber " + name + 
-					" expected " + expected + " but got " + actual);
-		}
-	}
-
-	
-	private void assertArrayValueMatch(
-			final String name,
-			final boolean[] actual,
-			final boolean[] expected){
-		
-		int i=0;
-		final Messager msgr = _env.getMessager(); 
-		for( boolean a : actual ){
-			if( a != expected[i] ){
-				msgr.printError("value mismatch for memeber " + name + 
-						" expected " + expected[i] + " but got " + a);
-			}
-			i++;
-		}
-	}
-	
-	private void assertArrayValueMatch(
-			final String name,
-			final byte[] actual,
-			final byte[] expected){
-		
-		int i=0;
-		final Messager msgr = _env.getMessager(); 
-		for( byte a : actual ){
-			if( a != expected[i] ){
-				msgr.printError("value mismatch for memeber " + name + 
-						" expected " + expected[i] + " but got " + a);
-			}
-			i++;
-		}
-	}
-	
-	private void assertArrayValueMatch(
-			final String name,
-			final char[] actual,
-			final char[] expected){
-		
-		int i=0;
-		final Messager msgr = _env.getMessager(); 
-		for( char a : actual ){
-			if( a != expected[i] ){
-				msgr.printError("value mismatch for memeber " + name + 
-						" expected " + expected[i] + " but got " + a);
-			}
-			i++;
-		}
-	}
-	
-	private void assertArrayValueMatch(
-			final String name,
-			final double[] actual,
-			final double[] expected){
-		
-		int i=0;
-		final Messager msgr = _env.getMessager(); 
-		for( double a : actual ){
-			if( a != expected[i] ){
-				msgr.printError("value mismatch for memeber " + name + 
-						" expected " + expected[i] + " but got " + a);
-			}
-			i++;
-		}
-	}
-	
-	private void assertArrayValueMatch(
-			final String name,
-			final float[] actual,
-			final float[] expected){
-		
-		int i=0;
-		final Messager msgr = _env.getMessager(); 
-		for( float a : actual ){
-			if( a != expected[i] ){
-				msgr.printError("value mismatch for memeber " + name + 
-						" expected " + expected[i] + " but got " + a);
-			}
-			i++;
-		}
-	}
-	
-	private void assertArrayValueMatch(
-			final String name,
-			final int[] actual,
-			final int[] expected){
-		
-		int i=0;
-		final Messager msgr = _env.getMessager(); 
-		for( int a : actual ){
-			if( a != expected[i] ){
-				msgr.printError("value mismatch for memeber " + name + 
-						" expected " + expected[i] + " but got " + a);
-			}
-			i++;
-		}
-	}
-	
-	private void assertArrayValueMatch(
-			final String name,
-			final long[] actual,
-			final long[] expected){
-		
-		int i=0;
-		final Messager msgr = _env.getMessager(); 
-		for( long a : actual ){
-			if( a != expected[i] ){
-				msgr.printError("value mismatch for memeber " + name + 
-						" expected " + expected[i] + " but got " + a);
-			}
-			i++;
-		}
-	}
-	
-	private void assertArrayValueMatch(
-			final String name,
-			final short[] actual,
-			final short[] expected){
-		
-		int i=0;
-		final Messager msgr = _env.getMessager(); 
-		for( short a : actual ){
-			if( a != expected[i] ){
-				msgr.printError("value mismatch for memeber " + name + 
-						" expected " + expected[i] + " but got " + a);
-			}
-			i++;
-		}
-	}
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/valueconversion/ValueConversionProcessorFactory.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/valueconversion/ValueConversionProcessorFactory.java
deleted file mode 100644
index d6b18d7..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/annotations/valueconversion/ValueConversionProcessorFactory.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    tyeung@bea.com - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jdt.apt.tests.annotations.valueconversion;
-
-import java.util.Set;
-
-import org.eclipse.jdt.apt.tests.annotations.BaseFactory;
-
-import com.sun.mirror.apt.AnnotationProcessor;
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.declaration.AnnotationTypeDeclaration;
-
-public class ValueConversionProcessorFactory extends BaseFactory {
-
-	public ValueConversionProcessorFactory() {
-		super(Annotation.class.getName(),
-			  RefAnnotation.class.getName(),
-			  AnnotationWithArray.class.getName(),
-			  RefAnnotationWithArray.class.getName()); 
-	}
-
-	public AnnotationProcessor getProcessorFor(
-			Set<AnnotationTypeDeclaration> atds,
-			AnnotationProcessorEnvironment env) 
-	{
-		return new ValueConversionProcessor( env );
-	}
-}
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/jdtcoretests/AllJdtCoreTests.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/jdtcoretests/AllJdtCoreTests.java
deleted file mode 100644
index 3bb339e..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/jdtcoretests/AllJdtCoreTests.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    mkaufman@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests.jdtcoretests;
-
-
-public class AllJdtCoreTests extends org.eclipse.jdt.core.tests.RunJDTCoreTests {
-
-    public AllJdtCoreTests(String testName) { super(testName); }
- }
-
-/*
- * NOTE - sometimes, we have observed failures that were resolved by changing
- * the order in which the jdt-core tests are run.  If you ever get weird errors
- * in the jdt-core tests, then you may want to experiment with changing this class
- * to be something like the following.  
- * 
- *
-public class AllJdtCoreTests extends TestCase {
-	
-	public AllJdtCoreTests(String testName) 
-	{
-		super(testName);
-	}
-	
-		public static Test suite() {
-			TestSuite suite = new TestSuite(RunJDTCoreTests.class.getName());
-			suite.addTest(RunModelTests.suite());
-			suite.addTest(RunBuilderTests.suite());
-			suite.addTest(RunCompilerTests.suite());
-			suite.addTest(RunDOMTests.suite());
-			suite.addTest(RunFormatterTests.suite());
-
-			return suite;
-		}
-}
-	*/
-
diff --git a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/plugin/AptTestsPlugin.java b/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/plugin/AptTestsPlugin.java
deleted file mode 100644
index 07847e8..0000000
--- a/org.eclipse.jdt.apt.tests/src/org/eclipse/jdt/apt/tests/plugin/AptTestsPlugin.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    mkaufman@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests.plugin;
-
-import org.eclipse.core.runtime.Plugin;
-import org.osgi.framework.BundleContext;
-
-public class AptTestsPlugin extends Plugin {
-
-	public AptTestsPlugin() {
-		_default = this;
-	}
-
-	public void start(BundleContext context) throws Exception {
-		super.start( context );
-	}
-
-	public void stop(BundleContext context) throws Exception {
-		super.stop( context );
-	}
-
-	public static AptTestsPlugin getDefault() {
-		return _default;
-	}
-
-	private static AptTestsPlugin	_default;
-
-}
diff --git a/org.eclipse.jdt.apt.tests/srcext/META-INF/services/com.sun.mirror.apt.AnnotationProcessorFactory b/org.eclipse.jdt.apt.tests/srcext/META-INF/services/com.sun.mirror.apt.AnnotationProcessorFactory
deleted file mode 100644
index 1a676f0..0000000
--- a/org.eclipse.jdt.apt.tests/srcext/META-INF/services/com.sun.mirror.apt.AnnotationProcessorFactory
+++ /dev/null
@@ -1,4 +0,0 @@
-org.eclipse.jdt.apt.tests.external.annotations.loadertest.LoaderTestAnnotationProcessorFactory
-org.eclipse.jdt.apt.tests.external.annotations.classloader.ColorAnnotationProcessorFactory
-org.eclipse.jdt.apt.tests.external.annotations.batch.BatchAnnotationFactory
-org.eclipse.jdt.apt.tests.external.annotations.batch.BatchGenAnnotationFactory
\ No newline at end of file
diff --git a/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/batch/Batch.java b/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/batch/Batch.java
deleted file mode 100644
index 92bc9e1..0000000
--- a/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/batch/Batch.java
+++ /dev/null
@@ -1,15 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    tyeung@bea.com - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jdt.apt.tests.external.annotations.batch;
-
-public @interface Batch {
-
-}
diff --git a/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/batch/BatchAnnotationFactory.java b/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/batch/BatchAnnotationFactory.java
deleted file mode 100644
index 524ecdc..0000000
--- a/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/batch/BatchAnnotationFactory.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    tyeung@bea.com - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jdt.apt.tests.external.annotations.batch;
-
-import java.util.Collection;
-import java.util.Collections;
-import java.util.List;
-import java.util.Set;
-
-import com.sun.mirror.apt.AnnotationProcessor;
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.apt.AnnotationProcessorFactory;
-import com.sun.mirror.declaration.AnnotationTypeDeclaration;
-
-public class BatchAnnotationFactory implements AnnotationProcessorFactory{
-	
-	private static final List<String> SUPPORTED_TYPES = 
-		Collections.singletonList(Batch.class.getName());
-	
-	public AnnotationProcessor getProcessorFor(
-			Set<AnnotationTypeDeclaration> decls, 
-			AnnotationProcessorEnvironment env) {
-		return new BatchProcessor(env);
-	}
-	
-	public Collection<String> supportedAnnotationTypes() {
-		return SUPPORTED_TYPES;
-	}
-	public Collection<String> supportedOptions() {
-		return Collections.emptyList();
-	}
-
-}
diff --git a/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/batch/BatchGen.java b/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/batch/BatchGen.java
deleted file mode 100644
index 6dc81a4..0000000
--- a/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/batch/BatchGen.java
+++ /dev/null
@@ -1,15 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    tyeung@bea.com - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jdt.apt.tests.external.annotations.batch;
-
-public @interface BatchGen {
-
-}
diff --git a/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/batch/BatchGenAnnotationFactory.java b/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/batch/BatchGenAnnotationFactory.java
deleted file mode 100644
index 70bc735..0000000
--- a/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/batch/BatchGenAnnotationFactory.java
+++ /dev/null
@@ -1,100 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    tyeung@bea.com - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jdt.apt.tests.external.annotations.batch;
-
-import java.io.IOException;
-import java.io.PrintWriter;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.List;
-import java.util.Set;
-
-import com.sun.mirror.apt.AnnotationProcessor;
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.apt.AnnotationProcessorFactory;
-import com.sun.mirror.declaration.AnnotationTypeDeclaration;
-
-public class BatchGenAnnotationFactory implements AnnotationProcessorFactory {
-	
-	private static int ROUND = 0;
-	private static final List<String> SUPPORTED_TYPES = 
-		Collections.singletonList(BatchGen.class.getName());
-	
-	public AnnotationProcessor getProcessorFor(
-			Set<AnnotationTypeDeclaration> decls, 
-			AnnotationProcessorEnvironment env) {
-		if( ROUND == 0 ){
-			ROUND ++;
-			return new BatchGen0AnnotationProcessor(env);
-		}
-		else if( ROUND == 1){
-			ROUND ++;
-			if( !decls.isEmpty() )
-				env.getMessager().printError("Expecting empty set but got " + decls );
-				
-			return new BatchGen1AnnotationProcessor(env);
-		}
-		else if( ROUND == 2 ){ // NO-OP
-			env.getMessager().printError("Called the third time.");
-			return null; 
-		}
-		// This is to make sure we aren't bouncing the class loader without a full build.
-		else
-			env.getMessager().printError("Calling BatchGenAnnotionFactory too many times. Round=" + ROUND );
-		return null;
-	}
-	
-	public Collection<String> supportedAnnotationTypes() {
-		return SUPPORTED_TYPES;
-	}
-	public Collection<String> supportedOptions() {
-		return Collections.emptyList();
-	}
-	
-	static class BatchGen0AnnotationProcessor implements AnnotationProcessor {
-		
-		final AnnotationProcessorEnvironment _env;
-		BatchGen0AnnotationProcessor(AnnotationProcessorEnvironment env){
-			_env = env;
-		}
-		public void process() {
-			// a generated file will cause BatchGenAnnotationFactory to be 
-			// called again.
-			try{
-				final PrintWriter writer = _env.getFiler().createSourceFile("gen.Class0");
-				writer.print("package gen;\n");
-				writer.print("public class Class0{}");
-				writer.close();
-			}
-			catch(IOException e){
-				_env.getMessager().printError(e.getMessage());
-			}
-		}
-	}
-	
-	static class BatchGen1AnnotationProcessor implements AnnotationProcessor {
-		final AnnotationProcessorEnvironment _env;
-		BatchGen1AnnotationProcessor(AnnotationProcessorEnvironment env){
-			_env = env;
-		}
-		public void process(){
-			try{
-				final PrintWriter writer = _env.getFiler().createSourceFile("gen.Class1");
-				writer.print("package gen;\n");
-				writer.print("public class Class1{}");
-				writer.close();
-			}
-			catch(IOException e){
-				_env.getMessager().printError(e.getMessage());
-			}
-		}
-	}
-}
diff --git a/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/batch/BatchProcessor.java b/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/batch/BatchProcessor.java
deleted file mode 100644
index 1bb3ec5..0000000
--- a/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/batch/BatchProcessor.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    tyeung@bea.com - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jdt.apt.tests.external.annotations.batch;
-
-import java.util.Collection;
-import java.util.HashSet;
-
-import com.sun.mirror.apt.AnnotationProcessor;
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.apt.Messager;
-import com.sun.mirror.declaration.AnnotationTypeDeclaration;
-import com.sun.mirror.declaration.Declaration;
-import com.sun.mirror.declaration.TypeDeclaration;
-
-public class BatchProcessor implements AnnotationProcessor {
-	
-	// Store how often we've been called in order to 
-	// test classloader resetting
-	private static int TIMES_CALLED = 0;
-	
-	private final AnnotationProcessorEnvironment _env;
-	BatchProcessor(AnnotationProcessorEnvironment env){
-		_env = env;
-	}
-	public void process() {
-		
-		final Messager msger = _env.getMessager();
-		if( TIMES_CALLED == 0 ){
-			
-			final Collection<String> expectedList = new HashSet<String>();
-			expectedList.add("p1.A");
-			expectedList.add("p1.B");
-			expectedList.add("p1.C");
-			expectedList.add("p1.D");
-			final Collection<TypeDeclaration> allTypes = _env.getSpecifiedTypeDeclarations();
-			for( TypeDeclaration type : allTypes ){
-				expectedList.remove(type.getQualifiedName());
-			}
-			
-			if( !expectedList.isEmpty() ){
-				msger.printError("failed to find type " + expectedList);
-			}
-			
-			final Collection<String> expectedAnnotated = new HashSet<String>();
-			expectedList.add("p1.A");
-			expectedList.add("p1.C");
-			final AnnotationTypeDeclaration batchAnnoDecl = 
-				(AnnotationTypeDeclaration)_env.getTypeDeclaration(Batch.class.getName());
-			final Collection<Declaration> decls = _env.getDeclarationsAnnotatedWith(batchAnnoDecl);
-			for( Declaration decl : decls  ){
-				if( decl instanceof TypeDeclaration )
-					expectedAnnotated.remove( ((TypeDeclaration)decl).getQualifiedName() );
-			}
-			if( !expectedAnnotated.isEmpty() ){
-				msger.printError("failed to find annotated type " + expectedAnnotated );			
-			}
-			
-			msger.printWarning("CompletedSuccessfully");
-		}
-		else{
-			msger.printWarning("Called " + (TIMES_CALLED + 1) + " times.");
-		}
-		
-		TIMES_CALLED++;
-	}
-}
diff --git a/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/classloader/Color.java b/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/classloader/Color.java
deleted file mode 100644
index b91b3ec..0000000
--- a/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/classloader/Color.java
+++ /dev/null
@@ -1,16 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    jgarms@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-package org.eclipse.jdt.apt.tests.external.annotations.classloader;
-
-public enum Color {
-	RED, GREEN, BLUE;
-}
diff --git a/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/classloader/ColorAnnotation.java b/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/classloader/ColorAnnotation.java
deleted file mode 100644
index 1f09626..0000000
--- a/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/classloader/ColorAnnotation.java
+++ /dev/null
@@ -1,17 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    jgarms@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-package org.eclipse.jdt.apt.tests.external.annotations.classloader;
-
-
-public @interface ColorAnnotation {
-	Color color();
-}
diff --git a/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/classloader/ColorAnnotationProcessor.java b/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/classloader/ColorAnnotationProcessor.java
deleted file mode 100644
index 9201ec1..0000000
--- a/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/classloader/ColorAnnotationProcessor.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    jgarms@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-package org.eclipse.jdt.apt.tests.external.annotations.classloader;
-
-import com.sun.mirror.apt.AnnotationProcessor;
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.declaration.TypeDeclaration;
-
-public class ColorAnnotationProcessor implements AnnotationProcessor {
-	
-	public static final String PROP_KEY = "ColorAnnotationProcessor";
-	public static final String SUCCESS_VALUE = "success";
-
-	private final AnnotationProcessorEnvironment _env;
-	
-	public ColorAnnotationProcessor(AnnotationProcessorEnvironment env) {
-		_env = env;
-	}
-	
-	public void process() {
-		System.setProperty(PROP_KEY, "Beginning processing");
-		try {
-			TypeDeclaration typeDecl = _env.getTypeDeclaration("colortestpackage.ColorTest");
-			
-			ColorAnnotation colorAnno = typeDecl.getAnnotation(ColorAnnotation.class);
-			
-			Color color = colorAnno.color();
-			
-			if (color != Color.RED)
-				throw new IllegalStateException("Expecting red, but got: " + color);
-			
-			ColorWrapper colorWrapper = typeDecl.getAnnotation(ColorWrapper.class);
-			ColorAnnotation[] colorAnnoArray = colorWrapper.colors();
-			
-			if (colorAnnoArray[0].color() != Color.GREEN)
-				throw new IllegalStateException("Expecting green, but got: " + color);
-			
-			if (colorAnnoArray[1].color() != Color.BLUE)
-				throw new IllegalStateException("Expecting blue, but got: " + color);
-		}
-		catch (Throwable t) {
-			t.printStackTrace();
-			System.setProperty(PROP_KEY, "Failed");
-		}
-		System.setProperty(PROP_KEY, SUCCESS_VALUE);
-		
-	}
-	
-	public static boolean wasSuccessful() {
-		return SUCCESS_VALUE.equals(System.getProperty(PROP_KEY));
-	}
-
-}
diff --git a/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/classloader/ColorAnnotationProcessorFactory.java b/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/classloader/ColorAnnotationProcessorFactory.java
deleted file mode 100644
index b186274..0000000
--- a/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/classloader/ColorAnnotationProcessorFactory.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    jgarms@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-package org.eclipse.jdt.apt.tests.external.annotations.classloader;
-
-import java.util.Collection;
-import java.util.Collections;
-import java.util.Set;
-
-import com.sun.mirror.apt.AnnotationProcessor;
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.apt.AnnotationProcessorFactory;
-import com.sun.mirror.declaration.AnnotationTypeDeclaration;
-
-public class ColorAnnotationProcessorFactory implements AnnotationProcessorFactory {
-
-	public Collection<String> supportedOptions() {
-		return Collections.emptyList();
-	}
-
-	public Collection<String> supportedAnnotationTypes() {
-		return Collections.singleton("org.eclipse.jdt.apt.tests.external.annotations.classloader.ColorAnnotation");
-	}
-
-	public AnnotationProcessor getProcessorFor(Set<AnnotationTypeDeclaration> decls, AnnotationProcessorEnvironment env) {
-		return new ColorAnnotationProcessor(env);
-	}
-
-	
-}
diff --git a/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/classloader/ColorTestCodeExample.java b/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/classloader/ColorTestCodeExample.java
deleted file mode 100644
index 2ecf456..0000000
--- a/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/classloader/ColorTestCodeExample.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    jgarms@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-package org.eclipse.jdt.apt.tests.external.annotations.classloader;
-
-public class ColorTestCodeExample {
-
-	public static final String CODE_PACKAGE = "colortestpackage";
-	public static final String CODE_CLASS_NAME = "ColorTest";
-	public static final String CODE_FULL_NAME = CODE_PACKAGE + "." + CODE_CLASS_NAME;
-	
-	public static final String CODE = 
-		"package colortestpackage;\r\n" + 
-		"\r\n" + 
-		"import org.eclipse.jdt.apt.tests.external.annotations.classloader.Color;\r\n" + 
-		"import org.eclipse.jdt.apt.tests.external.annotations.classloader.ColorAnnotation;\r\n" + 
-		"import org.eclipse.jdt.apt.tests.external.annotations.classloader.ColorWrapper;\r\n" + 
-		"\r\n" + 
-		"@ColorAnnotation(color = Color.RED)\r\n" + 
-		"@ColorWrapper(colors = {@ColorAnnotation(color = Color.GREEN), @ColorAnnotation(color = Color.BLUE)})\r\n" + 
-		"public class ColorTest {\r\n" + 
-		"\r\n" + 
-		"}";
-}
diff --git a/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/classloader/ColorWrapper.java b/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/classloader/ColorWrapper.java
deleted file mode 100644
index 0116bec..0000000
--- a/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/classloader/ColorWrapper.java
+++ /dev/null
@@ -1,16 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    jgarms@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-package org.eclipse.jdt.apt.tests.external.annotations.classloader;
-
-public @interface ColorWrapper {
-	ColorAnnotation[] colors();
-}
diff --git a/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/loadertest/LoaderTestAnnotation.java b/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/loadertest/LoaderTestAnnotation.java
deleted file mode 100644
index 83aa06c..0000000
--- a/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/loadertest/LoaderTestAnnotation.java
+++ /dev/null
@@ -1,19 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *   wharley - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests.external.annotations.loadertest;
-
-/**
- * Used to test whether this annotation processor is successfully loaded.
- */
-public @interface LoaderTestAnnotation {
-	String value() default ""; //$NON-NLS-1$
-}
diff --git a/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/loadertest/LoaderTestAnnotationProcessor.java b/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/loadertest/LoaderTestAnnotationProcessor.java
deleted file mode 100644
index 1d931a2..0000000
--- a/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/loadertest/LoaderTestAnnotationProcessor.java
+++ /dev/null
@@ -1,95 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *   wharley - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests.external.annotations.loadertest;
-
-import java.io.IOException;
-import java.io.PrintWriter;
-
-import com.sun.mirror.apt.AnnotationProcessor;
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.apt.Filer;
-
-/**
- * Used to test loading an annotation processor from a jar file.
- */
-public class LoaderTestAnnotationProcessor implements AnnotationProcessor {
-	
-	private static String getClassName() {
-		return getPackageName() + "." + getTypeName(); //$NON-NLS-1$
-	}
-	
-	private final AnnotationProcessorEnvironment _env;
-
-	/**
-	 * Has an instance of this class been constructed in this VM?
-	 * This is implemented in such a way that the answer does not
-	 * depend on sharing a classloader.
-	 */
-	public static boolean isLoaded() {
-		return "loaded".equals(System.getProperty(getClassName())); //$NON-NLS-1$
-	}
-
-	/**
-	 * Clear the "isLoaded" setting.  After this, isLoaded() will
-	 * return false until the next time an instance is constructed.
-	 */
-	public static void clearLoaded() {
-		System.clearProperty(getClassName());
-	}
-
-	public LoaderTestAnnotationProcessor(AnnotationProcessorEnvironment env) {
-		System.setProperty(getClassName(), "loaded"); //$NON-NLS-1$
-		_env = env;
-	}
-
-	public void process() {
-		try
-		{
-			Filer f = getEnvironment().getFiler();
-			PrintWriter pw = f
-				.createSourceFile( getClassName() );
-			pw.print( getCode() );
-			pw.close();
-		}
-		catch( IOException ioe )
-		{
-			ioe.printStackTrace();
-		}
-	}
-
-	public AnnotationProcessorEnvironment getEnvironment()
-	{
-		return _env;
-	}
-	
-	protected static String getCode() {
-		return CODE; 
-	}
-	
-	protected static String getPackageName() {
-		return "generatedfilepackage";  //$NON-NLS-1$
-	}
-	
-	protected static String getTypeName() { 
-		return "LoadFactoryFromJarTest";  //$NON-NLS-1$
-	}
-
-	@SuppressWarnings("nls")
-	protected final static String CODE			= 
-		"package " + getPackageName() + ";\n" +
-		"public class "	+ getTypeName()	+ "\n"	+ 
-		"{\n" +
-		"    public static void helloWorld() {\n" +
-		"        System.out.println( \"Hello, world!  I am a generated file!\" ); \n" +
-		"    }\n" +
-		"}\n";
-}
diff --git a/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/loadertest/LoaderTestAnnotationProcessorFactory.java b/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/loadertest/LoaderTestAnnotationProcessorFactory.java
deleted file mode 100644
index d117276..0000000
--- a/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/loadertest/LoaderTestAnnotationProcessorFactory.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *   wharley - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests.external.annotations.loadertest;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.Set;
-
-
-import com.sun.mirror.apt.AnnotationProcessor;
-import com.sun.mirror.apt.AnnotationProcessorEnvironment;
-import com.sun.mirror.apt.AnnotationProcessorFactory;
-import com.sun.mirror.declaration.AnnotationTypeDeclaration;
-
-/**
- * Used to test loading an annotation processor from a jar file.
- */
-public class LoaderTestAnnotationProcessorFactory implements
-		AnnotationProcessorFactory {
-
-	private static ArrayList<String> annotations = new ArrayList<String>();
-	
-	{
-		annotations.add( LoaderTestAnnotation.class.getName() );
-	}
-	
-	public Collection<String> supportedOptions() {
-		return Collections.emptyList();
-	}
-
-	public Collection<String> supportedAnnotationTypes() {
-		return annotations;
-	}
-
-	public AnnotationProcessor getProcessorFor(
-			Set<AnnotationTypeDeclaration> atds,
-			AnnotationProcessorEnvironment env) {
-		return new LoaderTestAnnotationProcessor( env );
-	}
-}
diff --git a/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/loadertest/LoaderTestCodeExample.java b/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/loadertest/LoaderTestCodeExample.java
deleted file mode 100644
index 3145e69..0000000
--- a/org.eclipse.jdt.apt.tests/srcext/org/eclipse/jdt/apt/tests/external/annotations/loadertest/LoaderTestCodeExample.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *   wharley - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.tests.external.annotations.loadertest;
-
-/**
- * Code example used to test the annotation processor factory loader.
- */
-@SuppressWarnings("nls")
-public class LoaderTestCodeExample {
-	public static final String CODE_PACKAGE = "loadertestpackage";
-	public static final String CODE_CLASS_NAME = "LoaderTestClass";
-	public static final String CODE_FULL_NAME = CODE_PACKAGE + "." + CODE_CLASS_NAME;
-
-	public static final String CODE = 
-		"package loadertestpackage;\n" +
-		"import org.eclipse.jdt.apt.tests.external.annotations.loadertest.LoaderTestAnnotation;" + "\n" +
-		"@LoaderTestAnnotation" + "\n" +
-		"public class LoaderTestClass {" + "\n" +
-		"    public static void SayHello() {" + "\n" +
-		"        System.out.println(\"hello\");" + "\n" +
-		"    }" + "\n" +
-		"}";
-}
diff --git a/org.eclipse.jdt.apt.tests/test.xml b/org.eclipse.jdt.apt.tests/test.xml
deleted file mode 100644
index 6c0f169..0000000
--- a/org.eclipse.jdt.apt.tests/test.xml
+++ /dev/null
@@ -1,56 +0,0 @@
-<?xml version="1.0"?>
-
-<project name="testsuite" default="run" basedir=".">
-  <!-- The property ${eclipse-home} should be passed into this script -->
-  <!-- Set a meaningful default value for when it is not. -->
-  <property name="eclipse-home" value="${basedir}\..\.."/>
-
-  <!-- sets the properties eclipse-home, and library-file -->
-  <property name="plugin-name" value="org.eclipse.jdt.apt.tests"/>
-  <property name="library-file"
-            value="${eclipse-home}/plugins/${org.eclipse.test}/library.xml"/>
-
-  <!-- This target holds all initialization code that needs to be done for -->
-  <!-- all tests that are to be run. Initialization for individual tests -->
-  <!-- should be done within the body of the suite target. -->
-  <target name="init">
-    <tstamp/>
-    <delete>
-      <fileset dir="${eclipse-home}" includes="org*.xml"/>
-    </delete>
-  </target>
-
-  <!-- This target defines the tests that need to be run. -->
-  <target name="suite">
-  	
-  	<property name="apt-folder" value="${eclipse-home}/apt_folder"/>
-  	<delete dir="${apt-folder}" quiet="true"/>
-  	
-  	<ant target="ui-test" antfile="${library-file}" dir="${eclipse-home}">
-  	      <property name="data-dir" value="${apt-folder}"/>
-  	      <property name="plugin-name" value="${plugin-name}"/>
-  	      <property name="classname" value="org.eclipse.jdt.apt.tests.TestAll"/>
-  	</ant>
-  	
-  </target>
-
-  <!-- This target holds code to cleanup the testing environment after -->
-  <!-- after all of the tests have been run. You can use this target to -->
-  <!-- delete temporary files that have been created. -->
-  <target name="cleanup">
-  </target>
-
-  <!-- This target runs the test suite. Any actions that need to happen -->
-  <!-- after all the tests have been run should go here. -->
-  <target name="run" depends="init,suite,cleanup">
-    <ant target="collect" antfile="${library-file}" dir="${eclipse-home}">
-      <property name="includes" value="org*.xml"/>
-      <property name="output-file" value="${plugin-name}.xml"/>
-    </ant>
-  </target>
-
-  <!-- This target runs the performance test suites. -->
-  <target name="performance">
-  </target>
-
-</project>
diff --git a/org.eclipse.jdt.apt.ui/.classpath b/org.eclipse.jdt.apt.ui/.classpath
deleted file mode 100644
index 390be69..0000000
--- a/org.eclipse.jdt.apt.ui/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JRE 1.5.0"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/org.eclipse.jdt.apt.ui/.cvsignore b/org.eclipse.jdt.apt.ui/.cvsignore
deleted file mode 100644
index ba077a4..0000000
--- a/org.eclipse.jdt.apt.ui/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-bin
diff --git a/org.eclipse.jdt.apt.ui/.project b/org.eclipse.jdt.apt.ui/.project
deleted file mode 100644
index ce8878d..0000000
--- a/org.eclipse.jdt.apt.ui/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.jdt.apt.ui</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/org.eclipse.jdt.apt.ui/.settings/org.eclipse.core.resources.prefs b/org.eclipse.jdt.apt.ui/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index 37df87e..0000000
--- a/org.eclipse.jdt.apt.ui/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,6 +0,0 @@
-#Thu Jul 28 10:31:48 PDT 2005
-eclipse.preferences.version=1
-encoding//src/org/eclipse/jdt/apt/ui/internal/preferences/messages.properties=8859_1
-encoding//src/org/eclipse/jdt/apt/ui/internal/quickfix/messages.properties=8859_1
-encoding//src/org/eclipse/jdt/apt/ui/internal/util/messages.properties=8859_1
-encoding//src/org/eclipse/jdt/apt/ui/messages.properties=8859_1
diff --git a/org.eclipse.jdt.apt.ui/.settings/org.eclipse.jdt.core.prefs b/org.eclipse.jdt.apt.ui/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 06b5a32..0000000
--- a/org.eclipse.jdt.apt.ui/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,57 +0,0 @@
-#Mon Jul 18 10:04:25 PDT 2005
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.5
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
-org.eclipse.jdt.core.compiler.problem.deprecation=warning
-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
-org.eclipse.jdt.core.compiler.problem.discouragedReference=ignore
-org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
-org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
-org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=ignore
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
-org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore
-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=warning
-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
-org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
-org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
-org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
-org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
-org.eclipse.jdt.core.compiler.problem.unusedImport=warning
-org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
-org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=ignore
-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
-org.eclipse.jdt.core.compiler.source=1.5
diff --git a/org.eclipse.jdt.apt.ui/.settings/org.eclipse.jdt.ui.prefs b/org.eclipse.jdt.apt.ui/.settings/org.eclipse.jdt.ui.prefs
deleted file mode 100644
index 328c856..0000000
--- a/org.eclipse.jdt.apt.ui/.settings/org.eclipse.jdt.ui.prefs
+++ /dev/null
@@ -1,3 +0,0 @@
-#Wed Jun 22 17:00:28 PDT 2005
-eclipse.preferences.version=1
-internal.default.compliance=default
diff --git a/org.eclipse.jdt.apt.ui/META-INF/MANIFEST.MF b/org.eclipse.jdt.apt.ui/META-INF/MANIFEST.MF
deleted file mode 100644
index dcef8e2..0000000
--- a/org.eclipse.jdt.apt.ui/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,18 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: JDT APT UI
-Bundle-SymbolicName: org.eclipse.jdt.apt.ui; singleton:=true
-Bundle-Version: 3.1.2.apt05
-Bundle-Activator: org.eclipse.jdt.apt.ui.AptUIPlugin
-Bundle-Localization: plugin
-Require-Bundle: org.eclipse.jdt.apt.core,
- org.eclipse.jdt.ui,
- org.eclipse.jdt.core,
- org.eclipse.ui,
- org.eclipse.core.runtime,
- org.eclipse.core.resources,
- org.eclipse.help,
- org.eclipse.ui.forms
-Eclipse-AutoStart: true
-Export-Package: org.eclipse.jdt.apt.ui.quickfix
-Bundle-Vendor: Eclipse.org
diff --git a/org.eclipse.jdt.apt.ui/about.html b/org.eclipse.jdt.apt.ui/about.html
deleted file mode 100644
index 5f888df..0000000
--- a/org.eclipse.jdt.apt.ui/about.html
+++ /dev/null
@@ -1,28 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<html><head><title>About</title>
-
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"></head>
-
-<body lang="EN-US">
-<h2>About This Content</h2>
- 
-<p>February 24, 2005</p>	
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in
-("Content"). Unless otherwise indicated below, the Content is provided
-to you under the terms and conditions of the
-Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is
-available at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, "Program" will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse
-Foundation, the Content is being redistributed by another party
-("Redistributor") and different terms and conditions may
-apply to your use of any object code in the Content. Check the
-Redistributor's license that was provided with the Content. If no such
-license exists, contact the Redistributor. Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any
-source code in the Content.</p>
-
-</body></html>
\ No newline at end of file
diff --git a/org.eclipse.jdt.apt.ui/build.properties b/org.eclipse.jdt.apt.ui/build.properties
deleted file mode 100644
index c0ba296..0000000
--- a/org.eclipse.jdt.apt.ui/build.properties
+++ /dev/null
@@ -1,7 +0,0 @@
-source.. = src/
-output.. = bin/
-bin.includes = META-INF/,\
-               .,\
-               docs/,\
-               plugin.xml,\
-               toc.xml
diff --git a/org.eclipse.jdt.apt.ui/docs/Building_with_apt.html b/org.eclipse.jdt.apt.ui/docs/Building_with_apt.html
deleted file mode 100644
index ddfe91a..0000000
--- a/org.eclipse.jdt.apt.ui/docs/Building_with_apt.html
+++ /dev/null
@@ -1,47 +0,0 @@
-<html>
-<head>
-<title>Headless Building with APT in Eclipse</title>
-</head>
-
-<body>
-<h1>Headless Building with APT in Eclipse</h2>
-<h2>Instructions for building workspaces from the command-line directly or with ant</h3>
-
-<p>
-The APT plugin can be used in conjunction with Eclipse to build your preconfigured 
-workspace, either directly from the command-line or via ant with its built-in ant task.
-</p>
-
-<h3>Building from the command-line</h3>
-Given an installation of Eclipse with the APT plugin installed, you can invoke the command-line builder
-with the following command (with no line breaks):
-
-<pre>
-java -cp %ECLIPSE_HOME%/startup.jar org.eclipse.core.launcher.Main
-   -noupdate -application org.eclipse.jdt.apt.core.aptBuild -data %WORKSPACE%
-</pre>
-
-This invokes Eclipse in headless mode and builds the workspace as provided on the command-line.
-Any configuration for the provided workspace will be observed in the build. 
-<p>
-
-<h3>Building with Ant</h3>
-Again, you will need an installation of Eclipse with the APT plugin installed. Given this, the "apt"
-task can be invoked with the following xml in your build.xml file:
-
-<pre>
-&lt;project name="test_eclipse" default="build" basedir=".">
-
-    &lt;taskdef name="apt" classname="org.eclipse.jdt.apt.core.build.JdtApt"/>
-    
-    &lt;target name="build">
-        &lt;apt workspace="%WORKSPACE%" eclipseHome="%ECLIPSE_HOME%"/>
-    &lt;/target>
-    
-&lt;/project>
-</pre>
-
-You will need to add the jar for APT to your ant installation's <b>lib</b> directory, or place it on 
-the classpath when invoking ant. The jar lives in 
-<pre>%ECLIPSE_HOME%/plugins/org.eclipse.jdt.apt.core_X/aptcore.jar</pre>
-
diff --git a/org.eclipse.jdt.apt.ui/docs/Getting_started.html b/org.eclipse.jdt.apt.ui/docs/Getting_started.html
deleted file mode 100644
index dd92787..0000000
--- a/org.eclipse.jdt.apt.ui/docs/Getting_started.html
+++ /dev/null
@@ -1,83 +0,0 @@
-<html>
-<head>
-<title>Getting started with APT in Eclipse</title>
-</head>
-
-<body>
-<h1>Getting Started</h2>
-<h2>APT in Eclipse</h3>
-
-<p>
-The APT plugin adds Java 5 annotation processing support to Eclipse, by running annotation
-processors written to use the 
-<a href="http://java.sun.com/j2se/1.5.0/docs/guide/apt/mirror/index.html">Mirror APIs</a>
-inside Eclipse.
-<p>
-These annotation processors will then get triggered as you type inside Eclipse, provide
-errors and warnings directly inside the editor, and producing normal build artifacts
-just as if you were running Sun's apt tool from the commandline.
-
-<p>
-For more detailed information about how the plugin works, 
-you can view the <a href="http://www.eclipse.org/jdt/apt/index.html">JDT-APT project web site</a>.
-</p>
-
-<h3>Turning on Annotation Processing</h3>
-You must have your project's compiler configured to use Java 5.0-level compliance
-in the preferences, under Java->Compiler:
-<p>
-<img src="compiler_dialog.png">
-<p>
-Next you need to enable annotation processing under Java->Compiler->Annotation Processing:
-<p>
-<img src="annotation_processing.gif">
-<p>
-In this dialog you can also specify the generated source directory if desired,
-and provide any processor options that are necessary.
-<p>
-<b>Note: "-Aclasspath" and "-Asourcepath" options are automatically passed
-to all your processors by eclipse, so it is unnecessary to provide those.</b>
-
-<h3>Adding Annotation Processors</h3>
-You can add annotation processors to your project under Java->Compiler->Annotation Processing->Factory Path:
-
-<p>
-<img src="factory_path.gif">
-<p>
-
-<h3>Factory Path and Source Control</h3>
-
-The factory path is similar to the classpath in the way it interacts with source control.
-In order to avoid hard-coding paths to factory jars, you can either use project-relative jars
-via the "Add Jars..." button, or use a classpath variable via the "Add Variable..." button.
-<p>
-
-<h3>Processor Options and Source Control</h3>
-
-You may need to use paths as some of the options passed to your annotation processors.
-Again, by avoiding hard-coding of absolute paths you'll be able to share your configuration
-in source control.
-
-<p>
-To do this, we support classpath variables inside of processor options.
-Variables must be delimited on both sides by %, and must be the 
-first segment of a path.
-<p>
-
-So, if FOO is a classpath variable that points to d:/foo, then %FOO%/bar.txt 
-will resolve to d:/foo/bar.txt.  Classpath resolution depends on the existence 
-of the classpath variable; if it doesn't exist, the raw string will be added to 
-the environment options.  However, bar.txt (in this example) does not need to 
-exist.
-<p>
-
-The reserved variable ROOT is given special meaning: it is the workspace root, 
-and introduces a project resource.  So, for instance, if quux is the name of a 
-project, then %ROOT%/quux will resolve to the absolute path of quux and %
-ROOT%/quux/.classpath will resolve to the absolute path to quux/.classpath.  When 
-using ROOT, the first segment of the path must actually exist: in the example, 
-the project quux must exist, but .classpath need not.
-
-
-
-
diff --git a/org.eclipse.jdt.apt.ui/docs/Quick_fix_with_apt.html b/org.eclipse.jdt.apt.ui/docs/Quick_fix_with_apt.html
deleted file mode 100644
index 99d65b2..0000000
--- a/org.eclipse.jdt.apt.ui/docs/Quick_fix_with_apt.html
+++ /dev/null
@@ -1,72 +0,0 @@
-<html>
-<head>
-<title>Quick Assist with APT</title>
-</head>
-
-<body>
-<h1>Creating a Quick-Fix processor for APT</h2>
-<h2>Instructions for creating an Eclipse Quick Fix Processor</h3>
-
-<p>
-It is possible to write quick-fix processors to fix errors that your APT processor
-detects. To do that, you must do two things:
-
-<ol>
-<li>Print errors indicating that they are fixable</li>
-<li>Write an APT quick fix processor and register it with APT</li>
-</ol> 
-</p>
-
-<h3>1. Print errors indicating that they are fixable</h3>
-
-When running inside Eclipse, you may downcast the Messager object that you get from
-the AnnotationProcessorEnvironment's <code>getMessager()</code> method. Inside Eclipse,
-that object will also be an <code>org.eclipse.jdt.apt.core.util.EclipseMessager</code>, which
-declares some additional methods over the standard Messager, like the following:
-
-<code>
-<ul>
-<li>printFixableError(SourcePosition pos, String msg, String pluginId, String errorId)</li>
-<li>printFixableError(String msg, String pluginId, String errorId)</li>
-</ul>
-</code>
-
-The pluginId should be the ID of the plugin within which you will be creating your
-quick fix processor. The errorId should be a String that will make sense in the context of
-your quick fix processor, say, "requiredAnnotationValueMissing", or whatever will provide
-the necessary information to provide your quick fix.
-
-<p>
-
-<h3>2. Create an APT Quick Fix Processor</h3>
-
-Begin by creating a class that implements <code>org.eclipse.jdt.apt.ui.quickfix.IAPTQuickFixProvider</code>, 
-which has only one method:
-
-<code>
-<ul>
-<li>public IJavaCompletionProposal [] getProposals(IInvocationContext context, 
-IProblemLocation [] locations) throws CoreException;
-</ul>
-</code>
-
-You'll notice this is very similar to the standard Eclipse quick fix processor API,
-but you will only get called for problems that you created.</p>
-
-Once you've created your quick fix processor implementation, you can register it with an extension
-point on the APT UI plugin, aptQuickFixProvider. Here is an example of what to put in your
-plugin's plugin.xml:
-
-<pre>
-&lt;extension
-         point="org.eclipse.jdt.apt.ui.aptQuickFixProvider">
-      &lt;quickFixProvider
-            className="com.foo.MyAptQuickFixProvider"
-            errorCode="com.foo.AptErrors"
-            pluginId="com.foo.Apt"/>
-&lt;/extension>
-</pre>
-
-That's it! Once your plugin is running inside Eclipse, your APT Quick Fix Provider
-will get called each time the user attempts to quick-fix one of the errors
-your processor created.
diff --git a/org.eclipse.jdt.apt.ui/docs/annotation_processing.gif b/org.eclipse.jdt.apt.ui/docs/annotation_processing.gif
deleted file mode 100644
index ac8ae0b..0000000
--- a/org.eclipse.jdt.apt.ui/docs/annotation_processing.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.jdt.apt.ui/docs/compiler_dialog.png b/org.eclipse.jdt.apt.ui/docs/compiler_dialog.png
deleted file mode 100644
index 501bbd4..0000000
--- a/org.eclipse.jdt.apt.ui/docs/compiler_dialog.png
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.jdt.apt.ui/docs/contexts_APT.xml b/org.eclipse.jdt.apt.ui/docs/contexts_APT.xml
deleted file mode 100644
index 52e54e2..0000000
--- a/org.eclipse.jdt.apt.ui/docs/contexts_APT.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?NLS TYPE="org.eclipse.help.contexts"?>
-<contexts>
-
-    <!-- Dialogs -->
-
-    <context id="advanced_factory_path_options_dialog_context">
-    	<description>A dialog for configuring factory path options that do not normally need to be changed.</description>
-    	<topic label="Advanced factory path options dialog" href="docs/reference/factorypathoptions.html"/>
-    </context>
-    <context id="processor_option_input_dialog_context">
-    	<description>A dialog for adding or editing an annotation processor option.</description>
-    	<topic label="Processor option input dialog" href="docs/reference/processor_options_input.html"/>
-    </context>
-    
-    <!-- Preference pages -->
-
-    <context id="apt_configuration_preference_page_context">
-        <description>Configure general Java annotation processing settings.</description>
-        <topic label="Java annotation processing preferences" href="docs/reference/apt_config.html"/>
-    </context>
-    <context id="factory_path_preference_page_context">
-        <description>Configure the factory path for Java annotation processing.</description>
-        <topic label="Java annotation processing factory path preferences" href="docs/reference/factorypath.html"/>
-    </context>
-    
-</contexts>
-    
\ No newline at end of file
diff --git a/org.eclipse.jdt.apt.ui/docs/factory_path.gif b/org.eclipse.jdt.apt.ui/docs/factory_path.gif
deleted file mode 100644
index f3f97bb..0000000
--- a/org.eclipse.jdt.apt.ui/docs/factory_path.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.jdt.apt.ui/docs/reference/apt_config.html b/org.eclipse.jdt.apt.ui/docs/reference/apt_config.html
deleted file mode 100644
index c584a84..0000000
--- a/org.eclipse.jdt.apt.ui/docs/reference/apt_config.html
+++ /dev/null
@@ -1,38 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-  <head>
-	<meta name="copyright" content="Copyright (c) 2005 BEA Systems, Inc. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html" >
-    <title>
-      Annotation Processing Preferences
-    </title>
-  </head>
-  <body>
-    <h1>
-      Annotation Processing
-    </h1>
-    <p>Annotation processors can generate additional Java code or other files, and produce problem markers,
-    based on Java 5 (JSR-175) annotations.  The Annotation Processing preference pane permits configuration 
-    of preferences that apply to all processors in a project or workspace.  The <a href="factorypath.html">
-    Factory Path preference pane</a> specifies which processors are enabled and permits configuration of 
-    individual processors.
-    <h2>
-    	Generated source directory
-    </h2>
-    <p>Files will be generated on disk relative to the specified directory.  By default this directory
-    is named &quot;.apt_generated&quot;, which causes it to be filtered out of the Package Explorer view.  
-    Generated files have the &quot;derived&quot; bit set; in a clean, all derived files under the
-    generated source directory will be removed.  It is recommended to only
-    use this directory for files generated by processors; do not place any manually created files under
-    this directory, and do not use a pre-existing directory as the generated source directory.
-    <h2>
-    	Processor options
-    </h2>
-    <p>Options entered here will be available to the processors via the AnnotationProcessorEnvironment
-    interface.  Certain options are automatically provided to the processors; entering them in this dialog
-    will have no effect, since the automatically provided values will override any values set here.  
-    The automatic options are described <a href="automatic_processor_options.html">here</a>. More
-    information about processor options is in the topic on <a href="processor_options_input.html">the
-    Processor Options input dialog</a>.
-  </body>
-</html>
-
diff --git a/org.eclipse.jdt.apt.ui/docs/reference/automatic_processor_options.html b/org.eclipse.jdt.apt.ui/docs/reference/automatic_processor_options.html
deleted file mode 100644
index 1e389a8..0000000
--- a/org.eclipse.jdt.apt.ui/docs/reference/automatic_processor_options.html
+++ /dev/null
@@ -1,48 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-  <head>
-	<meta name="copyright" content="Copyright (c) 2005 BEA Systems, Inc. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html" >
-    <title>
-      Automatic Processor Options
-    </title>
-  </head>
-  <body>
-    <h1>
-      Automatic Processor Options
-    </h1>
-    <p>Annotation processor options are configured in the 
-    <a href="apt_config.html">Annotation Processing preference dialog</a>.  Certain options 
-    are automatically provided to the processors; entering them in the Annotation Processing 
-    preference dialog will have no effect, since the automatically provided values will 
-    override any values set there.  The automatic options include the following:
-    <dl>
-    	<dt><strong>-classpath</strong></dt>
-    	<dd>
-    		The compiler classpath.  All entries are absolute paths, not workspace-relative.
-    	</dd>
-    	<dt><strong>-sourcepath</strong></dt>
-    	<dd>
-    		The compiler source path.  All entries are absolute paths, not workspace-relative.
-    	</dd>
-    	<dt><strong>-d</strong></dt>
-    	<dd>
-    		The absolute path of the compiler binary output directory, into which .class files are 
-    		built.
-    	</dd>
-    	<dt><strong>-s</strong></dt>
-    	<dd>
-    		The absolute path of the generated source directory, into which annotation processors 
-    		will generate files.
-    	</dd>
-    	<dt><strong>-source</strong></dt>
-    	<dd>
-    		The compiler -source option.  Typically a string such as &quot;5.0&quot;.
-    	</dd>
-    	<dt><strong>-target</strong></dt>
-    	<dd>
-    		The compiler -target option.  Typically a string such as &quot;5.0&quot;.
-    	</dd>
-    </dl>
-  </body>
-</html>
-
diff --git a/org.eclipse.jdt.apt.ui/docs/reference/factorypath.html b/org.eclipse.jdt.apt.ui/docs/reference/factorypath.html
deleted file mode 100644
index 1cd351b..0000000
--- a/org.eclipse.jdt.apt.ui/docs/reference/factorypath.html
+++ /dev/null
@@ -1,32 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-  <head>
-	<meta name="copyright" content="Copyright (c) 2005 BEA Systems, Inc. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html" >
-    <title>
-      Factory Path Preferences
-    </title>
-  </head>
-  <body>
-    <h1>
-      Factory Path Preferences
-    </h1>
-    <p>Annotation processors can generate additional Java code or other files, and produce problem markers,
-    based on Java 5 (JSR-175) annotations.  The <a href="apt_config.html">Annotation Processing preference
-    pane</a> permits configuration of preferences that apply to all processors in a project or workspace.  
-    The Factory Path preference pane specifies which processors are enabled and permits configuration of 
-    individual processors.
-    <p>The pane displays a list of all the plugins and jar files that contain annotation processors that
-    may be applied to the project.  To add or remove jar files from the list, use the corresponding buttons.
-    Jar files may be specified by absolute path using the Add External Jars... button, or by path relative
-    to a classpath variable using the Add Variable... button.  All installed plugins that extend the
-    org.eclipse.jdt.apt.annotationProcessorFactory extension point are also displayed in the list.
-    <p>To enable a particular plugin or jar file, select the corresponding checkbox within the list.
-    Processors within plugins and jars that are not checked will not be executed.  If more than one processor
-    claims the same annotation, only first one on the list will be served that annotation.  To reorder the
-    list, use the Up and Down buttons.
-    <p>The Advanced... button leads to the <a href="factorypathoptions.html">Advanced Factory Path Options
-    dialog</a>, which is used to view the individual processor factories within a plugin or jar file
-    and to configure additional options.
-  </body>
-</html>
-
diff --git a/org.eclipse.jdt.apt.ui/docs/reference/factorypathoptions.html b/org.eclipse.jdt.apt.ui/docs/reference/factorypathoptions.html
deleted file mode 100644
index 9a892d2..0000000
--- a/org.eclipse.jdt.apt.ui/docs/reference/factorypathoptions.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-  <head>
-	<meta name="copyright" content="Copyright (c) 2005 BEA Systems, Inc. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html" >
-    <title>
-      Advanced Factory Path Options Dialog
-    </title>
-  </head>
-  <body>
-    <h1>
-      Advanced Factory Path Options Dialog
-    </h1>
-    <p>The Advanced Factory Path Options dialog is reached from the <a href="factorypath.html">Factory Path</a>
-    preferences pane.  It is used to view the individual processor factories within a plugin or jar file
-    and to configure additional options.  Options on this dialog do not normally need to be changed from
-    the default.
-    <p>
-    <dl>
-    <dt><strong>Run this container's processors in batch mode</strong></dt>
-    <dd>
-    When this option is selected, the processors and processor factories in this jar will be run in  
-    a mode that enhances compatibility with the Sun&trade; command-line tool apt.  In this mode, 
-    processor classes are loaded at the beginning of a build, executed over the full set of Java types,
-    and then unloaded, as they would be when running apt at the command line.  Processors run in this
-    mode are only run during a full build, not during incremental builds.
-    This option is only configurable for jar files; for plugins it is always set to false.  
-    </dd>
-    </dl>
-    
-  </body>
-</html>
diff --git a/org.eclipse.jdt.apt.ui/docs/reference/processor_options_input.html b/org.eclipse.jdt.apt.ui/docs/reference/processor_options_input.html
deleted file mode 100644
index 01a96b1..0000000
--- a/org.eclipse.jdt.apt.ui/docs/reference/processor_options_input.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-  <head>
-	<meta name="copyright" content="Copyright (c) 2005 BEA Systems, Inc. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html" >
-    <title>
-      Processor Option Input Dialog
-    </title>
-  </head>
-  <body>
-    <h1>
-      Processor Option Input Dialog
-    </h1>
-    <p>The Processor Option input dialog is reached from the <a href="apt_config.html">Annotation Processing
-    preferences pane</a>.  It allows processor options to be added or modified.  
-    <p>Options entered here will be presented to the processors through the AnnotationProcessorEnvironment
-    interface.  Each option will be presented in two forms: as a key/value pair, and as a combined
-    key corresponding to the command-line form of the option, namely &quot;-Akey=value&quot;.
-    For instance, an option with key &quot;foo&quot; and value &quot;bar&quot; would be presented
-    both that way and as key &quot;-Afoo=bar&quot;, value null.
-    <p>Option values representing paths may begin with a percent-delimited token such as <code>%FOO%/</code>.  
-    If the token is the name of a classpath variable, it will be replaced with the current
-    value of the variable at processor execution time.  The special value <code>ROOT</code> expands
-    to the absolute path of the workspace.  For example, <code>%ROOT%/foo/bar.xml</code> might 
-    expand to <code>d:/my_workspace/foo/bar.xml</code>, and <code>%JRE_LIB%/rt.jar</code> might 
-    expand to <code>c:/jdk1.5.0/lib/rt.jar</code>.  Similarly, the special value <code>PROJECT.DIR</code>
-    expands to the absolute path of the current project.
-    <p>Certain options are automatically provided to the processors; entering them in this dialog
-    will have no effect, since the automatically provided values will override any values set here.  
-    The automatic options are described <a href="automatic_processor_options.html">here</a>.
-  </body>
-</html>
diff --git a/org.eclipse.jdt.apt.ui/plugin.xml b/org.eclipse.jdt.apt.ui/plugin.xml
deleted file mode 100644
index 6a9d043..0000000
--- a/org.eclipse.jdt.apt.ui/plugin.xml
+++ /dev/null
@@ -1,93 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin>
-   <extension-point id="aptQuickFixProvider" name="APT Quick Fix Provider" schema="schema/aptQuickFixProvider.exsd"/>
-
-<!-- =================================================================================== -->
-<!-- Extension: Preferences                                                              -->
-<!-- =================================================================================== -->
-   <extension
-         point="org.eclipse.ui.preferencePages">
-      <page
-            category="org.eclipse.jdt.ui.preferences.CompliancePreferencePage"
-            class="org.eclipse.jdt.apt.ui.internal.preferences.AptPreferencePage"
-            id="org.eclipse.jdt.apt.ui.preferences.aptPreferences"
-            name="Annotation Processing"/>
-      <page
-            category="org.eclipse.jdt.apt.ui.preferences.aptPreferences"
-            class="org.eclipse.jdt.apt.ui.internal.preferences.FactoryPathPreferencePage"
-            id="org.eclipse.jdt.apt.ui.preferences.factoryPathPreferences"
-            name="Factory Path"/>
-   </extension>
-   <extension
-         point="org.eclipse.ui.propertyPages">
-      <page
-            category="org.eclipse.jdt.ui.propertyPages.CompliancePreferencePage"
-            class="org.eclipse.jdt.apt.ui.internal.preferences.AptPreferencePage"
-            id="org.eclipse.jdt.apt.ui.propertyPages.aptPreferences"
-            name="Annotation Processing"
-            objectClass="org.eclipse.core.resources.IProject">
-         <filter
-               name="nature"
-               value="org.eclipse.jdt.core.javanature">
-         </filter>
-      </page>            
-      <page
-            category="org.eclipse.jdt.ui.propertyPages.CompliancePreferencePage"
-            class="org.eclipse.jdt.apt.ui.internal.preferences.AptPreferencePage"
-            id="org.eclipse.jdt.apt.ui.propertyPages.aptPreferences"
-            name="Annotation Processing"
-            objectClass="org.eclipse.jdt.core.IJavaProject">
-         <filter
-               name="nature"
-               value="org.eclipse.jdt.core.javanature">
-         </filter>
-      </page>
-      <page
-            category="org.eclipse.jdt.apt.ui.propertyPages.aptPreferences"
-            class="org.eclipse.jdt.apt.ui.internal.preferences.FactoryPathPreferencePage"
-            id="org.eclipse.jdt.apt.ui.propertyPages.factoryPathPreferences"
-            name="Factory Path"
-            objectClass="org.eclipse.core.resources.IProject">
-         <filter
-               name="nature"
-               value="org.eclipse.jdt.core.javanature"/>
-      </page>
-      <page
-            category="org.eclipse.jdt.apt.ui.propertyPages.aptPreferences"
-            class="org.eclipse.jdt.apt.ui.internal.preferences.FactoryPathPreferencePage"
-            id="org.eclipse.jdt.apt.ui.propertyPages.factoryPathPreferences"
-            name="Factory Path"
-            objectClass="org.eclipse.jdt.core.IJavaProject">
-         <filter
-               name="nature"
-               value="org.eclipse.jdt.core.javanature"/>
-      </page>            
-   </extension>
-   
-<!-- =================================================================================== -->
-<!-- Extension: Docs                                                                     -->
-<!-- =================================================================================== -->
-<extension
-      point="org.eclipse.help.toc">
-   <toc file="toc.xml" primary="true"/>
-</extension>
-<extension
-      point="org.eclipse.help.contexts">
-   <contexts
-         file="docs/contexts_APT.xml"
-         plugin="org.eclipse.jdt.apt.ui"/>
-</extension>
-
-<!-- =================================================================================== -->
-<!-- Extension: QuickFixProcessor                                                                     -->
-<!-- =================================================================================== -->
-<extension
-      point="org.eclipse.jdt.ui.quickFixProcessors">
-   <quickFixProcessor
-         class="org.eclipse.jdt.apt.ui.internal.quickfix.APTQuickFixProcessor"
-         id="org.eclipse.jdt.apt.ui.internal.quickfix.APTQuickFixProcessor"
-         name="APTQuickFixProcessor"/>
-</extension>
-
-</plugin>
diff --git a/org.eclipse.jdt.apt.ui/schema/aptQuickFixProvider.exsd b/org.eclipse.jdt.apt.ui/schema/aptQuickFixProvider.exsd
deleted file mode 100644
index bc2debe..0000000
--- a/org.eclipse.jdt.apt.ui/schema/aptQuickFixProvider.exsd
+++ /dev/null
@@ -1,119 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.jdt.apt.ui">
-<annotation>
-      <appInfo>
-         <meta.schema plugin="org.eclipse.jdt.apt.ui" id="aptQuickFixProvider" name="APT Quick Fix Provider"/>
-      </appInfo>
-      <documentation>
-         [Enter description of this extension point.]
-      </documentation>
-   </annotation>
-
-   <element name="extension">
-      <complexType>
-         <sequence>
-            <element ref="quickFixProvider" minOccurs="1" maxOccurs="unbounded"/>
-         </sequence>
-         <attribute name="point" type="string" use="required">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="name" type="string">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-               <appInfo>
-                  <meta.attribute translatable="true"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="quickFixProvider">
-      <complexType>
-         <attribute name="pluginId" type="string" use="required">
-            <annotation>
-               <documentation>
-                  The ID of the APT plugin that is generating messages. Only message from this plugin will be delivered to the provider.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="className" type="string" use="required">
-            <annotation>
-               <documentation>
-                  The class implementing org.eclipse.jdt.apt.ui.quickfix.IAPTQuickFixProvider that will provide IJavaCompletionProposals.
-               </documentation>
-               <appInfo>
-                  <meta.attribute kind="java"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-         <attribute name="errorCode" type="string">
-            <annotation>
-               <documentation>
-                  An optional error code. If no error code is specified, the provider will be provided with all errors for the plugin id provided.
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="since"/>
-      </appInfo>
-      <documentation>
-         [Enter the first release in which this extension point appears.]
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="examples"/>
-      </appInfo>
-      <documentation>
-         [Enter extension point usage example here.]
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="apiInfo"/>
-      </appInfo>
-      <documentation>
-         [Enter API information here.]
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="implementation"/>
-      </appInfo>
-      <documentation>
-         [Enter information about supplied implementation of this extension point.]
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="copyright"/>
-      </appInfo>
-      <documentation>
-         
-      </documentation>
-   </annotation>
-
-</schema>
diff --git a/org.eclipse.jdt.apt.ui/scripts/exportplugin.xml b/org.eclipse.jdt.apt.ui/scripts/exportplugin.xml
deleted file mode 100644
index 45e1925..0000000
--- a/org.eclipse.jdt.apt.ui/scripts/exportplugin.xml
+++ /dev/null
@@ -1,62 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- 
- Build script to create the apt.ui plugin. 
- This script assumes that the classes have already been compiled,
- and exist in the 'bin' subdirectory of the plugin project.
- The directory structure assumed by this script is as follows:
-    [dev root]/
-        [workspace]/
-            [plugins]/
-                org.eclipse.jdt.apt.ui/
-                    bin/
-                    src/
-                    scripts/          // contains this script
-            plugin-export/            // will be created if necessary
-                org.eclipse.jdt.apt.cui_[version]/
-            org.eclipse.jdt.apt.ui_[version].zip  // will be created
-        
--->
-
-<project name="${plugin}" default="export plug-in [_1.0.0]" basedir="..">
-
-<target name="export plug-in [_1.0.0]">
-	<antcall target="zz_internal_export">
-		<param name="plugin_version" value="3.1.2.apt05"/>
-	</antcall>
-</target>
-
-<target name="zz_internal_export">
-
-	<tstamp/>
-	<property name="export-dir" value="../../plugin-export" />
-	<property name="plugin" value="org.eclipse.jdt.apt.ui" />
-	<property name="plugin-dir" value="${export-dir}/${plugin}_${plugin_version}"/>
-
-	<echo message="TARGET: ${export-dir}" />
-	<mkdir dir="${export-dir}" />
-	<delete dir="${plugin-dir}" />
-	<mkdir dir="${plugin-dir}" />
-
-	<echo message="UPDATE ${plugin}_${plugin_version}.jar" />
-	<zip zipfile="${plugin-dir}/${plugin}_${plugin_version}.jar">
-		<fileset dir=".">
-		  <include name="plugin.xml" />
-		  <include name="plugin.properties" />
-		  <include name="META-INF/**" />
-        </fileset>
-        <fileset dir="bin" />
-	</zip>
-	
-	<echo message="UPDATE aptui src.zip" />
-	<zip zipfile="${plugin-dir}/src.zip">
-	    <fileset dir="src" />
-	</zip>		
-
-	<echo message="UPDATE ${export-dir}/../${plugin}_${plugin_version}.zip" />
-	<zip zipfile="${export-dir}/../${plugin}_${plugin_version}.zip"
-	    basedir="${export-dir}" 
-	    includes="${plugin}_${plugin_version}/**"	/>		
-</target>
-
-</project>
diff --git a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/AptUIPlugin.java b/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/AptUIPlugin.java
deleted file mode 100644
index 4b05ac2..0000000
--- a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/AptUIPlugin.java
+++ /dev/null
@@ -1,88 +0,0 @@
-package org.eclipse.jdt.apt.ui;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-import org.osgi.framework.BundleContext;
-
-/**
- * The main plugin class to be used in the desktop.
- */
-public class AptUIPlugin extends AbstractUIPlugin {
-
-	//The shared instance.
-	private static AptUIPlugin plugin;
-	
-	// The plugin ID
-	public static final String PLUGIN_ID = "org.eclipse.jdt.apt.ui"; //$NON-NLS-1$
-	
-	/**
-	 * Status IDs for system log entries.  Must be unique per plugin.
-	 */
-	public static final int STATUS_EXCEPTION = 1;
-	public static final int INTERNAL_ERROR = 2;
-
-	/**
-	 * The constructor.
-	 */
-	public AptUIPlugin() {
-		plugin = this;
-	}
-
-	/**
-	 * This method is called upon plug-in activation
-	 */
-	public void start(BundleContext context) throws Exception {
-		super.start(context);
-	}
-
-	/**
-	 * This method is called when the plug-in is stopped
-	 */
-	public void stop(BundleContext context) throws Exception {
-		super.stop(context);
-		plugin = null;
-	}
-
-	/**
-	 * Returns the shared instance.
-	 */
-	public static AptUIPlugin getDefault() {
-		return plugin;
-	}
-
-	public static IWorkbenchWindow getActiveWorkbenchWindow() {
-		return getDefault().getWorkbench().getActiveWorkbenchWindow();
-	}
-	
-	public static Shell getActiveWorkbenchShell() {
-		 IWorkbenchWindow window= getActiveWorkbenchWindow();
-		 if (window != null) {
-		 	return window.getShell();
-		 }
-		 return null;
-	}
-	
-	/**
-	 * Returns an image descriptor for the image file at the given
-	 * plug-in relative path.
-	 *
-	 * @param path the path
-	 * @return the image descriptor
-	 */
-	public static ImageDescriptor getImageDescriptor(String path) {
-		return AbstractUIPlugin.imageDescriptorFromPlugin(PLUGIN_ID, path);
-	}
-	
-	public static void log(IStatus status) {
-		getDefault().getLog().log(status);
-	}
-	
-	public static void log(Throwable e) {
-		log(new Status(IStatus.ERROR, PLUGIN_ID, STATUS_EXCEPTION, Messages.AptUIPlugin_exceptionThrown, e)); 
-	}
-	
-}
diff --git a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/Messages.java b/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/Messages.java
deleted file mode 100644
index 71ca010..0000000
--- a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/Messages.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *   wharley@bea.com - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.ui;
-
-import org.eclipse.osgi.util.NLS;
-
-/**
- * 
- */
-public class Messages extends NLS {
-	private static final String BUNDLE_NAME = "org.eclipse.jdt.apt.ui.messages"; //$NON-NLS-1$
-
-	private Messages() {
-	}
-
-	static {
-		// initialize resource bundle
-		NLS.initializeMessages(BUNDLE_NAME, Messages.class);
-	}
-
-	public static String AptUIPlugin_exceptionThrown;
-}
diff --git a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/AdvancedFactoryPathOptionsDialog.java b/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/AdvancedFactoryPathOptionsDialog.java
deleted file mode 100644
index dfad3d4..0000000
--- a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/AdvancedFactoryPathOptionsDialog.java
+++ /dev/null
@@ -1,129 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *   wharley@bea.com - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.ui.internal.preferences;
-
-import java.io.IOException;
-
-import org.eclipse.jdt.apt.core.internal.util.FactoryContainer;
-import org.eclipse.jdt.apt.core.internal.util.FactoryPath;
-import org.eclipse.jdt.apt.ui.internal.util.ExceptionHandler;
-import org.eclipse.jdt.apt.ui.internal.util.IAptHelpContextIds;
-import org.eclipse.jdt.internal.ui.wizards.dialogfields.DialogField;
-import org.eclipse.jdt.internal.ui.wizards.dialogfields.IDialogFieldListener;
-import org.eclipse.jdt.internal.ui.wizards.dialogfields.SelectionButtonDialogField;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.viewers.ListViewer;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * Dialog to display "advanced options" on a FactoryPathEntry,
- * typically in the context of the factory path config UI.
- * Advanced options are those which do not normally need to
- * be configured, and which may require deeper-than-usual
- * understanding of the annotation processing architecture.
- */
-public class AdvancedFactoryPathOptionsDialog extends Dialog {
-	
-	private final static int LIST_WIDTH= 70; // width (in chars) of factory list
-	private final static int LIST_HEIGHT= 10; // number of lines in factory list
-	
-	private class FieldAdapter implements IDialogFieldListener {
-		public void dialogFieldChanged(DialogField field) {
-		}
-	}
-	
-	// shallow copies, because they are not changed by this code
-	private final FactoryContainer _fc;
-	private final FactoryPath.Attributes _attr;
-	
-	// Dialog controls
-	private SelectionButtonDialogField _batchModeField;
-	private Text _contentsLabelField;
-	private ListViewer _contentsField;
-	
-	public AdvancedFactoryPathOptionsDialog(
-			Shell parent, FactoryContainer fc, FactoryPath.Attributes attr) {
-		super(parent);
-		setShellStyle(getShellStyle() | SWT.RESIZE);
-		_fc= fc;
-		_attr= attr;
-	}
-	
-    protected void configureShell(Shell shell) {
-        super.configureShell(shell);
-        shell.setText(Messages.AdvancedFactoryPathOptionsDialog_advancedOptions);
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(shell, IAptHelpContextIds.ADVANCED_FACTORYPATH_OPTIONS_DIALOG);
-    }
-    
-	protected Control createDialogArea(Composite parent) {
-		Composite dlgArea= (Composite) super.createDialogArea(parent);
-		
-		// Set up "batch mode" checkbox.
-		FieldAdapter adapter = new FieldAdapter();
-		_batchModeField = new SelectionButtonDialogField(SWT.CHECK);
-		_batchModeField.setSelection(_attr.runInBatchMode());
-		_batchModeField.setLabelText(Messages.AdvancedFactoryPathOptionsDialog_batchMode);
-		_batchModeField.setDialogFieldListener(adapter);
-		_batchModeField.doFillIntoGrid(dlgArea, 2);
-			// Plugins can't run in APT compatibility mode.
-		boolean isPlugin = _fc.getType() == FactoryContainer.FactoryType.PLUGIN;
-		_batchModeField.setEnabled(!isPlugin);
-		
-		DialogField.createEmptySpace(dlgArea, 1);
-
-		// Set up label for processor contents list
-		Label description= new Label(dlgArea, SWT.WRAP);
-		description.setText(Messages.AdvancedFactoryPathOptionsDialog_label_processorsInThisContainer); 
-		GridData gdLabel= new GridData(GridData.HORIZONTAL_ALIGN_FILL);
-		gdLabel.horizontalSpan= 2;
-		description.setLayoutData(gdLabel);
-
-		// Set up processor contents list
-		_contentsField= new ListViewer(dlgArea, SWT.SINGLE | SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL);
-        GridData data = new GridData(SWT.FILL, SWT.FILL, true, true);
-        data.heightHint = convertHeightInCharsToPixels(LIST_HEIGHT);
-        data.widthHint = convertWidthInCharsToPixels(LIST_WIDTH);
-        _contentsField.getList().setLayoutData(data);
-        _contentsField.getList().setFont(parent.getFont());
-        try {
-	        for (String name : _fc.getFactoryNames()) {
-	        	_contentsField.add(name);
-	        }
-        }
-        catch (IOException e) {
-			final String message = "Unable to load factory names from container [" + _fc.getId() + "]"; //$NON-NLS-1$ //$NON-NLS-2$
-			ExceptionHandler.log(e, message);
-        }
-        _contentsField.setSelection(null, false);
-        
-		applyDialogFont(dlgArea);		
-		return dlgArea;
-	}
-		
-	/**
-	 * Return a new Attributes representing the original value updated
-	 * with any changes made by the user.  Changes will be included even
-	 * if the dialog was cancelled, so this should only be called if the
-	 * dialog returned OK.
-	 */
-	public FactoryPath.Attributes getResult() {
-		boolean batchMode = _batchModeField.isSelected();
-		return new FactoryPath.Attributes(_attr.isEnabled(), batchMode);
-	}
-}
diff --git a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/AptConfigurationBlock.java b/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/AptConfigurationBlock.java
deleted file mode 100644
index 03efef5..0000000
--- a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/AptConfigurationBlock.java
+++ /dev/null
@@ -1,485 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     BEA Systems Inc. - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.ui.internal.preferences;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.LinkedHashMap;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.preferences.IScopeContext;
-import org.eclipse.jdt.apt.core.AptPlugin;
-import org.eclipse.jdt.apt.core.util.AptConfig;
-import org.eclipse.jdt.apt.core.util.AptPreferenceConstants;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jdt.internal.ui.dialogs.StatusInfo;
-import org.eclipse.jdt.internal.ui.util.PixelConverter;
-import org.eclipse.jdt.internal.ui.wizards.IStatusChangeListener;
-import org.eclipse.jdt.internal.ui.wizards.dialogfields.DialogField;
-import org.eclipse.jdt.internal.ui.wizards.dialogfields.IDialogFieldListener;
-import org.eclipse.jdt.internal.ui.wizards.dialogfields.IListAdapter;
-import org.eclipse.jdt.internal.ui.wizards.dialogfields.LayoutUtil;
-import org.eclipse.jdt.internal.ui.wizards.dialogfields.ListDialogField;
-import org.eclipse.jdt.internal.ui.wizards.dialogfields.SelectionButtonDialogField;
-import org.eclipse.jdt.internal.ui.wizards.dialogfields.StringDialogField;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.viewers.ITableLabelProvider;
-import org.eclipse.jface.viewers.LabelProvider;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.jface.viewers.ViewerSorter;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.ui.preferences.IWorkbenchPreferenceContainer;
-
-/**
- * Preference pane for most APT (Java annotation processing) settings.
- * @see org.eclipse.jdt.ui.internal.preferences.TodoTaskConfigurationBlock
- * for the conceptual source of some of this code.
- * <p>
- * 
- */
-public class AptConfigurationBlock extends BaseConfigurationBlock {
-		
-	private static final Key KEY_APTENABLED= getKey(AptPlugin.PLUGIN_ID, AptPreferenceConstants.APT_ENABLED);
-	private static final Key KEY_GENSRCDIR= getKey(AptPlugin.PLUGIN_ID, AptPreferenceConstants.APT_GENSRCDIR);
-	
-	private static Key[] getAllKeys() {
-		return new Key[] {
-				KEY_APTENABLED, KEY_GENSRCDIR
-		};	
-	}
-	
-	private static final int IDX_ADD= 0;
-	private static final int IDX_EDIT= 1;
-	private static final int IDX_REMOVE= 2;
-	
-	private final IJavaProject fJProj;
-
-	private SelectionButtonDialogField fAptEnabledField;
-	private StringDialogField fGenSrcDirField;
-	private ListDialogField fProcessorOptionsField;
-	
-	private PixelConverter fPixelConverter;
-	private Composite fBlockControl;
-	
-	private Map<String, String> fOriginalProcOptions; // cache of saved values
-	private String fOriginalGenSrcDir;
-	private boolean fOriginalAptEnabled;
-	
-	/**
-	 * Event handler for Processor Options list control.
-	 */
-	private class ProcessorOptionsAdapter implements IListAdapter, IDialogFieldListener {
-		
-		public void customButtonPressed(ListDialogField field, int index) {
-			switch (index) {
-			case IDX_ADD:
-				editOrAddProcessorOption(null);
-				break;
-			case IDX_EDIT:
-				tryToEdit(field);
-				break;
-			}
-		}
-
-		public void selectionChanged(ListDialogField field) {
-			List selectedElements= field.getSelectedElements();
-			field.enableButton(IDX_EDIT, canEdit(field, selectedElements));
-		}
-			
-		public void doubleClicked(ListDialogField field) {
-			tryToEdit(field);
-		}
-
-		public void dialogFieldChanged(DialogField field) {
-			updateModel(field);
-		}			
-
-		private boolean canEdit(DialogField field, List selectedElements) {
-			if (!field.isEnabled())
-				return false;
-			return selectedElements.size() == 1;
-		}
-		
-		private void tryToEdit(ListDialogField field) {
-			List<ProcessorOption> selection= getListSelection();
-			if (canEdit(field, selection)) {
-				editOrAddProcessorOption(selection.get(0));
-			}
-		}
-	}
-	
-	/**
-	 * An entry in the Processor Options list control.
-	 */
-	public static class ProcessorOption {
-		public String key;
-		public String value;
-	}
-
-	/**
-	 * Sorts items in the Processor Options list control.
-	 */
-	private static class ProcessorOptionSorter extends ViewerSorter {
-		public int compare(Viewer viewer, Object e1, Object e2) {
-			return collator.compare(((ProcessorOption) e1).key, ((ProcessorOption) e2).key);
-		}
-	}
-	
-	/**
-	 * Controls display of items in the Processor Options list control.
-	 */
-	private class ProcessorOptionsLabelProvider extends LabelProvider implements ITableLabelProvider {
-		
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.ITableLabelProvider#getColumnImage(java.lang.Object, int)
-		 */
-		public Image getColumnImage(Object element, int columnIndex) {
-			return null;
-		}
-		
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.ITableLabelProvider#getColumnText(java.lang.Object, int)
-		 */
-		public String getColumnText(Object element, int columnIndex) {
-			ProcessorOption o = (ProcessorOption) element;
-			if (columnIndex == 0) {
-				return o.key;
-			}
-			else if (columnIndex == 1) {
-				return o.value;
-			}
-			else {
-				return ""; //$NON-NLS-1$
-			}
-		}
-	}
-
-	public AptConfigurationBlock(IStatusChangeListener context, IProject project, IWorkbenchPreferenceContainer container) {
-		super(context, project, getAllKeys(), container);
-		
-		fJProj = JavaCore.create(project);
-		
-		UpdateAdapter adapter= new UpdateAdapter();
-		
-		if (fJProj != null) {
-			fAptEnabledField= new SelectionButtonDialogField(SWT.CHECK);
-			fAptEnabledField.setDialogFieldListener(adapter);
-			fAptEnabledField.setLabelText(Messages.AptConfigurationBlock_enable);
-		}
-		else {
-			fAptEnabledField = null;
-		}
-		
-		fGenSrcDirField = new StringDialogField();
-		fGenSrcDirField.setDialogFieldListener(adapter);
-		fGenSrcDirField.setLabelText(Messages.AptConfigurationBlock_generatedSrcDir);
-		
-		String[] buttons= new String[] {
-			Messages.AptConfigurationBlock_add,
-			Messages.AptConfigurationBlock_edit,
-			Messages.AptConfigurationBlock_remove
-		};
-		ProcessorOptionsAdapter optionsAdapter = new ProcessorOptionsAdapter();
-		fProcessorOptionsField = new ListDialogField(optionsAdapter, buttons, new ProcessorOptionsLabelProvider());
-		fProcessorOptionsField.setDialogFieldListener(optionsAdapter);
-		fProcessorOptionsField.setRemoveButtonIndex(IDX_REMOVE);
-		String[] columnHeaders= new String[] {
-			Messages.AptConfigurationBlock_key,
-			Messages.AptConfigurationBlock_value
-		};
-		fProcessorOptionsField.setTableColumns(new ListDialogField.ColumnsDescription(columnHeaders, true));
-		fProcessorOptionsField.setViewerSorter(new ProcessorOptionSorter());
-		fProcessorOptionsField.setLabelText(Messages.AptConfigurationBlock_options);
-		
-		updateControls();
-		
-		if (fProcessorOptionsField.getSize() > 0) {
-			fProcessorOptionsField.selectFirstElement();
-		} else {
-			fProcessorOptionsField.enableButton(IDX_EDIT, false);
-		}
-		
-	}
-	
-	/* 
-	 * At workspace level, don't ask for a rebuild.
-	 */
-	@Override
-	protected String[] getFullBuildDialogStrings(boolean workspaceSettings) {
-		return workspaceSettings ? null : super.getFullBuildDialogStrings(workspaceSettings);
-	}
-
-	/*
-	 * Helper to eliminate unchecked-conversion warning
-	 */
-	@SuppressWarnings("unchecked") //$NON-NLS-1$
-	private List<ProcessorOption> getListElements() {
-		return fProcessorOptionsField.getElements();
-	}
-	
-	/*
-	 * Helper to eliminate unchecked-conversion warning
-	 */
-	@SuppressWarnings("unchecked") //$NON-NLS-1$
-	private List<ProcessorOption> getListSelection() {
-		return fProcessorOptionsField.getSelectedElements();
-	}
-	
-	private void editOrAddProcessorOption(ProcessorOption original) {
-		ProcessorOptionInputDialog dialog= new ProcessorOptionInputDialog(getShell(), original, getListElements());
-		if (dialog.open() == Window.OK) {
-			if (original != null) {
-				fProcessorOptionsField.replaceElement(original, dialog.getResult());
-			} else {
-				fProcessorOptionsField.addElement(dialog.getResult());
-			}
-		}
-	}
-	
-	@Override
-	protected Control createContents(Composite parent) {
-		setShell(parent.getShell());
-		
-		fPixelConverter= new PixelConverter(parent);
-		
-		fBlockControl = new Composite(parent, SWT.NONE);
-		fBlockControl.setFont(parent.getFont());
-		
-		GridLayout layout= new GridLayout();
-		layout.numColumns= 2;
-		layout.marginWidth= 0;
-		layout.marginHeight= 0;
-		
-		fBlockControl.setLayout(layout);
-		
-		DialogField[] fields = fAptEnabledField != null ? 
-				new DialogField[] {
-					fAptEnabledField,
-					fGenSrcDirField,
-					fProcessorOptionsField,
-				} :
-				new DialogField[] {
-					fGenSrcDirField,
-					fProcessorOptionsField,
-				};
-		LayoutUtil.doDefaultLayout(fBlockControl, fields, true, SWT.DEFAULT, SWT.DEFAULT);
-		LayoutUtil.setHorizontalGrabbing(fProcessorOptionsField.getListControl(null));
-
-		Label description= new Label(fBlockControl, SWT.WRAP);
-		description.setText(Messages.AptConfigurationBlock_classpathAddedAutomaticallyNote); 
-		GridData gdLabel= new GridData(GridData.HORIZONTAL_ALIGN_FILL);
-		gdLabel.horizontalSpan= 2;
-		gdLabel.widthHint= fPixelConverter.convertWidthInCharsToPixels(60);
-		description.setLayoutData(gdLabel);
-		
-		Dialog.applyDialogFont(fBlockControl);
-		
-		validateSettings(null, null, null);
-		
-		return fBlockControl;
-	}
-	
-	@Override
-	protected void cacheOriginalValues() {
-		super.cacheOriginalValues();
-		fOriginalProcOptions= AptConfig.getRawProcessorOptions(fJProj);
-		fOriginalGenSrcDir = AptConfig.getGenSrcDir(fJProj);
-		fOriginalAptEnabled = AptConfig.isEnabled(fJProj);
-	}
-
-	protected void initContents() {
-		loadProcessorOptions(fJProj);
-	}
-
-	@Override
-	protected void saveSettings() {
-		List<ProcessorOption> elements;
-		if ((fJProj != null) && !fBlockControl.isEnabled()) {
-			// We're in a project properties pane but the entire configuration 
-			// block control is disabled.  That means the per-project settings checkbox 
-			// is unchecked.  To save that state, we'll clear the proc options map.
-			elements = Collections.<ProcessorOption>emptyList();
-		}
-		else {
-			elements = getListElements();
-		}
-		saveProcessorOptions(elements);
-		super.saveSettings();
-		if (null != fAptProject) {
-			if (!fOriginalGenSrcDir.equals(fGenSrcDirField.getText()))
-				fAptProject.preferenceChanged(AptPreferenceConstants.APT_GENSRCDIR);
-			if (fOriginalAptEnabled != fAptEnabledField.isSelected())
-				fAptProject.preferenceChanged(AptPreferenceConstants.APT_ENABLED);
-		}
-	}
-
-	/**
-	 * Check whether any processor options have changed, as well as
-	 * any of the settings tracked in the "normal" way (as Keys).
-	 */
-	@Override
-	protected boolean settingsChanged(IScopeContext currContext) {
-		Map<String, String> savedProcOptions = new HashMap<String, String>(fOriginalProcOptions);
-		for (ProcessorOption o : getListElements()) {
-			final String savedVal = savedProcOptions.get(o.key);
-			if (savedVal != null && savedVal.equals(o.value)) {
-				savedProcOptions.remove(o.key);
-			}
-			else {
-				// found an unsaved option in the list
-				return true;
-			}
-		}
-		if (!savedProcOptions.isEmpty()) {
-			// found a saved option that has been removed
-			return true;
-		}
-		return super.settingsChanged(currContext);
-	}
-
-	/**
-	 * Call after updating key values, to warn user if new values are invalid.
-	 * @param changedKey may be null, e.g. if called from createContents.
-	 * @param oldValue may be null
-	 * @param newValue may be null
-	 */
-	@Override
-	protected void validateSettings(Key changedKey, String oldValue, String newValue) {
-		IStatus status = null;
-		
-		status = validateGenSrcDir();
-		if (status.getSeverity() == IStatus.OK) {
-			status = validateProcessorOptions();
-		}
-
-		fContext.statusChanged(status);
-	}	
-	
-	/**
-	 * Validate "generated source directory" setting.  It must be a valid
-	 * pathname relative to a project, and must not be a source directory.
-	 * @return
-	 */
-	private IStatus validateGenSrcDir() {
-		String dirName = fGenSrcDirField.getText();
-		if (!AptConfig.validateGenSrcDir(fJProj, dirName)) {
-			return new StatusInfo(IStatus.ERROR, Messages.AptConfigurationBlock_genSrcDirMustBeValidRelativePath);
-		}
-		if (fJProj != null && !dirName.equals(fOriginalGenSrcDir)) {
-			IFolder folder = fJProj.getProject().getFolder( dirName );
-			if (folder != null && folder.exists() && !folder.isDerived()) {
-				return new StatusInfo(IStatus.WARNING, Messages.AptConfigurationBlock_warningContentsMayBeDeleted);
-			}
-		}
-		return new StatusInfo();
-	}
-
-	/**
-	 * Validate the currently set processor options.  We do this by
-	 * looking at the table contents rather than the packed string,
-	 * just because it's easier.
-	 * @return a StatusInfo containing a warning if appropriate.
-	 */
-	private IStatus validateProcessorOptions() {
-		List<ProcessorOption> elements = getListElements();
-		for (ProcessorOption o : elements) {
-			if (AptConfig.isAutomaticProcessorOption(o.key)) {
-				return new StatusInfo(IStatus.WARNING, 
-						Messages.AptConfigurationBlock_warningIgnoredOptions + ": " + o.key); //$NON-NLS-1$
-			}
-		}
-		return new StatusInfo();
-	}
-	
-	/**
-	 * Update the UI based on the values presently stored in the keys.
-	 */
-	@Override
-	protected void updateControls() {
-		if (fAptEnabledField != null) {
-			boolean aptEnabled= Boolean.valueOf(getValue(KEY_APTENABLED)).booleanValue();
-			fAptEnabledField.setSelection(aptEnabled);
-		}
-		String str= getValue(KEY_GENSRCDIR);
-		fGenSrcDirField.setText(str == null ? "" : str); //$NON-NLS-1$
-	}	
-	
-	/**
-	 * Update the values stored in the keys based on the UI.
-	 */
-	protected final void updateModel(DialogField field) {
-		
-		if (fAptEnabledField != null && field == fAptEnabledField) {
-			String newVal = String.valueOf(fAptEnabledField.isSelected());
-			setValue(KEY_APTENABLED, newVal);
-		} else if (field == fGenSrcDirField) {
-			String newVal = fGenSrcDirField.getText();
-			setValue(KEY_GENSRCDIR, newVal);
-		} 
-		validateSettings(null, null, null); // params are ignored
-	}
-
-	/**
-	 * Save the contents of the options list.
-	 */
-	private void saveProcessorOptions(List<ProcessorOption> elements) {
-		Map<String, String> map = new LinkedHashMap<String, String>(elements.size());
-		for (ProcessorOption o : elements) {
-			map.put(o.key, o.value);
-		}
-		AptConfig.setProcessorOptions(map, fJProj);
-	}
-
-	/**
-	 * Set the processor options list contents
-	 */
-	private void loadProcessorOptions(IJavaProject jproj) {
-		List<ProcessorOption> options= new ArrayList<ProcessorOption>();
-		Map<String, String> parsedOptions = AptConfig.getRawProcessorOptions(jproj);
-		for (Map.Entry<String, String> entry : parsedOptions.entrySet()) {
-			ProcessorOption o = new ProcessorOption();
-			o.key = entry.getKey();
-			o.value = entry.getValue();
-			options.add(o);
-		}
-		fProcessorOptionsField.setElements(options);
-	}
-
-	@Override
-	public void performDefaults() {
-		if (fJProj != null) {
-			// If project-specific, load workspace settings
-			loadProcessorOptions(null);
-		}
-		else {
-			// If workspace, load "factory default," which is empty.
-			fProcessorOptionsField.removeAllElements();
-		}
-		super.performDefaults();
-	}
-
-}
-
-
diff --git a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/AptPreferencePage.java b/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/AptPreferencePage.java
deleted file mode 100644
index e2f53a6..0000000
--- a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/AptPreferencePage.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     BEA Systems Inc. - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.ui.internal.preferences;
-
-import org.eclipse.jdt.apt.ui.AptUIPlugin;
-import org.eclipse.jdt.apt.ui.internal.util.IAptHelpContextIds;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.ui.preferences.IWorkbenchPreferenceContainer;
-
-/*
- * The page to configure the naming style options.
- */
-public class AptPreferencePage extends BasePreferencePage {
-
-	private static final String PREF_ID= "org.eclipse.jdt.apt.ui.preferences.aptPreferences"; //$NON-NLS-1$
-	private static final String PROP_ID= "org.eclipse.jdt.apt.ui.propertyPages.aptPreferences"; //$NON-NLS-1$
-
-	public AptPreferencePage() {
-		setPreferenceStore(AptUIPlugin.getDefault().getPreferenceStore());
-		
-		// only shown for workspace preferences
-		setDescription(Messages.AptPreferencePage_preferences);
-		
-		// only used when page is shown programatically
-		setTitle(Messages.AptPreferencePage_preferencesTitle);
-	}
-
-	/*
-	 * @see org.eclipse.jface.dialogs.IDialogPage#createControl(org.eclipse.swt.widgets.Composite)
-	 */
-	public void createControl(Composite parent) {
-		IWorkbenchPreferenceContainer container= (IWorkbenchPreferenceContainer) getContainer();
-		setConfigurationBlock(new AptConfigurationBlock(getNewStatusChangedListener(), getProject(), container));
-		
-		super.createControl(parent);
-	}
-
-	@Override
-	protected String getContextHelpId() {
-		return IAptHelpContextIds.APTCONFIGURATION_PREFERENCE_PAGE;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jdt.internal.ui.preferences.PropertyAndPreferencePage#getPreferencePageID()
-	 */
-	protected String getPreferencePageID() {
-		return PREF_ID;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jdt.internal.ui.preferences.PropertyAndPreferencePage#getPropertyPageID()
-	 */
-	protected String getPropertyPageID() {
-		return PROP_ID;
-	}
-	
-	
-
-}
-
-
-
diff --git a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/BaseConfigurationBlock.java b/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/BaseConfigurationBlock.java
deleted file mode 100644
index 015f6a7..0000000
--- a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/BaseConfigurationBlock.java
+++ /dev/null
@@ -1,925 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *   {INITIAL_AUTHOR} - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.ui.internal.preferences;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.IdentityHashMap;
-import java.util.Map;
-import java.util.StringTokenizer;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.ProjectScope;
-import org.eclipse.core.runtime.preferences.DefaultScope;
-import org.eclipse.core.runtime.preferences.IEclipsePreferences;
-import org.eclipse.core.runtime.preferences.IScopeContext;
-import org.eclipse.core.runtime.preferences.InstanceScope;
-import org.eclipse.jdt.apt.core.AptPlugin;
-import org.eclipse.jdt.apt.core.internal.AptProject;
-import org.eclipse.jdt.apt.ui.internal.util.ExceptionHandler;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jdt.internal.ui.JavaPlugin;
-import org.eclipse.jdt.internal.ui.preferences.ScrolledPageContent;
-import org.eclipse.jdt.internal.ui.util.CoreUtility;
-import org.eclipse.jdt.internal.ui.wizards.IStatusChangeListener;
-import org.eclipse.jdt.internal.ui.wizards.dialogfields.DialogField;
-import org.eclipse.jdt.internal.ui.wizards.dialogfields.IDialogFieldListener;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.jface.dialogs.IDialogSettings;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.jface.resource.JFaceResources;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Combo;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Scrollable;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.swt.widgets.Widget;
-import org.eclipse.ui.forms.events.ExpansionAdapter;
-import org.eclipse.ui.forms.events.ExpansionEvent;
-import org.eclipse.ui.forms.widgets.ExpandableComposite;
-import org.eclipse.ui.internal.preferences.WorkingCopyManager;
-import org.eclipse.ui.preferences.IWorkbenchPreferenceContainer;
-import org.eclipse.ui.preferences.IWorkingCopyManager;
-import org.osgi.service.prefs.BackingStoreException;
-
-/**
- * The ConfigurationBlock hierarchy is used to organize controls and keys 
- * within a property/preference page.  The implementor derives from this
- * class and creates dialog controls, layout, and response code.
- * <p>
- * This code is largely a copy of OptionsConfigurationBlock (JDT UI), modified
- * to fix bugs and to improve extensibility for preference pages that contain
- * a mix of preference-based and externally serialized data.
- */
-public abstract class BaseConfigurationBlock {
-
-	protected static class ControlData {
-		private Key fKey;
-		private String[] fValues;
-		
-		public ControlData(Key key, String[] values) {
-			fKey= key;
-			fValues= values;
-		}
-		
-		public Key getKey() {
-			return fKey;
-		}
-		
-		public int getSelection(String value) {
-			if (value != null) {
-				for (int i= 0; i < fValues.length; i++) {
-					if (value.equals(fValues[i])) {
-						return i;
-					}
-				}
-			}
-			return fValues.length -1; // assume the last option is the least severe
-		}
-		
-		public String getValue(boolean selection) {
-			int index= selection ? 0 : 1;
-			return fValues[index];
-		}		
-		
-		public String getValue(int index) {
-			return fValues[index];
-		}
-	}
-	
-	public static final class Key {
-		
-		private String fKey;
-		private String fQualifier;
-		
-		public Key(String qualifier, String key) {
-			fQualifier= qualifier;
-			fKey= key;
-		}
-		
-		public String getName() {
-			return fKey;
-		}
-		
-		private IEclipsePreferences getNode(IScopeContext context, IWorkingCopyManager manager) {
-			IEclipsePreferences node= context.getNode(fQualifier);
-			if (manager != null) {
-				return manager.getWorkingCopy(node);
-			}
-			return node;
-		}
-		
-		public String getQualifier() {
-			return fQualifier;
-		}
-		
-		public String getStoredValue(IScopeContext context, IWorkingCopyManager manager) {
-			return getNode(context, manager).get(fKey, null);
-		}
-		
-		public String getStoredValue(IScopeContext[] lookupOrder, boolean ignoreTopScope, IWorkingCopyManager manager) {
-			for (int i= ignoreTopScope ? 1 : 0; i < lookupOrder.length; i++) {
-				String value= getStoredValue(lookupOrder[i], manager);
-				if (value != null) {
-					return value;
-				}
-			}
-			return null;
-		}
-			
-		public void setStoredValue(IScopeContext context, String value, IWorkingCopyManager manager) {
-			if (value != null) {
-				getNode(context, manager).put(fKey, value);
-			} else {
-				getNode(context, manager).remove(fKey);
-			}
-		}
-
-		/* (non-Javadoc)
-		 * @see java.lang.Object#toString()
-		 */
-		public String toString() {
-			return fQualifier + '/' + fKey;
-		}
-
-	}
-	
-	protected class UpdateAdapter implements IDialogFieldListener {
-		
-		public void dialogFieldChanged(DialogField field) {
-			updateModel(field);
-		}
-	}
-	
-	private static final String SETTINGS_EXPANDED= "expanded"; //$NON-NLS-1$
-
-	protected final Key[] fAllKeys;
-	private boolean fOriginallyHadProjectSettings; // updated in cacheOriginalValues
-	private Map<Key, String> fDisabledProjectSettings; // null when project specific settings are turned off
-	protected IScopeContext[] fLookupOrder;
-	protected final IWorkingCopyManager fManager;
-
-	protected final ArrayList<Button> fCheckBoxes;
-	protected final ArrayList<Combo> fComboBoxes;
-	protected final ArrayList<ExpandableComposite> fExpandedComposites;
-	protected final HashMap<Scrollable, Label> fLabels;
-	protected final ArrayList<Text> fTextBoxes;
-	
-	private ModifyListener fTextModifyListener;
-	protected IStatusChangeListener fContext;
-	private SelectionListener fSelectionListener;
-	
-	protected final IProject fProject; // project or null
-	protected final AptProject fAptProject; // null for workspace prefs
-
-	private IWorkbenchPreferenceContainer fContainer;
-	private Shell fShell;
-
-	private Control fBlockControl;
-	
-	protected static Key getKey(String plugin, String name) {
-		return new Key(plugin, name);
-	}
-	
-	public BaseConfigurationBlock(IStatusChangeListener context, IProject project, Key[] keys, IWorkbenchPreferenceContainer container) {
-		fContext= context;
-		fProject= project;
-		fAllKeys= keys;
-		fContainer= container;
-		/*
-		if (container == null) {
-			fManager= new WorkingCopyManager();
-		} else {
-			fManager= container.getWorkingCopyManager();
-		}
-		*/
-		// Workaround for Bugzilla 115731 - always use our own WCM.
-		fManager = new WorkingCopyManager();
-		
-		if (fProject != null) {
-			fLookupOrder= new IScopeContext[] {
-				new ProjectScope(fProject),
-				new InstanceScope(),
-				new DefaultScope()
-			};
-			fAptProject = AptPlugin.getAptProject(JavaCore.create(fProject));
-		} else {
-			fLookupOrder= new IScopeContext[] {
-				new InstanceScope(),
-				new DefaultScope()
-			};
-			fAptProject = null;
-		}
-		
-		testIfOptionsComplete(keys);
-		if (fProject == null || hasProjectSpecificOptionsNoCache(fProject)) {
-			fDisabledProjectSettings= null;
-		} else {
-			fDisabledProjectSettings= new IdentityHashMap<Key, String>();
-			for (int i= 0; i < keys.length; i++) {
-				Key curr= keys[i];
-				fDisabledProjectSettings.put(curr, curr.getStoredValue(fLookupOrder, false, fManager));
-			}
-		}
-		
-		settingsUpdated();
-		
-		fCheckBoxes= new ArrayList<Button>();
-		fComboBoxes= new ArrayList<Combo>();
-		fTextBoxes= new ArrayList<Text>(2);
-		fLabels= new HashMap<Scrollable, Label>();
-		fExpandedComposites= new ArrayList<ExpandableComposite>();
-	}
-	
-	protected Button addCheckBox(Composite parent, String label, Key key, String[] values, int indent) {
-		ControlData data= new ControlData(key, values);
-		
-		GridData gd= new GridData(GridData.HORIZONTAL_ALIGN_FILL);
-		gd.horizontalSpan= 3;
-		gd.horizontalIndent= indent;
-		
-		Button checkBox= new Button(parent, SWT.CHECK);
-		checkBox.setFont(JFaceResources.getDialogFont());
-		checkBox.setText(label);
-		checkBox.setData(data);
-		checkBox.setLayoutData(gd);
-		checkBox.addSelectionListener(getSelectionListener());
-		
-		makeScrollableCompositeAware(checkBox);
-		
-		String currValue= getValue(key);
-		checkBox.setSelection(data.getSelection(currValue) == 0);
-		
-		fCheckBoxes.add(checkBox);
-		
-		return checkBox;
-	}
-	
-	protected Combo addComboBox(Composite parent, String label, Key key, String[] values, String[] valueLabels, int indent) {
-		GridData gd= new GridData(GridData.FILL, GridData.CENTER, true, false, 2, 1);
-		gd.horizontalIndent= indent;
-				
-		Label labelControl= new Label(parent, SWT.LEFT);
-		labelControl.setFont(JFaceResources.getDialogFont());
-		labelControl.setText(label);
-		labelControl.setLayoutData(gd);
-				
-		Combo comboBox= newComboControl(parent, key, values, valueLabels);
-		comboBox.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_FILL));
-
-		fLabels.put(comboBox, labelControl);
-		
-		return comboBox;
-	}
-	
-	protected Combo addInversedComboBox(Composite parent, String label, Key key, String[] values, String[] valueLabels, int indent) {
-		GridData gd= new GridData(GridData.HORIZONTAL_ALIGN_BEGINNING);
-		gd.horizontalIndent= indent;
-		gd.horizontalSpan= 3;
-		
-		Composite composite= new Composite(parent, SWT.NONE);
-		GridLayout layout= new GridLayout();
-		layout.marginHeight= 0;
-		layout.marginWidth= 0;
-		layout.numColumns= 2;
-		composite.setLayout(layout);
-		composite.setLayoutData(gd);
-		
-		Combo comboBox= newComboControl(composite, key, values, valueLabels);
-		comboBox.setFont(JFaceResources.getDialogFont());
-		comboBox.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_FILL));
-		
-		Label labelControl= new Label(composite, SWT.LEFT | SWT.WRAP);
-		labelControl.setText(label);
-		labelControl.setLayoutData(new GridData());
-		
-		fLabels.put(comboBox, labelControl);
-		return comboBox;
-	}
-	
-	protected Text addTextField(Composite parent, String label, Key key, int indent, int widthHint) {	
-		Label labelControl= new Label(parent, SWT.WRAP);
-		labelControl.setText(label);
-		labelControl.setFont(JFaceResources.getDialogFont());
-		labelControl.setLayoutData(new GridData());
-				
-		Text textBox= new Text(parent, SWT.BORDER | SWT.SINGLE);
-		textBox.setData(key);
-		textBox.setLayoutData(new GridData());
-		
-		makeScrollableCompositeAware(textBox);
-		
-		fLabels.put(textBox, labelControl);
-		
-		String currValue= getValue(key);	
-		if (currValue != null) {
-			textBox.setText(currValue);
-		}
-		textBox.addModifyListener(getTextModifyListener());
-
-		GridData data= new GridData(GridData.HORIZONTAL_ALIGN_FILL);
-		if (widthHint != 0) {
-			data.widthHint= widthHint;
-		}
-		data.horizontalIndent= indent;
-		data.horizontalSpan= 2;
-		textBox.setLayoutData(data);
-
-		fTextBoxes.add(textBox);
-		return textBox;
-	}	
-			
-	protected boolean checkValue(Key key, String value) {
-		return value.equals(getValue(key));
-	}
-	
-	protected void controlChanged(Widget widget) {
-		ControlData data= (ControlData) widget.getData();
-		String newValue= null;
-		if (widget instanceof Button) {
-			newValue= data.getValue(((Button)widget).getSelection());			
-		} else if (widget instanceof Combo) {
-			newValue= data.getValue(((Combo)widget).getSelectionIndex());
-		} else {
-			return;
-		}
-		String oldValue= setValue(data.getKey(), newValue);
-		validateSettings(data.getKey(), oldValue, newValue);
-	}	
-	
-	/**
-	 * Called from BasePreferencePage#createPreferenceContent.
-	 */
-	public final Control createPreferenceContent(Composite parent) {
-		fBlockControl = createContents(parent);
-		if (fBlockControl != null) {
-			cacheOriginalValues();
-			initContents();
-		}
-		return fBlockControl;
-	}
-
-	/**
-	 * Derived classes must override this in order to create
-	 * their visual content.  After this is called, initContents()
-	 * will be called.
-	 * @return a Composite representing the entire pane.
-	 */
-	protected abstract Control createContents(Composite parent);
-
-	/**
-	 * This will be called when settings are first loaded and
-	 * whenever changes are applied.
-	 * Derived classes may use this to cache the saved settings 
-	 * values, for later comparison to see if anything changed.
-	 */
-	protected void cacheOriginalValues() {
-		fOriginallyHadProjectSettings= hasProjectSpecificOptionsNoCache(fProject);
-	}
-
-	/**
-	 * This will be called exactly once during initialization, after
-	 * createContents() and cacheOriginalValues().
-	 * Derived classes may override this to initialize any fields
-	 * that are not based on a Key.
-	 */
-	protected void initContents() {
-		// Base method does nothing.
-	}
-
-	protected ExpandableComposite createStyleSection(Composite parent, String label, int nColumns) {
-		ExpandableComposite excomposite= new ExpandableComposite(parent, SWT.NONE, ExpandableComposite.TWISTIE | ExpandableComposite.CLIENT_INDENT);
-		excomposite.setText(label);
-		excomposite.setExpanded(false);
-		excomposite.setFont(JFaceResources.getFontRegistry().getBold(JFaceResources.DIALOG_FONT));
-		excomposite.setLayoutData(new GridData(GridData.FILL, GridData.FILL, true, false, nColumns, 1));
-		excomposite.addExpansionListener(new ExpansionAdapter() {
-			public void expansionStateChanged(ExpansionEvent e) {
-				expandedStateChanged((ExpandableComposite) e.getSource());
-			}
-		});
-		fExpandedComposites.add(excomposite);
-		makeScrollableCompositeAware(excomposite);
-		return excomposite;
-	}
-
-	/**
-	 * Called from BasePreferencePage#dispose().
-	 * Derived classes may override.
-	 */
-	public void dispose() {
-	}
-	
-	protected final void expandedStateChanged(ExpandableComposite expandable) {
-		ScrolledPageContent parentScrolledComposite= getParentScrolledComposite(expandable);
-		if (parentScrolledComposite != null) {
-			parentScrolledComposite.reflow(true);
-		}
-	}
-
-	protected Control findControl(Key key) {
-		Combo comboBox= getComboBox(key);
-		if (comboBox != null) {
-			return comboBox;
-		}
-		Button checkBox= getCheckBox(key);
-		if (checkBox != null) {
-			return checkBox;
-		}
-		Text text= getTextControl(key);
-		if (text != null) {
-			return text;
-		}
-		return null;
-	}
-	
-	protected boolean getBooleanValue(Key key) {
-		return Boolean.valueOf(getValue(key)).booleanValue();
-	}
-	
-	protected Button getCheckBox(Key key) {
-		for (int i= fCheckBoxes.size() - 1; i >= 0; i--) {
-			Button curr= fCheckBoxes.get(i);
-			ControlData data= (ControlData) curr.getData();
-			if (key.equals(data.getKey())) {
-				return curr;
-			}
-		}
-		return null;		
-	}
-	
-	protected Combo getComboBox(Key key) {
-		for (int i= fComboBoxes.size() - 1; i >= 0; i--) {
-			Combo curr= fComboBoxes.get(i);
-			ControlData data= (ControlData) curr.getData();
-			if (key.equals(data.getKey())) {
-				return curr;
-			}
-		}
-		return null;		
-	}
-	
-	/**
-	 * Provide the strings needed to ask the user whether to rebuild.
-	 * Derived classes can override this to change the strings, or to
-	 * return null, in which case the dialog will not be shown and the
-	 * rebuild will not be triggered.
-	 * @param workspaceSettings true if workspace settings have changed,
-	 * false if only project-specific settings have changed.
-	 * @return an array whose first entry is the dialog title, and whose 
-	 * second entry is a query asking the user whether to rebuild.
-	 */
-	protected String[] getFullBuildDialogStrings(boolean workspaceSettings) {
-		String[] strings= new String[2];
-		strings[0] = Messages.BaseConfigurationBlock_settingsChanged;
-		if (workspaceSettings) {
-			strings[1]= Messages.BaseConfigurationBlock_fullRebuildRequired;
-		}
-		else {
-			strings[1]= Messages.BaseConfigurationBlock_rebuildRequired;
-		}
-		return strings;
-	}
-	
-	protected ExpandableComposite getParentExpandableComposite(Control control) {
-		Control parent= control.getParent();
-		while (!(parent instanceof ExpandableComposite) && parent != null) {
-			parent= parent.getParent();
-		}
-		if (parent instanceof ExpandableComposite) {
-			return (ExpandableComposite) parent;
-		}
-		return null;
-	}
-	
-	protected ScrolledPageContent getParentScrolledComposite(Control control) {
-		Control parent= control.getParent();
-		while (!(parent instanceof ScrolledPageContent) && parent != null) {
-			parent= parent.getParent();
-		}
-		if (parent instanceof ScrolledPageContent) {
-			return (ScrolledPageContent) parent;
-		}
-		return null;
-	}
-	
-	protected final IWorkbenchPreferenceContainer getPreferenceContainer() {
-		return fContainer;
-	}
-	
-	protected SelectionListener getSelectionListener() {
-		if (fSelectionListener == null) {
-			fSelectionListener= new SelectionListener() {
-				public void widgetDefaultSelected(SelectionEvent e) {}
-	
-				public void widgetSelected(SelectionEvent e) {
-					controlChanged(e.widget);
-				}
-			};
-		}
-		return fSelectionListener;
-	}
-	
-	protected Shell getShell() {
-		return fShell;
-	}		
-	
-	/**
-	 * Retuens the value as actually stored in the preference store.
-	 * @param key
-	 * @return the value as actually stored in the preference store.
-	 */
-	protected String getStoredValue(Key key) {
-		return key.getStoredValue(fLookupOrder, false, fManager);
-	}
-	
-	protected Text getTextControl(Key key) {
-		for (int i= fTextBoxes.size() - 1; i >= 0; i--) {
-			Text curr= fTextBoxes.get(i);
-			ControlData data= (ControlData) curr.getData();
-			if (key.equals(data.getKey())) {
-				return curr;
-			}
-		}
-		return null;		
-	}	
-
-	protected ModifyListener getTextModifyListener() {
-		if (fTextModifyListener == null) {
-			fTextModifyListener= new ModifyListener() {
-				public void modifyText(ModifyEvent e) {
-					textChanged((Text) e.widget);
-				}
-			};
-		}
-		return fTextModifyListener;
-	}
-	
-	protected String[] getTokens(String text, String separator) {
-		StringTokenizer tok= new StringTokenizer(text, separator); //$NON-NLS-1$
-		int nTokens= tok.countTokens();
-		String[] res= new String[nTokens];
-		for (int i= 0; i < res.length; i++) {
-			res[i]= tok.nextToken().trim();
-		}
-		return res;
-	}
-	
-	protected String getValue(Key key) {
-		if (fDisabledProjectSettings != null) {
-			return fDisabledProjectSettings.get(key);
-		}
-		return key.getStoredValue(fLookupOrder, false, fManager);
-	}
-	
-	/**
-	 * TODO: this method is a workaround for Bugzilla 111144 and 106111.  When
-	 * 111144 is fixed, remove this method and call hasProjectSpecificOptions() 
-	 * instead.  The difference is that this one does not cause project prefs nodes
-	 * to be cached in the WorkingCopyManager.
-	 * @return true if the project has project-specific options.
-	 */
-	public boolean hasProjectSpecificOptionsNoCache(IProject project) {
-		if (project != null) {
-			IScopeContext projectContext= new ProjectScope(project);
-			Key[] allKeys= fAllKeys;
-			for (int i= 0; i < allKeys.length; i++) {
-				if (allKeys[i].getStoredValue(projectContext, null) != null) {
-					return true;
-				}
-			}
-		}
-		return false;
-	}
-
-	private void makeScrollableCompositeAware(Control control) {
-		ScrolledPageContent parentScrolledComposite= getParentScrolledComposite(control);
-		if (parentScrolledComposite != null) {
-			parentScrolledComposite.adaptChild(control);
-		}
-	}
-	
-	protected Combo newComboControl(Composite composite, Key key, String[] values, String[] valueLabels) {
-		ControlData data= new ControlData(key, values);
-		
-		Combo comboBox= new Combo(composite, SWT.READ_ONLY);
-		comboBox.setItems(valueLabels);
-		comboBox.setData(data);
-		comboBox.addSelectionListener(getSelectionListener());
-		comboBox.setFont(JFaceResources.getDialogFont());
-			
-		makeScrollableCompositeAware(comboBox);
-		
-		String currValue= getValue(key);	
-		comboBox.select(data.getSelection(currValue));
-		
-		fComboBoxes.add(comboBox);
-		return comboBox;
-	}
-
-	public boolean performApply() {
-		return processChanges(null); // apply directly
-	}
-	
-	
-	public void performDefaults() {
-		IScopeContext defaultScope= (fProject == null) ? new DefaultScope() : new InstanceScope();
-		for (int i= 0; i < fAllKeys.length; i++) {
-			Key curr= fAllKeys[i];
-			String defValue= curr.getStoredValue(defaultScope, null);
-			setValue(curr, defValue);
-		}
-		
-		settingsUpdated();
-		updateControls();
-		validateSettings(null, null, null);
-	}
-	
-	public boolean performOk() {
-		return processChanges(fContainer);
-	}
-	
-	/**
-	 * @since 3.1
-	 */
-	public void performRevert() {
-		for (int i= 0; i < fAllKeys.length; i++) {
-			Key curr= fAllKeys[i];
-			String origValue= curr.getStoredValue(fLookupOrder, false, null);
-			setValue(curr, origValue);
-		}
-		
-		settingsUpdated();
-		updateControls();
-		validateSettings(null, null, null);
-	}
-	
-	/**
-	 * If there are changed settings, save them and ask user whether to rebuild.
-	 * This is called by performOk() and performApply().
-	 * @param container null when called from performApply().
-	 * @return false to abort exiting the preference pane.
-	 */
-	protected boolean processChanges(IWorkbenchPreferenceContainer container) {
-		
-		boolean projectSpecificnessChanged = false;
-		boolean isProjectSpecific= (fProject != null) && fBlockControl.getEnabled();
-		if (fOriginallyHadProjectSettings ^ isProjectSpecific) {
-			// the project-specificness changed.
-			projectSpecificnessChanged= true;
-		} else if ((fProject != null) && !isProjectSpecific) {
-			// no project specific data, and there never was, and this
-			// is a project preferences pane, so nothing could have changed.
-			return true;
-		}
-
-		if (!projectSpecificnessChanged && !settingsChanged(fLookupOrder[0])) {
-			return true;
-		}
-		
-		int response= 1; // "NO" rebuild unless we put up the dialog.
-		String[] strings= getFullBuildDialogStrings(fProject == null);
-		if (strings != null) {
-			MessageDialog dialog= new MessageDialog(
-					getShell(), 
-					strings[0], 
-					null, 
-					strings[1], 
-					MessageDialog.QUESTION, 
-					new String[] { 
-						IDialogConstants.YES_LABEL, 
-						IDialogConstants.NO_LABEL, 
-						IDialogConstants.CANCEL_LABEL 
-					}, 
-					2);
-			response= dialog.open();
-		}
-		if (response == 0 || response == 1) { // "YES" or "NO" - either way, save.
-			saveSettings();
-			if (container == null) {
-				// we're doing an Apply, so update the reference values.
-				cacheOriginalValues();
-			}
-		}
-		if (response == 0) { // "YES", rebuild
-			if (container != null) {
-				// build after dialog exits
-				container.registerUpdateJob(CoreUtility.getBuildJob(fProject));
-			} else {
-				// build immediately
-				CoreUtility.getBuildJob(fProject).schedule();
-			}
-		} else if (response != 1) { // "CANCEL" - no save, no rebuild.
-			return false;
-		}
-		return true;
-	}
-
-	/**
-	 * Save dialog information to persistent storage.
-	 * Derived classes should override this if they have settings
-	 * that are managed using means other than the Key infrastructure.
-	 */
-	protected void saveSettings() {
-		try {
-			fManager.applyChanges();
-		} catch (BackingStoreException e) {
-			ExceptionHandler.log(e, "Unable to save preferences"); //$NON-NLS-1$
-		}
-	}
-
-	protected void restoreSectionExpansionStates(IDialogSettings settings) {
-		for (int i= 0; i < fExpandedComposites.size(); i++) {
-			ExpandableComposite excomposite= fExpandedComposites.get(i);
-			if (settings == null) {
-				excomposite.setExpanded(i == 0); // only expand the first node by default
-			} else {
-				excomposite.setExpanded(settings.getBoolean(SETTINGS_EXPANDED + String.valueOf(i)));
-			}
-		}
-	}
-	
-	public void selectOption(Key key) {
-		Control control= findControl(key);
-		if (control != null) {
-			if (!fExpandedComposites.isEmpty()) {
-				ExpandableComposite expandable= getParentExpandableComposite(control);
-				if (expandable != null) {
-					for (int i= 0; i < fExpandedComposites.size(); i++) {
-						ExpandableComposite curr= fExpandedComposites.get(i);
-						curr.setExpanded(curr == expandable);
-					}
-					expandedStateChanged(expandable);
-				}
-			}
-			control.setFocus();
-		}
-	}
-	
-	public void selectOption(String key, String qualifier) {
-		for (int i= 0; i < fAllKeys.length; i++) {
-			Key curr= fAllKeys[i];
-			if (curr.getName().equals(key) && curr.getQualifier().equals(qualifier)) {
-				selectOption(curr);
-			}
-		}
-	}
-	
-	protected void setComboEnabled(Key key, boolean enabled) {
-		Combo combo= getComboBox(key);
-		Label label= fLabels.get(combo);
-		combo.setEnabled(enabled);
-		label.setEnabled(enabled);
-	}
-	
-	protected void setShell(Shell shell) {
-		fShell= shell;
-	}
-	
-	/**
-	 * Checks the state of all Keys in the dialog to see whether there have been changes.
-	 * Derived classes which include settings managed outside of the Key infrastructure
-	 * should override this method, in order to check whether the additional settings have changed.
-	 * @return true if there is anything that needs to be saved.
-	 */
-	protected boolean settingsChanged(IScopeContext currContext) {
-		boolean needsBuild= false;
-		for (int i= 0; i < fAllKeys.length; i++) {
-			Key key= fAllKeys[i];
-			String oldVal= key.getStoredValue(currContext, null);
-			String val= key.getStoredValue(currContext, fManager);
-			if (val == null) {
-				if (oldVal != null) {
-					needsBuild |= !oldVal.equals(key.getStoredValue(fLookupOrder, true, fManager));
-				}
-			} else if (!val.equals(oldVal)) {
-				needsBuild |= oldVal != null || !val.equals(key.getStoredValue(fLookupOrder, true, fManager));
-			}
-		}
-		return needsBuild;
-	}
-	
-	protected void settingsUpdated() {
-	}
-	
-	protected String setValue(Key key, boolean value) {
-		return setValue(key, String.valueOf(value));
-	}
-	
-	protected String setValue(Key key, String value) {
-		if (fDisabledProjectSettings != null) {
-			return fDisabledProjectSettings.put(key, value);
-		}
-		String oldValue= getValue(key);
-		key.setStoredValue(fLookupOrder[0], value, fManager);
-		return oldValue;
-	}
-	
-	protected void storeSectionExpansionStates(IDialogSettings settings) {
-		for (int i= 0; i < fExpandedComposites.size(); i++) {
-			ExpandableComposite curr= fExpandedComposites.get(i);
-			settings.put(SETTINGS_EXPANDED + String.valueOf(i), curr.isExpanded());
-		}
-	}
-	
-	private void testIfOptionsComplete(Key[] allKeys) {
-		for (int i= 0; i < allKeys.length; i++) {
-			if (allKeys[i].getStoredValue(fLookupOrder, false, fManager) == null) {
-				JavaPlugin.logErrorMessage("preference option missing: " + allKeys[i] + " (" + this.getClass().getName() +')');  //$NON-NLS-1$//$NON-NLS-2$
-			}
-		}
-	}
-
-	protected void textChanged(Text textControl) {
-		Key key= (Key) textControl.getData();
-		String number= textControl.getText();
-		String oldValue= setValue(key, number);
-		validateSettings(key, oldValue, number);
-	}
-
-	protected void updateCheckBox(Button curr) {
-		ControlData data= (ControlData) curr.getData();
-		
-		String currValue= getValue(data.getKey());	
-		curr.setSelection(data.getSelection(currValue) == 0);						
-	}
-
-	protected void updateCombo(Combo curr) {
-		ControlData data= (ControlData) curr.getData();
-		
-		String currValue= getValue(data.getKey());	
-		curr.select(data.getSelection(currValue));					
-	}
-	
-	protected void updateControls() {
-		// update the UI
-		for (int i= fCheckBoxes.size() - 1; i >= 0; i--) {
-			updateCheckBox(fCheckBoxes.get(i));
-		}
-		for (int i= fComboBoxes.size() - 1; i >= 0; i--) {
-			updateCombo(fComboBoxes.get(i));
-		}
-		for (int i= fTextBoxes.size() - 1; i >= 0; i--) {
-			updateText(fTextBoxes.get(i));
-		}
-	}
-
-	protected abstract void updateModel(DialogField field);
-
-	protected void updateText(Text curr) {
-		Key key= (Key) curr.getData();
-		
-		String currValue= getValue(key);
-		if (currValue != null) {
-			curr.setText(currValue);
-		}
-	}
-	
-	public void useProjectSpecificSettings(boolean enable) {
-		boolean hasProjectSpecificOption= fDisabledProjectSettings == null;
-		if (enable != hasProjectSpecificOption && fProject != null) {
-			if (enable) {
-				for (int i= 0; i < fAllKeys.length; i++) {
-					Key curr= fAllKeys[i];
-					String val= fDisabledProjectSettings.get(curr);
-					curr.setStoredValue(fLookupOrder[0], val, fManager);
-				}
-				fDisabledProjectSettings= null;
-				updateControls();
-			} else {
-				fDisabledProjectSettings= new IdentityHashMap<Key, String>();
-				for (int i= 0; i < fAllKeys.length; i++) {
-					Key curr= fAllKeys[i];
-					String oldSetting= curr.getStoredValue(fLookupOrder, false, fManager);
-					fDisabledProjectSettings.put(curr, oldSetting);
-					curr.setStoredValue(fLookupOrder[0], null, fManager); // clear project settings
-				}
-			}
-		}
-	}
-
-	/* (non-javadoc)
-	 * Update fields and validate.
-	 * @param changedKey Key that changed, or null, if all changed.
-	 */	
-	protected abstract void validateSettings(Key changedKey, String oldValue, String newValue);
-}
diff --git a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/BasePreferencePage.java b/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/BasePreferencePage.java
deleted file mode 100644
index 6cebaa5..0000000
--- a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/BasePreferencePage.java
+++ /dev/null
@@ -1,119 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *   {INITIAL_AUTHOR} - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.ui.internal.preferences;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.jdt.internal.ui.preferences.PropertyAndPreferencePage;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * Base class for APT preference and property pages.
- */
-public abstract class BasePreferencePage extends PropertyAndPreferencePage {
-	private BaseConfigurationBlock fConfigurationBlock;
-
-	protected Control createPreferenceContent(Composite composite) {
-		return getConfigurationBlock().createPreferenceContent(composite);
-	}
-	
-	@Override
-	public void createControl(Composite parent) {
-		super.createControl(parent);
-		String contextId = getContextHelpId();
-		if (contextId != null) {
-			PlatformUI.getWorkbench().getHelpSystem().setHelp(getControl(), contextId);
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.dialogs.DialogPage#dispose()
-	 */
-	public void dispose() {
-		if (getConfigurationBlock() != null) {
-			getConfigurationBlock().dispose();
-		}
-		super.dispose();
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jdt.internal.ui.preferences.PropertyAndPreferencePage#enableProjectSpecificSettings(boolean)
-	 */
-	protected void enableProjectSpecificSettings(boolean useProjectSpecificSettings) {
-		if (getConfigurationBlock() != null) {
-			getConfigurationBlock().useProjectSpecificSettings(useProjectSpecificSettings);
-		}
-		super.enableProjectSpecificSettings(useProjectSpecificSettings);
-	}
-
-	protected BaseConfigurationBlock getConfigurationBlock() {
-		return fConfigurationBlock;
-	}
-	
-	/**
-	 * Derived classes should override by returning a string that refers
-	 * to a context topic entry in docs/contexts_APT.xml.  The default
-	 * implementation returns null, which causes context help to be disabled.
-	 */
-	protected String getContextHelpId() {
-		return null;
-	}
-	
-	protected boolean hasProjectSpecificOptions(IProject project) {
-		// Workaround for bug 106111 / 111144:
-		// See BaseConfigurationBlock.hasProjectSpecificOptionsNoCache() for details.
-		return getConfigurationBlock().hasProjectSpecificOptionsNoCache(project);
-	}
-	
-	/*
-	 * @see org.eclipse.jface.preference.IPreferencePage#performApply()
-	 */
-	public void performApply() {
-		if (getConfigurationBlock() != null) {
-			getConfigurationBlock().performApply();
-		}
-	}
-	
-	/*
-	 * @see org.eclipse.jface.preference.IPreferencePage#performDefaults()
-	 */
-	protected void performDefaults() {
-		super.performDefaults();
-		if (getConfigurationBlock() != null) {
-			getConfigurationBlock().performDefaults();
-		}
-	}
-	
-	/*
-	 * @see org.eclipse.jface.preference.IPreferencePage#performOk()
-	 */
-	public boolean performOk() {
-		if (getConfigurationBlock() != null && !getConfigurationBlock().performOk()) {
-			return false;
-		}	
-		return super.performOk();
-	}
-	
-	protected void setConfigurationBlock(BaseConfigurationBlock configurationBlock) {
-		fConfigurationBlock = configurationBlock;
-	}
-	
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jdt.internal.ui.preferences.PropertyAndPreferencePage#setElement(org.eclipse.core.runtime.IAdaptable)
-	 */
-	public void setElement(IAdaptable element) {
-		super.setElement(element);
-		setDescription(null); // no description for property page
-	}
-}
diff --git a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/FactoryPathConfigurationBlock.java b/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/FactoryPathConfigurationBlock.java
deleted file mode 100644
index 8ef6f27..0000000
--- a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/FactoryPathConfigurationBlock.java
+++ /dev/null
@@ -1,711 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *   wharley@bea.com - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.ui.internal.preferences;
-
-import java.util.ArrayList;
-import java.util.LinkedHashMap;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IWorkspaceRoot;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.preferences.IScopeContext;
-import org.eclipse.jdt.apt.core.internal.util.FactoryContainer;
-import org.eclipse.jdt.apt.core.internal.util.FactoryPath;
-import org.eclipse.jdt.apt.core.internal.util.FactoryPathUtil;
-import org.eclipse.jdt.apt.core.internal.util.FactoryPath.Attributes;
-import org.eclipse.jdt.apt.core.util.AptConfig;
-import org.eclipse.jdt.apt.core.util.IFactoryPath;
-import org.eclipse.jdt.apt.ui.internal.util.ExceptionHandler;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jdt.internal.ui.util.PixelConverter;
-import org.eclipse.jdt.internal.ui.wizards.IStatusChangeListener;
-import org.eclipse.jdt.internal.ui.wizards.dialogfields.CheckedListDialogField;
-import org.eclipse.jdt.internal.ui.wizards.dialogfields.DialogField;
-import org.eclipse.jdt.internal.ui.wizards.dialogfields.IDialogFieldListener;
-import org.eclipse.jdt.internal.ui.wizards.dialogfields.IListAdapter;
-import org.eclipse.jdt.internal.ui.wizards.dialogfields.LayoutUtil;
-import org.eclipse.jdt.internal.ui.wizards.dialogfields.ListDialogField;
-import org.eclipse.jdt.ui.wizards.BuildPathDialogAccess;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.viewers.CheckStateChangedEvent;
-import org.eclipse.jface.viewers.CheckboxTableViewer;
-import org.eclipse.jface.viewers.ICheckStateListener;
-import org.eclipse.jface.viewers.ITableLabelProvider;
-import org.eclipse.jface.viewers.LabelProvider;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.ui.preferences.IWorkbenchPreferenceContainer;
-
-/**
- * Data and controls for the Java Annotation Factory Path preference page.
- */
-public class FactoryPathConfigurationBlock extends BaseConfigurationBlock {
-
-	private static final int IDX_UP= 0;
-	private static final int IDX_DOWN= 1;
-	// 2
-	private static final int IDX_ADDJAR= 3;
-	private static final int IDX_ADDEXTJAR= 4;
-	private static final int IDX_ADDVAR= 5;
-	// 6
-	private static final int IDX_EDIT= 7;
-	private static final int IDX_ADVANCED= 8;
-	private static final int IDX_REMOVE= 9;
-	// 10
-	private static final int IDX_ENABLEALL= 11;
-	private static final int IDX_DISABLEALL= 12;
-
-	private final static String[] buttonLabels = { 
-		Messages.FactoryPathConfigurationBlock_up,
-		Messages.FactoryPathConfigurationBlock_down,
-		null,                    // 2
-		Messages.FactoryPathConfigurationBlock_addJars,
-		Messages.FactoryPathConfigurationBlock_addExternalJars,
-		Messages.FactoryPathConfigurationBlock_addVariable,
-		null,                    // 6
-		Messages.FactoryPathConfigurationBlock_edit,
-		Messages.FactoryPathConfigurationBlock_advanced,
-		Messages.FactoryPathConfigurationBlock_remove,
-		null,                    // 10
-		Messages.FactoryPathConfigurationBlock_enableAll,
-		Messages.FactoryPathConfigurationBlock_disableAll
-	};
-
-	/**
-	 * Event handler for factory path list control
-	 */
-	private class FactoryPathAdapter implements IListAdapter, IDialogFieldListener {
-        public void customButtonPressed(ListDialogField field, int index) {
-        	FactoryPathConfigurationBlock.this.customButtonPressed(index);
-        }
-
-        public void selectionChanged(ListDialogField field) {
-        	boolean enableRemove = canRemove();
-        	field.enableButton(IDX_REMOVE, enableRemove);
-        	boolean enableEdit = canEdit();
-        	field.enableButton(IDX_EDIT, enableEdit);
-        	boolean enableAdvanced = canAdvanced();
-        	field.enableButton(IDX_ADVANCED, enableAdvanced);
-        }
-
-        /**
-         * This method gets called when, among other things, a checkbox is
-         * clicked.  However, it doesn't get any information about which
-         * item it was whose checkbox was clicked, so it's pretty useless.
-         * Instead of maintaining the FactoryPathEntry states here, we
-         * hook into the list control's CheckboxTableViewer event listener.
-         */
-		public void dialogFieldChanged(DialogField field) {
-        }
-
-        public void doubleClicked(ListDialogField field) {
-        	if (canEdit()) {
-        		editSelectedItem();
-        	}
-        }
-	}
-	
-	private class FactoryPathLabelProvider extends LabelProvider implements ITableLabelProvider {
-
-		public Image getColumnImage(Object element, int columnIndex) {
-			return null;
-		}
-
-		public String getColumnText(Object element, int columnIndex) {
-			if (!(element instanceof FactoryPathEntry)) {
-				return ""; //$NON-NLS-1$
-			}
-			FactoryPathEntry fpe = (FactoryPathEntry)element;
-			if (columnIndex == 0) {
-				return fpe._fc.toString();
-			}
-			else {
-				return ""; //$NON-NLS-1$
-			}
-		}
-	}
-	
-	/**
-	 * The factory path is a list of containers, plus some information about
-	 * each container.  That makes it a list of FactoryPathEntry.  
-	 */
-	private static class FactoryPathEntry {
-		/* shallow copies - beware! */
-		public final FactoryContainer _fc;
-		public FactoryPath.Attributes _attr;
-		
-		// CONSTRUCTORS
-		public FactoryPathEntry(FactoryContainer fc, FactoryPath.Attributes attr) {
-			_fc = fc;
-			_attr = attr;
-		}
-
-		// CONVERSION TO/FROM INDIVIDUAL ELEMENTS
-		public static Map<FactoryContainer, Attributes> pathMapFromList(List<FactoryPathEntry> list) {
-			Map<FactoryContainer, FactoryPath.Attributes> map = 
-				new LinkedHashMap<FactoryContainer, FactoryPath.Attributes>(list.size());
-			for (FactoryPathEntry fpe : list) {
-				map.put(fpe._fc, fpe._attr);
-			}
-			return map;
-		}
-		public static List<FactoryPathEntry> pathListFromMap(Map<FactoryContainer, Attributes> map) {
-			List<FactoryPathEntry> list = new ArrayList<FactoryPathEntry>(map.size());
-			for (Map.Entry<FactoryContainer, Attributes> entry : map.entrySet()) {
-				FactoryPathEntry fpe = new FactoryPathEntry(entry.getKey(), entry.getValue());
-				list.add(fpe);
-			}
-			return list;
-		}
-
-		// SUPPORT FOR COMPARISON
-		public boolean equals(Object obj) {
-			if (!(obj instanceof FactoryPathEntry))
-				return false;
-			FactoryPathEntry fpe = (FactoryPathEntry)obj;
-			return _fc.equals(fpe._fc) && _attr.equals(fpe._attr);
-		}
-		public int hashCode() {
-			return _fc.hashCode() ^ _attr.hashCode();
-		}
-		
-	}
-	
-	private PixelConverter fPixelConverter;
-	private Composite fBlockControl; // the control representing the entire configuration block
-
-	/**
-	 * The factory path at the time this pref pane was launched.
-	 * Use this to see if anything changed at save time.
-	 */
-	private List<FactoryPathEntry> fOriginalPath;
-	
-	private final IJavaProject fJProj;
-
-	/** 
-	 * The GUI control representing the factory path.  Its data items
-	 * are of type FactoryPathEntry. 
-	 */
-	private CheckedListDialogField fFactoryPathList;
-
-	/**
-	 * @param context
-	 * @param project
-	 * @param keys
-	 * @param container
-	 */
-	public FactoryPathConfigurationBlock(IStatusChangeListener context,
-			IProject project, IWorkbenchPreferenceContainer container) {
-		super(context, project, new Key[] {}, container);
-		
-		fJProj = JavaCore.create(project);
-		
-		FactoryPathAdapter adapter= new FactoryPathAdapter();
-		FactoryPathLabelProvider labelProvider = new FactoryPathLabelProvider();
-		
-		fFactoryPathList= new CheckedListDialogField(adapter, buttonLabels, labelProvider);
-		fFactoryPathList.setDialogFieldListener(adapter);
-		fFactoryPathList.setLabelText(Messages.FactoryPathConfigurationBlock_pluginsAndJars);
-		fFactoryPathList.setUpButtonIndex(IDX_UP);
-		fFactoryPathList.setDownButtonIndex(IDX_DOWN);
-		fFactoryPathList.setRemoveButtonIndex(IDX_REMOVE);
-		fFactoryPathList.setCheckAllButtonIndex(IDX_ENABLEALL);
-		fFactoryPathList.setUncheckAllButtonIndex(IDX_DISABLEALL);		
-	}
-
-	/**
-	 * Respond to the user checking the "enabled" checkbox of an entry
-	 * in the factory path control, by replacing the FactoryPathEntry
-	 * with a new one with the correct "enabled" value.
-	 */
-	protected void doCheckStateChanged(CheckStateChangedEvent e) {
-		Object o = e.getElement();
-		if (o == null || !(o instanceof FactoryPathEntry)) {
-			return;  // shouldn't ever happen
-		}
-		FactoryPathEntry fpe = (FactoryPathEntry)o;
-		boolean isChecked = e.getChecked();
-		fpe._attr.setEnabled(isChecked);
-	}
-
-	/**
-	 * Respond to a button in the button bar.
-	 * Most buttons are handled by code in CheckedListDialogField;
-	 * this method is for the rest, e.g., Add External Jar.
-	 * @param index
-	 */
-	public void customButtonPressed(int index) {
-		FactoryPathEntry[] newEntries = null;
-		switch (index) {
-		case IDX_ADDJAR: // add jars in project
-			newEntries= openJarFileDialog(null);
-			addEntries(newEntries);
-			break;
-			
-		case IDX_ADDEXTJAR: // add external jars
-			newEntries= openExtJarFileDialog(null);
-			addEntries(newEntries);
-			break;
-			
-		case IDX_ADDVAR: // add jar from classpath variable
-			newEntries= openVariableSelectionDialog(null);
-			addEntries(newEntries);
-			break;
-			
-		case IDX_EDIT: // edit selected item
-			if (canEdit()) {
-				editSelectedItem();
-			}
-			break;
-			
-		case IDX_ADVANCED: // advanced options
-			advancedOptionsDialog();
-			break;
-		}
-		
-	}
-	
-	/**
-	 * Can't remove a selection that contains a plugin.
-	 */
-	private boolean canRemove() {
-		List<FactoryPathEntry> selected= getSelectedListContents();
-		boolean containsPlugin= false;
-		for (FactoryPathEntry fpe : selected) {
-			if (fpe._fc.getType() == FactoryContainer.FactoryType.PLUGIN) {
-				containsPlugin = true;
-				break;
-			}
-		}
-		return !containsPlugin;
-	}
-	
-	/**
-	 * Can only edit a single item at a time.  Can't edit plugins.
-	 */
-	private boolean canEdit() {
-		List<FactoryPathEntry> selected= getSelectedListContents();
-		if (selected.size() != 1) {
-			return false;
-		}
-		FactoryContainer fc = selected.get(0)._fc;
-		return (fc.getType() != FactoryContainer.FactoryType.PLUGIN);
-	}
-
-	/**
-	 * Can only launch the 'advanced' dialog on a single item at a time.
-	 */
-	private boolean canAdvanced() {
-		List<FactoryPathEntry> selected= getSelectedListContents();
-		return (selected.size() == 1);
-	}
-
-	private void addEntries(FactoryPathEntry[] entries) {
-		if (null == entries) {
-			return;
-		}
-		int insertAt;
-		List<FactoryPathEntry> selectedElements= getSelectedListContents();
-		if (selectedElements.size() == 1) {
-			insertAt= fFactoryPathList.getIndexOfElement(selectedElements.get(0)) + 1;
-		} else {
-			insertAt= fFactoryPathList.getSize();
-		}
-		for (int i = 0; i < entries.length; ++i) {
-			fFactoryPathList.addElement(entries[i], insertAt + i);
-			fFactoryPathList.setChecked(entries[i], entries[i]._attr.isEnabled());
-		}
-	}
-	
-	/**
-	 * Edit the item selected.
-	 * Precondition: exactly one item is selected in the list,
-	 * and it is an editable item (not a plugin).
-	 * @param field a listbox of FactoryContainers.
-	 */
-	private void editSelectedItem() {
-		List<FactoryPathEntry> selected= getSelectedListContents();
-		if (selected.size() != 1) {
-			return;
-		}
-		FactoryPathEntry original = selected.get(0);
-		FactoryPathEntry[] edited = null;
-		switch (original._fc.getType()) {
-		case PLUGIN:
-			return;
-		case EXTJAR:
-			edited= openExtJarFileDialog(original);
-			break;
-		case VARJAR:
-			edited= openVariableSelectionDialog(original);
-			break;
-		case WKSPJAR:
-			edited= openJarFileDialog(original);
-			break;
-		}
-		if (edited != null && edited.length > 0) {
-			fFactoryPathList.replaceElement(original, edited[0]);
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jdt.apt.ui.internal.preferences.BaseConfigurationBlock#createContents(org.eclipse.swt.widgets.Composite)
-	 */
-	protected Control createContents(Composite parent) {
-		setShell(parent.getShell());
-		
-		fPixelConverter= new PixelConverter(parent);
-		
-		fBlockControl= new Composite(parent, SWT.NONE);
-		fBlockControl.setFont(parent.getFont());
-
-		Dialog.applyDialogFont(fBlockControl);
-		
-		LayoutUtil.doDefaultLayout(fBlockControl, new DialogField[] { fFactoryPathList }, true, SWT.DEFAULT, SWT.DEFAULT);
-		LayoutUtil.setHorizontalGrabbing(fFactoryPathList.getListControl(null));
-
-		fFactoryPathList.enableButton(IDX_ADDJAR, (fJProj != null));
-		int buttonBarWidth= fPixelConverter.convertWidthInCharsToPixels(24);
-		fFactoryPathList.setButtonsMinWidth(buttonBarWidth);
-		
-		// Register a change listener on the checkboxes
-		CheckboxTableViewer tableViewer = (CheckboxTableViewer)fFactoryPathList.getTableViewer();
-		tableViewer.addCheckStateListener(new ICheckStateListener() {
-			public void checkStateChanged(CheckStateChangedEvent e) {
-				doCheckStateChanged(e);
-			}
-		});
-
-		return fBlockControl;
-	}
-	
-	@Override
-	public boolean hasProjectSpecificOptionsNoCache(IProject project) {
-		return (project == null) ? false : AptConfig.hasProjectSpecificFactoryPath(JavaCore.create(project));
-	}
-
-	@Override
-	protected void initContents() {
-		fFactoryPathList.removeAllElements();
-		for (FactoryPathEntry originalFpe : fOriginalPath) {
-			// clone, because we may later modify it and we want to compare with the original.
-			FactoryPathEntry fpe = new FactoryPathEntry(originalFpe._fc, new Attributes(originalFpe._attr));
-			fFactoryPathList.addElement(fpe);
-			fFactoryPathList.setChecked(fpe, fpe._attr.isEnabled());
-		}
-	}
-
-	/**
-	 * Save reference copies of the settings, so we can see if anything changed.
-	 * This must stay in sync with the actual saved values for the rebuild logic
-	 * to work; so be sure to call this any time you save (eg in performApply()).
-	 */
-	@Override
-	protected void cacheOriginalValues() {
-		IFactoryPath ifp = AptConfig.getFactoryPath(fJProj);
-		// we'll risk this downcast because we're such good buddies with apt.core.
-		FactoryPath fp = (FactoryPath)ifp;
-		Map<FactoryContainer, FactoryPath.Attributes> path = fp.getAllContainers();
-		fOriginalPath = FactoryPathEntry.pathListFromMap(path);
-		super.cacheOriginalValues();
-	}
-	
-	/*
-	 * Helper method to get rid of unchecked conversion warning
-	 */
-	@SuppressWarnings("unchecked") //$NON-NLS-1$
-	private List<FactoryPathEntry> getListContents() {
-		List<FactoryPathEntry> contents= fFactoryPathList.getElements();
-		return contents;
-	}
-	
-	/*
-	 * Helper method to get rid of unchecked conversion warning
-	 */
-	@SuppressWarnings("unchecked") //$NON-NLS-1$
-	private List<FactoryPathEntry> getSelectedListContents() {
-		List<FactoryPathEntry> contents= fFactoryPathList.getSelectedElements();
-		return contents;
-	}
-	
-	/**
-	 * Get all the containers of a certain type currently on the list.
-	 * The format of the returned paths will depend on the container type:
-	 * for EXTJAR it will be an absolute path; for WKSPJAR it will be a
-	 * path relative to the workspace root; for VARJAR it will be a path
-	 * whose first segment is the name of a classpath variable.
-	 * @param type may not be PLUGIN
-	 * @param ignore null, or an item to not put on the list (used when
-	 * editing an existing item).
-	 * @return an array, possibly empty (but never null)
-	 */
-	private IPath[] getExistingPaths(FactoryContainer.FactoryType type, FactoryContainer ignore) {
-		if (type == FactoryContainer.FactoryType.PLUGIN) {
-			throw new IllegalArgumentException();
-		}
-		List<FactoryPathEntry> all = getListContents();
-		// find out how many entries there are of this type
-		int countType = 0;
-		for (FactoryPathEntry fpe : all) {
-			FactoryContainer fc = fpe._fc;
-			if (fc.getType() == type && fc != ignore) {
-				++countType;
-			}
-		}
-		// create an array of paths, one per entry of this type 
-		IPath[] some = new IPath[countType];
-		int i = 0;
-		for (FactoryPathEntry fpe : all) {
-			FactoryContainer fc = fpe._fc;
-			if (fc.getType() == type && fc != ignore) {
-				some[i++] = new Path(fc.getId());
-			}
-		}
-		return some;
-	}
-	
-	/**
-	 * Launch the "advanced options" dialog, which displays the factory classes
-	 * contained by the selected container and allows the user to specify
-	 * options that are needed only in certain special cases.
-	 * 
-	 * We treat advanced options as an attribute of the factory path, not of the 
-	 * container; the same container may have different advanced options in different
-	 * projects.  We treat advanced options the same way as the "enabled" flag.
-	 */
-	private void advancedOptionsDialog() {
-		List<FactoryPathEntry> selected= getSelectedListContents();
-		if (selected.size() != 1) {
-			return;
-		}
-		FactoryPathEntry original= selected.get(0);
-		AdvancedFactoryPathOptionsDialog dialog= 
-			new AdvancedFactoryPathOptionsDialog(getShell(), original._fc, original._attr);
-		if (dialog.open() == Window.OK) {
-			original._attr = dialog.getResult();
-			// If the dialog could change the enabled attribute, we would also
-			// need to update the checkbox in the GUI here.  But it doesn't.
-		}
-	}
-
-	/**
-	 * Add or edit a project-relative jar file.  Only possible when editing
-	 * project properties; this method is disabled in workspace prefs.
-	 * @param original null, or an existing list entry to be edited
-	 * @return a list of additional factory path entries to be added
-	 */
-	private FactoryPathEntry[] openJarFileDialog(FactoryPathEntry original) {
-		if (fJProj == null) {
-			return null;
-		}
-		IWorkspaceRoot root= fJProj.getProject().getWorkspace().getRoot();
-		
-		if (original == null) {
-			IPath[] results= BuildPathDialogAccess.chooseJAREntries(getShell(), fJProj.getPath(), new IPath[0]);
-			if (results == null) {
-				return null;
-			}
-			ArrayList<FactoryPathEntry> res= new ArrayList<FactoryPathEntry>();
-			for (int i= 0; i < results.length; i++) {
-				IResource resource= root.findMember(results[i]);
-				if (resource instanceof IFile) {
-					FactoryContainer fc = FactoryPathUtil.newWkspJarFactoryContainer(results[i]);
-					// assume defaults of enabled=true, runInAptMode=false
-					FactoryPath.Attributes attr = new FactoryPath.Attributes(true, false);
-					FactoryPathEntry fpe = new FactoryPathEntry(fc, attr);
-					res.add(fpe);
-				}
-				//TODO: handle missing jars
-			}
-			return res.toArray(new FactoryPathEntry[res.size()]);
-		}
-		else {
-			IPath[] existingPaths = getExistingPaths(FactoryContainer.FactoryType.WKSPJAR, original._fc);
-			IPath result= BuildPathDialogAccess.configureJAREntry(getShell(), new Path(original._fc.getId()), existingPaths);
-			if (result == null) {
-				return null;
-			}
-			IResource resource= root.findMember(result);
-			if (resource instanceof IFile) {
-				FactoryPathEntry[] edited = new FactoryPathEntry[1];
-				FactoryContainer fc= FactoryPathUtil.newWkspJarFactoryContainer(result);
-				// Use prior value for isEnabled.  Assume default of runInAptMode=false
-				FactoryPath.Attributes attr = new FactoryPath.Attributes(original._attr.isEnabled(), false);
-				edited[0]= new FactoryPathEntry(fc, attr);
-				return edited;
-			}
-			//TODO: handle missing jars
-			return null;
- 		}
-	}
-
-	/**
-	 * Add or edit an external (not project-relative) jar file.  
-	 * @param original null, or an existing list entry to be edited
-	 * @return a list of additional factory path entries to be added
-	 */
-	private FactoryPathEntry[] openExtJarFileDialog(FactoryPathEntry original) {
-		if (original == null) {
-			IPath[] selected= BuildPathDialogAccess.chooseExternalJAREntries(getShell());
-			if (selected == null) {
-				return null;
-			}
-			ArrayList<FactoryPathEntry> res= new ArrayList<FactoryPathEntry>();
-			for (int i= 0; i < selected.length; i++) {
-				FactoryContainer fc = FactoryPathUtil.newExtJarFactoryContainer(selected[i].toFile());
-				// assume defaults of enabled=true, runInAptMode=false
-				FactoryPath.Attributes attr = new FactoryPath.Attributes(true, false);
-				FactoryPathEntry fpe = new FactoryPathEntry(fc, attr);
-				res.add(fpe);
-			}
-			return res.toArray(new FactoryPathEntry[res.size()]);
-		}
-		else {
-			IPath result= BuildPathDialogAccess.configureExternalJAREntry(getShell(), new Path(original._fc.getId()));
-			if (result == null) {
-				return null;
-			}
-			FactoryPathEntry[] edited= new FactoryPathEntry[1];
-			FactoryContainer fc= FactoryPathUtil.newExtJarFactoryContainer(result.toFile());
-			// Use prior value for isEnabled.  Assume default of runInAptMode=false
-			FactoryPath.Attributes attr = new FactoryPath.Attributes(original._attr.isEnabled(), false);
-			edited[0]= new FactoryPathEntry(fc, attr);
-			return edited;
-		}
-	}
-	
-	/**
-	 * Add or edit an external (not project-relative) jar file whose
-	 * location includes a classpath variable name.  
-	 * @param original null, or an existing list entry to be edited
-	 * @return a list of additional factory path entries to be added
-	 */
-	private FactoryPathEntry[] openVariableSelectionDialog(FactoryPathEntry original) {
-		if (original == null) {
-			IPath[] selected= BuildPathDialogAccess.chooseVariableEntries(getShell(), new IPath[0]);
-			if (selected == null) {
-				return null;
-			}
-			ArrayList<FactoryPathEntry> res= new ArrayList<FactoryPathEntry>();
-			for (int i= 0; i < selected.length; i++) {
-				FactoryContainer fc= FactoryPathUtil.newVarJarFactoryContainer(selected[i]);
-				// assume defaults of enabled=true, runInAptMode=false
-				FactoryPath.Attributes attr = new FactoryPath.Attributes(true, false);
-				FactoryPathEntry fpe = new FactoryPathEntry(fc, attr);
-				res.add(fpe);
-			}
-			return res.toArray(new FactoryPathEntry[res.size()]);
-		}
-		else {
-			IPath[] existingPaths = getExistingPaths(FactoryContainer.FactoryType.VARJAR, original._fc);
-			IPath result= BuildPathDialogAccess.configureVariableEntry(getShell(), new Path(original._fc.getId()), existingPaths);
-			if (result == null) {
-				return null;
-			}
-			FactoryPathEntry[] edited= new FactoryPathEntry[1];
-			FactoryContainer fc= FactoryPathUtil.newVarJarFactoryContainer(result);
-			// Use prior value for isEnabled.  Assume default of runInAptMode=false
-			FactoryPath.Attributes attr = new FactoryPath.Attributes(original._attr.isEnabled(), false);
-			edited[0]= new FactoryPathEntry(fc, attr);
-			return edited;
-		}
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jdt.apt.ui.internal.preferences.BaseConfigurationBlock#updateModel(org.eclipse.jdt.internal.ui.wizards.dialogfields.DialogField)
-	 */
-	protected void updateModel(DialogField field) {
-		// We don't use IEclipsePreferences for this pane, so no need to do anything.
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jdt.apt.ui.internal.preferences.BaseConfigurationBlock#validateSettings(org.eclipse.jdt.internal.ui.preferences.OptionsConfigurationBlock.Key, java.lang.String, java.lang.String)
-	 */
-	protected void validateSettings(Key changedKey, String oldValue, String newValue) {
-		// TODO: validate that all the specified factory containers exist?
-	}
-	
-	protected void saveSettings() {
-		FactoryPath fp;
-		if ((fJProj != null) && !fBlockControl.isEnabled()) {
-			// We're in a project properties pane but the entire configuration 
-			// block control is disabled.  That means the per-project settings checkbox 
-			// is unchecked.  To save that state, we'll delete the settings file.
-			fp = null;
-		}
-		else {
-			List<FactoryPathEntry> containers;
-			Map<FactoryContainer, FactoryPath.Attributes> map;
-			containers = getListContents();
-			map = FactoryPathEntry.pathMapFromList(containers);
-			fp = new FactoryPath();
-			fp.setContainers(map);
-		}
-		
-		try {
-			AptConfig.setFactoryPath(fJProj, fp);
-		}
-		catch (CoreException e) {
-			final String title = Messages.FactoryPathConfigurationBlock_unableToSaveFactorypath_title;
-			final String message = Messages.FactoryPathConfigurationBlock_unableToSaveFactorypath_message;
-			ExceptionHandler.handle(e, fBlockControl.getShell(), title, message);
-		}
-		
-		super.saveSettings();
-	}
-	
-	/**
-	 * If per-project, restore list contents to current workspace settings;
-	 * the per-project settings checkbox will be cleared for us automatically.
-	 * If workspace, restore list contents to factory-default settings.
-	 */
-	public void performDefaults() {
-		IFactoryPath ifp = AptConfig.getDefaultFactoryPath(fJProj);
-		// we'll risk this downcast because we're such good buddies with apt.core.
-		FactoryPath fp = (FactoryPath)ifp;
-		Map<FactoryContainer, FactoryPath.Attributes> map = fp.getAllContainers();
-		List<FactoryPathEntry> defaults = FactoryPathEntry.pathListFromMap(map);
-		fFactoryPathList.removeAllElements();
-		for (FactoryPathEntry fpe : defaults) {
-			fFactoryPathList.addElement(fpe);
-			fFactoryPathList.setChecked(fpe, fpe._attr.isEnabled());
-		}
-		super.performDefaults();
-	}
-	
-	/**
-	 * @return true if settings or project-specificness changed since
-	 * the pane was launched - that is, if there is anything to save.
-	 */
-	@Override
-	protected boolean settingsChanged(IScopeContext currContext) {
-		if (fOriginalPath == null) {
-			// shouldn't happen, but just in case it does, consider it a change.
-			return true;
-		}
-		// Is the new path the same size, containing the same items
-		// in the same order?  We rely on FactoryPathEntry.equals() here.
-		List<FactoryPathEntry> newPath = getListContents();
-		return !fOriginalPath.equals(newPath);
-	}
-	
-}
diff --git a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/FactoryPathPreferencePage.java b/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/FactoryPathPreferencePage.java
deleted file mode 100644
index 2fa3ab2..0000000
--- a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/FactoryPathPreferencePage.java
+++ /dev/null
@@ -1,67 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *   {INITIAL_AUTHOR} - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.ui.internal.preferences;
-
-import org.eclipse.jdt.apt.ui.AptUIPlugin;
-import org.eclipse.jdt.apt.ui.internal.util.IAptHelpContextIds;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.ui.preferences.IWorkbenchPreferenceContainer;
-
-/**
- * 
- */
-public class FactoryPathPreferencePage extends BasePreferencePage {
-
-	private static final String PREF_ID= "org.eclipse.jdt.apt.ui.preferences.factoryPathPreferences"; //$NON-NLS-1$
-	private static final String PROP_ID= "org.eclipse.jdt.apt.ui.propertyPages.factoryPathPreferences"; //$NON-NLS-1$
-
-	/**
-	 * 
-	 */
-	public FactoryPathPreferencePage() {
-		setPreferenceStore(AptUIPlugin.getDefault().getPreferenceStore());
-		//setDescription(Messages.FactoryPathPreferencePage_factoryPath);
-		
-		// only used when page is shown programatically
-		setTitle(Messages.FactoryPathPreferencePage_preferences);
-	}
-
-	/*
-	 * @see org.eclipse.jface.dialogs.IDialogPage#createControl(org.eclipse.swt.widgets.Composite)
-	 */
-	public void createControl(Composite parent) {
-		IWorkbenchPreferenceContainer container= (IWorkbenchPreferenceContainer) getContainer();
-		setConfigurationBlock(new FactoryPathConfigurationBlock(getNewStatusChangedListener(), getProject(), container));
-		
-		super.createControl(parent);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jdt.internal.ui.preferences.PropertyAndPreferencePage#getPreferencePageID()
-	 */
-	protected String getPreferencePageID() {
-		return PREF_ID;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jdt.internal.ui.preferences.PropertyAndPreferencePage#getPropertyPageID()
-	 */
-	protected String getPropertyPageID() {
-		return PROP_ID;
-	}
-
-	@Override
-	protected String getContextHelpId() {
-		return IAptHelpContextIds.FACTORYPATH_PREFERENCE_PAGE;
-	}
-
-}
diff --git a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/Messages.java b/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/Messages.java
deleted file mode 100644
index 8fa73c3..0000000
--- a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/Messages.java
+++ /dev/null
@@ -1,110 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    jgarms@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-package org.eclipse.jdt.apt.ui.internal.preferences;
-
-import org.eclipse.osgi.util.NLS;
-
-public class Messages extends NLS {
-	private static final String BUNDLE_NAME = "org.eclipse.jdt.apt.ui.internal.preferences.messages"; //$NON-NLS-1$
-
-	private Messages() {
-	}
-
-	static {
-		// initialize resource bundle
-		NLS.initializeMessages(BUNDLE_NAME, Messages.class);
-	}
-
-	public static String AptConfigurationBlock_enable;
-
-	public static String AptConfigurationBlock_generatedSrcDir;
-
-	public static String AptConfigurationBlock_options;
-
-	public static String FactoryPathConfigurationBlock_up;
-
-	public static String FactoryPathConfigurationBlock_down;
-
-	public static String FactoryPathConfigurationBlock_addJars;
-
-	public static String FactoryPathConfigurationBlock_addExternalJars;
-
-	public static String FactoryPathConfigurationBlock_addVariable;
-
-	public static String FactoryPathConfigurationBlock_remove;
-
-	public static String FactoryPathConfigurationBlock_enableAll;
-
-	public static String FactoryPathConfigurationBlock_disableAll;
-
-	public static String FactoryPathConfigurationBlock_pluginsAndJars;
-
-	public static String FactoryPathPreferencePage_factoryPath;
-
-	public static String FactoryPathPreferencePage_preferences;
-
-	public static String AptPreferencePage_preferences;
-
-	public static String AptPreferencePage_preferencesTitle;
-
-	public static String BaseConfigurationBlock_settingsChanged;
-
-	public static String BaseConfigurationBlock_fullRebuildRequired;
-
-	public static String BaseConfigurationBlock_rebuildRequired;
-
-	public static String AptConfigurationBlock_classpathAddedAutomaticallyNote;
-
-	public static String AptConfigurationBlock_warningIgnoredOptions;
-
-	public static String FactoryPathConfigurationBlock_unableToSaveFactorypath_title;
-
-	public static String FactoryPathConfigurationBlock_unableToSaveFactorypath_message;
-
-	public static String FactoryPathConfigurationBlock_edit;
-
-	public static String AptConfigurationBlock_add;
-
-	public static String AptConfigurationBlock_edit;
-
-	public static String AptConfigurationBlock_remove;
-
-	public static String AptConfigurationBlock_key;
-
-	public static String AptConfigurationBlock_value;
-
-	public static String ProcessorOptionInputDialog_newProcessorOption;
-
-	public static String ProcessorOptionInputDialog_editProcessorOption;
-
-	public static String ProcessorOptionInputDialog_key;
-
-	public static String ProcessorOptionInputDialog_value;
-
-	public static String ProcessorOptionInputDialog_emptyKey;
-
-	public static String ProcessorOptionInputDialog_keyAlreadyInUse;
-
-	public static String ProcessorOptionInputDialog_equalsSignNotValid;
-
-	public static String AptConfigurationBlock_genSrcDirMustBeValidRelativePath;
-
-	public static String FactoryPathConfigurationBlock_advanced;
-
-	public static String AdvancedFactoryPathOptionsDialog_advancedOptions;
-
-	public static String AdvancedFactoryPathOptionsDialog_batchMode;
-
-	public static String AdvancedFactoryPathOptionsDialog_label_processorsInThisContainer;
-
-	public static String AptConfigurationBlock_warningContentsMayBeDeleted;
-}
diff --git a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/ProcessorOptionInputDialog.java b/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/ProcessorOptionInputDialog.java
deleted file mode 100644
index 0003045..0000000
--- a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/ProcessorOptionInputDialog.java
+++ /dev/null
@@ -1,135 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *   wharley@bea.com - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.ui.internal.preferences;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jdt.apt.core.util.AptConfig;
-import org.eclipse.jdt.apt.ui.internal.preferences.AptConfigurationBlock.ProcessorOption;
-import org.eclipse.jdt.apt.ui.internal.util.IAptHelpContextIds;
-import org.eclipse.jdt.internal.ui.dialogs.StatusInfo;
-import org.eclipse.jdt.internal.ui.wizards.dialogfields.DialogField;
-import org.eclipse.jdt.internal.ui.wizards.dialogfields.IDialogFieldListener;
-import org.eclipse.jdt.internal.ui.wizards.dialogfields.LayoutUtil;
-import org.eclipse.jdt.internal.ui.wizards.dialogfields.StringDialogField;
-import org.eclipse.jface.dialogs.StatusDialog;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * Dialog to edit or add an APT processor option
- */
-public class ProcessorOptionInputDialog extends StatusDialog {
-	
-	private class FieldAdapter implements IDialogFieldListener {
-		public void dialogFieldChanged(DialogField field) {
-			doValidation();
-		}			
-	}
-	
-	private StringDialogField fKeyField;
-	private StringDialogField fValueField;
-	
-	private List<String> fExistingNames;
-		
-	public ProcessorOptionInputDialog(Shell parent, ProcessorOption option, List<ProcessorOption> existingEntries) {
-		super(parent);
-		
-		fExistingNames= new ArrayList<String>(existingEntries.size());
-		for (ProcessorOption o : existingEntries) {
-			if (!o.equals(option)) {
-				fExistingNames.add(o.key);
-			}
-		}
-		
-		if (option == null) {
-			setTitle(Messages.ProcessorOptionInputDialog_newProcessorOption); 
-		} else {
-			setTitle(Messages.ProcessorOptionInputDialog_editProcessorOption); 
-		}
-
-		FieldAdapter adapter= new FieldAdapter();
-
-		fKeyField= new StringDialogField();
-		fKeyField.setLabelText(Messages.ProcessorOptionInputDialog_key); 
-		fKeyField.setDialogFieldListener(adapter);
-		
-		fValueField= new StringDialogField();
-		fValueField.setLabelText(Messages.ProcessorOptionInputDialog_value); 
-		fValueField.setDialogFieldListener(adapter);
-		
-		fKeyField.setText((option != null) ? option.key : ""); //$NON-NLS-1$
-		fValueField.setText((option != null) ? option.value : ""); //$NON-NLS-1$
-	}
-	
-	public ProcessorOption getResult() {
-		ProcessorOption option = new ProcessorOption();
-		option.key= fKeyField.getText().trim();
-		option.value= fValueField.getText().trim();
-		
-		return option;
-	}
-	
-	protected Control createDialogArea(Composite parent) {
-		Composite composite= (Composite) super.createDialogArea(parent);
-		
-		Composite inner= new Composite(composite, SWT.NONE);
-		GridLayout layout= new GridLayout();
-		layout.marginHeight= 0;
-		layout.marginWidth= 0;
-		layout.numColumns= 2;
-		inner.setLayout(layout);
-		
-		fKeyField.doFillIntoGrid(inner, 2);
-		fValueField.doFillIntoGrid(inner, 2);
-		
-		LayoutUtil.setHorizontalGrabbing(fKeyField.getTextControl(null));
-		LayoutUtil.setWidthHint(fKeyField.getTextControl(null), convertWidthInCharsToPixels(50));
-		LayoutUtil.setHorizontalGrabbing(fValueField.getTextControl(null));
-		LayoutUtil.setWidthHint(fValueField.getTextControl(null), convertWidthInCharsToPixels(50));
-		
-		fKeyField.postSetFocusOnDialogField(parent.getDisplay());
-		
-		applyDialogFont(composite);		
-		return composite;
-	}
-		
-	private void doValidation() {
-		StatusInfo status= new StatusInfo();
-		String newKey= fKeyField.getText();
-		String newVal= fValueField.getText();
-		// TODO: thorough validation of both key and value
-		if (newKey.length() == 0) {
-			status.setError(Messages.ProcessorOptionInputDialog_emptyKey); 
-		} else if (fExistingNames.contains(newKey)) {
-			status.setError(Messages.ProcessorOptionInputDialog_keyAlreadyInUse);
-		} else if (newVal.indexOf('=') >= 0) {
-			status.setError(Messages.ProcessorOptionInputDialog_equalsSignNotValid);
-		} else if (AptConfig.isAutomaticProcessorOption(newKey)) {
-			status.setWarning(Messages.AptConfigurationBlock_warningIgnoredOptions); //$NON-NLS-1$
-		}
-		updateStatus(status);
-	}
-
-	/*
-	 * @see org.eclipse.jface.window.Window#configureShell(Shell)
-	 */
-	protected void configureShell(Shell newShell) {
-		super.configureShell(newShell);
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(newShell, IAptHelpContextIds.PROCESSOR_OPTION_INPUT_DIALOG);
-	}
-}
diff --git a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/messages.properties b/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/messages.properties
deleted file mode 100644
index 7bf1841..0000000
--- a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/messages.properties
+++ /dev/null
@@ -1,42 +0,0 @@
-AptConfigurationBlock_enable=Enable annotation processing
-AptConfigurationBlock_add=Add...
-AptConfigurationBlock_key=Key
-AptConfigurationBlock_edit=Edit...
-AptConfigurationBlock_remove=Remove
-AptConfigurationBlock_value=Value
-AptConfigurationBlock_generatedSrcDir=Generated source directory:
-AptConfigurationBlock_warningIgnoredOptions=An automatically set option will override this option
-AptConfigurationBlock_warningContentsMayBeDeleted=Contents of generated source directory may be deleted
-AptConfigurationBlock_classpathAddedAutomaticallyNote=Note: options such as \"-classpath\" and \"-sourcepath\" are automatically passed to all processors, with values corresponding to the project's Java settings.
-AptConfigurationBlock_genSrcDirMustBeValidRelativePath=Generated source directory must be a valid relative path
-AptConfigurationBlock_options=Processor options (-Akey=value):
-AptPreferencePage_preferences=Specify the default annotation processor settings for new projects:
-FactoryPathConfigurationBlock_up=Up
-FactoryPathConfigurationBlock_down=Down
-FactoryPathConfigurationBlock_edit=Edit...
-FactoryPathConfigurationBlock_addJars=Add JARs...
-FactoryPathConfigurationBlock_advanced=Advanced...
-FactoryPathPreferencePage_factoryPath=Java annotation processor factory path:
-FactoryPathPreferencePage_preferences=Factory Path Preferences
-FactoryPathConfigurationBlock_addExternalJars=Add External JARs...
-FactoryPathConfigurationBlock_unableToSaveFactorypath_title=Save Factory Path
-FactoryPathConfigurationBlock_unableToSaveFactorypath_message=Unable to save factory path.
-FactoryPathConfigurationBlock_addVariable=Add Variable...
-FactoryPathConfigurationBlock_remove=Remove
-FactoryPathConfigurationBlock_enableAll=Enable All
-FactoryPathConfigurationBlock_disableAll=Disable All
-FactoryPathConfigurationBlock_pluginsAndJars=Plug-ins and JARs that contain annotation processors:
-AptPreferencePage_preferencesTitle=Java Annotation Processing Preferences
-BaseConfigurationBlock_settingsChanged=Annotation Processing Settings Changed
-BaseConfigurationBlock_fullRebuildRequired=The annotation processing settings have changed. A full rebuild is required for changes to take effect. Do the full build now?
-BaseConfigurationBlock_rebuildRequired=The annotation processing settings have changed. A rebuild of the project is required for changes to take effect. Do the project build now?
-ProcessorOptionInputDialog_newProcessorOption=New Processor Option
-ProcessorOptionInputDialog_keyAlreadyInUse=That key is already in use
-ProcessorOptionInputDialog_editProcessorOption=Edit Processor Option
-ProcessorOptionInputDialog_equalsSignNotValid=The equals sign is not a valid character
-ProcessorOptionInputDialog_key=Key:
-ProcessorOptionInputDialog_value=Value:
-ProcessorOptionInputDialog_emptyKey=Please enter a key
-AdvancedFactoryPathOptionsDialog_advancedOptions=Advanced Options
-AdvancedFactoryPathOptionsDialog_label_processorsInThisContainer=Processors in this container:
-AdvancedFactoryPathOptionsDialog_batchMode=Run this container's processors in batch mode
diff --git a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/quickfix/APTQuickFixProcessor.java b/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/quickfix/APTQuickFixProcessor.java
deleted file mode 100644
index 76d452c..0000000
--- a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/quickfix/APTQuickFixProcessor.java
+++ /dev/null
@@ -1,177 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    dsomerfi@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-package org.eclipse.jdt.apt.ui.internal.quickfix;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtension;
-import org.eclipse.core.runtime.IExtensionPoint;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.jdt.apt.core.util.EclipseMessager;
-import org.eclipse.jdt.apt.ui.AptUIPlugin;
-import org.eclipse.jdt.apt.ui.quickfix.IAPTQuickFixProvider;
-import org.eclipse.jdt.core.ICompilationUnit;
-import org.eclipse.jdt.ui.text.java.IInvocationContext;
-import org.eclipse.jdt.ui.text.java.IJavaCompletionProposal;
-import org.eclipse.jdt.ui.text.java.IProblemLocation;
-import org.eclipse.jdt.ui.text.java.IQuickFixProcessor;
-
-public class APTQuickFixProcessor implements IQuickFixProcessor {
-
-    private ListMap<String, IAPTQuickFixProvider> fFixProviders = new ListMap<String, IAPTQuickFixProvider>();
-    
-    public boolean hasCorrections(ICompilationUnit unit, int problemId) {
-        return problemId == EclipseMessager.APT_QUICK_FIX_PROBLEM_ID;
-    }
-    
-    public APTQuickFixProcessor()
-    {
-        loadProviders();      
-    }
-
-    public IJavaCompletionProposal[] getCorrections(IInvocationContext context, IProblemLocation[] locations) throws CoreException {
-        
-        List<IJavaCompletionProposal> proposals = new ArrayList<IJavaCompletionProposal>();
-        
-        //Map from error-code to IProblemLocation
-        //TODO: creating a second map by plugin id is a little wasteful since
-        //we don't check if there is anyone who cares about this. This could be 
-        //combined into one data structure.
-        ListMap<String, IProblemLocation> locationMapByErrorCode = new ListMap<String, IProblemLocation>();
-        ListMap<String, IProblemLocation> locationMapByPluginId = new ListMap<String, IProblemLocation>();
-        for (IProblemLocation location : locations)
-        {
-            
-            if (location.getProblemId() == EclipseMessager.APT_QUICK_FIX_PROBLEM_ID)
-            {
-                String [] arguments = location.getProblemArguments();
-                assert arguments.length >= 2;
-                String pluginID = arguments[0];
-                String errorCode = pluginID + "." + arguments[1]; //$NON-NLS-1$
-                
-                locationMapByErrorCode.put(errorCode, location);
-                locationMapByPluginId.put(errorCode, location);
-            }
-        }
-        
-        //Do the errorcode-based dispatch
-        for (String errorCode : locationMapByErrorCode.keySet())
-        {
-            List<IProblemLocation> sortedLocations = locationMapByErrorCode.get(errorCode);
-            addProposalsFromProviders(errorCode, context, sortedLocations, proposals);                       
-        }
-        
-        //Do the plugin id-based dispatch
-        for (String pluginId : locationMapByPluginId.keySet())
-        {
-            List<IProblemLocation> sortedLocations = locationMapByPluginId.get(pluginId);
-            addProposalsFromProviders(pluginId + "." + "*", context, sortedLocations, proposals);  //$NON-NLS-1$//$NON-NLS-2$
-        }
-        
-        return proposals.toArray(new IJavaCompletionProposal[proposals.size()]);
-    }
-    
-    private void addProposalsFromProviders(String key, IInvocationContext context, 
-            List<IProblemLocation> sortedLocations, List<IJavaCompletionProposal> proposals ) throws CoreException
-    {
-        List<IAPTQuickFixProvider> providers = fFixProviders.get(key); //$NON-NLS-2$
-        for (IAPTQuickFixProvider fix : providers)
-        {
-            IJavaCompletionProposal [] fixProposals = fix.getProposals(context, 
-                    sortedLocations.toArray(new IProblemLocation[sortedLocations.size()]));
-            for (IJavaCompletionProposal fixProposal : fixProposals)
-            {
-                proposals.add(fixProposal);
-            }
-        }          
-    }
-    
-
-    public void addQuickFixProvider(String pluginID, String errorCode, IAPTQuickFixProvider fix)
-    {
-        fFixProviders.put(pluginID + "." + errorCode, fix); //$NON-NLS-1$
-    }
-    
-    /**
-     * Load the providers that are defined in the extension point
-     *
-     */
-    private void loadProviders()
-    {
-        IExtensionPoint extensionPoint = Platform.getExtensionRegistry().getExtensionPoint(AptUIPlugin.PLUGIN_ID, "aptQuickFixProvider"); //$NON-NLS-1$
-        for (IExtension extension : extensionPoint.getExtensions())
-        {
-            for (IConfigurationElement providerConfig : extension.getConfigurationElements())
-            {
-                if ("quickFixProvider".equals(providerConfig.getName())) //$NON-NLS-1$
-                {
-                    String pluginId = providerConfig.getAttribute("pluginId"); //$NON-NLS-1$
-                    String errorCode = providerConfig.getAttribute("errorCode"); //$NON-NLS-1$
-                    try {
-                        Object object = providerConfig.createExecutableExtension("className"); //$NON-NLS-1$
-                        if (object instanceof IAPTQuickFixProvider)
-                        {
-                            IAPTQuickFixProvider provider = (IAPTQuickFixProvider) object;
-                            addQuickFixProvider(pluginId, errorCode != null ? errorCode : "*", provider); //$NON-NLS-1$
-                            
-                        }
-                        else
-                        {
-                            AptUIPlugin.log(new Status(IStatus.ERROR, AptUIPlugin.PLUGIN_ID, 1, Messages.APTQuickFixProcessor_classMustBeIAPTQuickFixProvider, null));
-                        }
-                    } catch (CoreException e) {
-                        AptUIPlugin.log(e);
-                    }
-                }
-            }
-        }
-    }
-
-    private class ListMap<K, V>
-    {   
-        
-        private Map<K, List<V>> fData = new HashMap<K, List<V>>();
-        
-        public void put(K key, V value)
-        {
-            List<V> list = fData.get(key);
-            if (list == null)
-            {
-                list = new ArrayList<V>();
-                fData.put(key, list);
-            }
-            list.add(value);
-        }
-       
-        public List<V> get(K key)
-        {
-            List<V> list = fData.get(key);
-            return list != null ? list : Collections.<V>emptyList();
-        } 
-        
-        public Set<K> keySet()
-        {
-            return fData.keySet();
-        }
-        
-    }
-
-}
diff --git a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/quickfix/Messages.java b/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/quickfix/Messages.java
deleted file mode 100644
index c0cf3d2..0000000
--- a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/quickfix/Messages.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    jgarms@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-package org.eclipse.jdt.apt.ui.internal.quickfix;
-
-import org.eclipse.osgi.util.NLS;
-
-public class Messages extends NLS {
-	private static final String BUNDLE_NAME = "org.eclipse.jdt.apt.ui.internal.quickfix.messages"; //$NON-NLS-1$
-
-	private Messages() {
-	}
-
-	static {
-		// initialize resource bundle
-		NLS.initializeMessages(BUNDLE_NAME, Messages.class);
-	}
-
-	public static String APTQuickFixProcessor_classMustBeIAPTQuickFixProvider;
-}
diff --git a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/quickfix/messages.properties b/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/quickfix/messages.properties
deleted file mode 100644
index 441901d..0000000
--- a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/quickfix/messages.properties
+++ /dev/null
@@ -1 +0,0 @@
-APTQuickFixProcessor_classMustBeIAPTQuickFixProvider=The className must be the name of a subclass of IAPTQuickFixProvider
diff --git a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/util/ExceptionHandler.java b/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/util/ExceptionHandler.java
deleted file mode 100644
index c046bcc..0000000
--- a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/util/ExceptionHandler.java
+++ /dev/null
@@ -1,134 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation, BEA Systems, Inc., and others
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *   wharley@bea.com - based on org.eclipse.jdt.internal.ui.util.ExceptionHandler
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.ui.internal.util;
-
-import java.io.StringWriter;
-import java.lang.reflect.InvocationTargetException;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.jdt.apt.ui.AptUIPlugin;
-import org.eclipse.jface.dialogs.ErrorDialog;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.swt.widgets.Shell;
-
-/**
- * This code is 
- * The default exception handler shows an error dialog when one of its handle methods
- * is called. If the passed exception is a <code>CoreException</code> an error dialog
- * pops up showing the exception's status information. For a <code>InvocationTargetException</code>
- * a normal message dialog pops up showing the exception's message. Additionally the exception
- * is written to the platform log.
- */
-public class ExceptionHandler {
-
-	private static ExceptionHandler fgInstance= new ExceptionHandler();
-	
-	/**
-	 * Logs the given exception using the platform's logging mechanism. The exception is
-	 * logged as an error with the error code <code>AptUIPlugin.INTERNAL_ERROR</code>.
-	 */
-	public static void log(Throwable t, String message) {
-		AptUIPlugin.log(new Status(IStatus.ERROR, AptUIPlugin.PLUGIN_ID, 
-			AptUIPlugin.INTERNAL_ERROR, message, t));
-	}
-	
-	/**
-	 * Handles the given <code>CoreException</code>. The workbench shell is used as a parent
-	 * for the dialog window.
-	 * 
-	 * @param e the <code>CoreException</code> to be handled
-	 * @param title the dialog window's window title
-	 * @param message message to be displayed by the dialog window
-	 */
-	public static void handle(CoreException e, String title, String message) {
-		handle(e, AptUIPlugin.getActiveWorkbenchShell(), title, message);
-	}
-	
-	/**
-	 * Handles the given <code>CoreException</code>. 
-	 * 
-	 * @param e the <code>CoreException</code> to be handled
-	 * @param parent the dialog window's parent shell
-	 * @param title the dialog window's window title
-	 * @param message message to be displayed by the dialog window
-	 */
-	public static void handle(CoreException e, Shell parent, String title, String message) {
-		fgInstance.perform(e, parent, title, message);
-	}
-	
-	/**
-	 * Handles the given <code>InvocationTargetException</code>. The workbench shell is used 
-	 * as a parent for the dialog window.
-	 * 
-	 * @param e the <code>InvocationTargetException</code> to be handled
-	 * @param title the dialog window's window title
-	 * @param message message to be displayed by the dialog window
-	 */
-	public static void handle(InvocationTargetException e, String title, String message) {
-		handle(e, AptUIPlugin.getActiveWorkbenchShell(), title, message);
-	}
-	
-	/**
-	 * Handles the given <code>InvocationTargetException</code>. 
-	 * 
-	 * @param e the <code>InvocationTargetException</code> to be handled
-	 * @param parent the dialog window's parent shell
-	 * @param title the dialog window's window title
-	 * @param message message to be displayed by the dialog window
-	 */
-	public static void handle(InvocationTargetException e, Shell parent, String title, String message) {
-		fgInstance.perform(e, parent, title, message);
-	}
-
-	//---- Hooks for subclasses to control exception handling ------------------------------------
-	
-	protected void perform(CoreException e, Shell shell, String title, String message) {
-		AptUIPlugin.log(e);
-		IStatus status= e.getStatus();
-		if (status != null) {
-			ErrorDialog.openError(shell, title, message, status);
-		} else {
-			displayMessageDialog(e, e.getMessage(), shell, title, message);
-		}
-	}
-
-	protected void perform(InvocationTargetException e, Shell shell, String title, String message) {
-		Throwable target= e.getTargetException();
-		if (target instanceof CoreException) {
-			perform((CoreException)target, shell, title, message);
-		} else {
-			AptUIPlugin.log(e);
-			if (e.getMessage() != null && e.getMessage().length() > 0) {
-				displayMessageDialog(e, e.getMessage(), shell, title, message);
-			} else {
-				displayMessageDialog(e, target.getMessage(), shell, title, message);
-			}
-		}
-	}
-
-	//---- Helper methods -----------------------------------------------------------------------
-	
-	private void displayMessageDialog(Throwable t, String exceptionMessage, Shell shell, String title, String message) {
-		StringWriter msg= new StringWriter();
-		if (message != null) {
-			msg.write(message);
-			msg.write("\n\n"); //$NON-NLS-1$
-		}
-		if (exceptionMessage == null || exceptionMessage.length() == 0)
-			msg.write(Messages.ExceptionHandler_seeErrorLog); 
-		else
-			msg.write(exceptionMessage);
-		MessageDialog.openError(shell, title, msg.toString());			
-	}	
-}
diff --git a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/util/IAptHelpContextIds.java b/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/util/IAptHelpContextIds.java
deleted file mode 100644
index 4a91465..0000000
--- a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/util/IAptHelpContextIds.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *   wharley@bea.com - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.ui.internal.util;
-
-import org.eclipse.jdt.apt.ui.AptUIPlugin;
-
-/**
- * Help context ids for the Java annotation processing UI.
- * <p>
- * This interface contains constants only; it is not intended to be implemented
- * or extended.
- */
-public interface IAptHelpContextIds {
-	public static final String PREFIX= AptUIPlugin.PLUGIN_ID + '.';
-
-	// Dialogs
-	public static final String ADVANCED_FACTORYPATH_OPTIONS_DIALOG= 	PREFIX + "advanced_factory_path_options_dialog_context"; //$NON-NLS-1$
-	public static final String PROCESSOR_OPTION_INPUT_DIALOG= 			PREFIX + "processor_option_input_dialog_context"; //$NON-NLS-1$
-
-	// Preference/Property pages
-	public static final String APTCONFIGURATION_PREFERENCE_PAGE=		PREFIX + "apt_configuration_preference_page_context"; //$NON-NLS-1$
-	public static final String FACTORYPATH_PREFERENCE_PAGE= 			PREFIX + "factory_path_preference_page_context"; //$NON-NLS-1$
-}
diff --git a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/util/Messages.java b/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/util/Messages.java
deleted file mode 100644
index e2394d5..0000000
--- a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/util/Messages.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *   wharley@bea.com - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.jdt.apt.ui.internal.util;
-
-import org.eclipse.osgi.util.NLS;
-
-/**
- * 
- */
-public class Messages extends NLS {
-	private static final String BUNDLE_NAME = "org.eclipse.jdt.apt.ui.internal.util.messages"; //$NON-NLS-1$
-
-	private Messages() {
-	}
-
-	static {
-		// initialize resource bundle
-		NLS.initializeMessages(BUNDLE_NAME, Messages.class);
-	}
-
-	public static String ExceptionHandler_seeErrorLog;
-}
diff --git a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/util/messages.properties b/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/util/messages.properties
deleted file mode 100644
index 18ea1a8..0000000
--- a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/util/messages.properties
+++ /dev/null
@@ -1 +0,0 @@
-ExceptionHandler_seeErrorLog=See error log for more details.
diff --git a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/messages.properties b/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/messages.properties
deleted file mode 100644
index a5a518b..0000000
--- a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/messages.properties
+++ /dev/null
@@ -1 +0,0 @@
-AptUIPlugin_exceptionThrown=An exception was thrown
diff --git a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/quickfix/IAPTQuickFixProvider.java b/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/quickfix/IAPTQuickFixProvider.java
deleted file mode 100644
index c1a6e8c..0000000
--- a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/quickfix/IAPTQuickFixProvider.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    dsomerfi@bea.com - initial API and implementation
- *    
- *******************************************************************************/
-package org.eclipse.jdt.apt.ui.quickfix;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.jdt.ui.text.java.IInvocationContext;
-import org.eclipse.jdt.ui.text.java.IJavaCompletionProposal;
-import org.eclipse.jdt.ui.text.java.IProblemLocation;
-
-/**
- * APT plugins may implement this api in order to 
- * add assists for errors they create.
- */
-public interface IAPTQuickFixProvider {
-    
-    /**
-     * Return the proposals to suggest
-     * @param context
-     * @param locations
-     * @return
-     * @throws CoreException
-     */
-    public IJavaCompletionProposal [] getProposals(IInvocationContext context,
-            IProblemLocation [] locations) throws CoreException;
-}
diff --git a/org.eclipse.jdt.apt.ui/toc.xml b/org.eclipse.jdt.apt.ui/toc.xml
deleted file mode 100644
index 711ad0a..0000000
--- a/org.eclipse.jdt.apt.ui/toc.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<toc label="APT in Eclipse">
-	<topic label="Getting Started" href="docs/Getting_started.html"/>
-	<topic label="Creating a Quick-Fix processor for APT" href="docs/Quick_fix_with_apt.html"/>
-	<topic label="Headless Build" href="docs/Building_with_apt.html"/>
-</toc>
\ No newline at end of file